<commit_before>## Status
Master [![Circle CI](https://circleci.com/gh/jphacks/TK_07/tree/master.svg?style=svg)](https://circleci.com/gh/jphacks/TK_07/tree/master)

Develop [![Circle CI](https://circleci.com/gh/jphacks/TK_07/tree/develop.svg?style=svg)](https://circleci.com/gh/jphacks/TK_07/tree/develop)

# knowledge Connection なれコレ!
## 製品概要
### 背景(製品開発のきっかけ、課題等）
米グーグルの研究者であるトマス・ミコロフ氏らが提案した手法「Word2Vec」というアルゴリズムをご存知だろうか．
これは，その名の通り単語をベクトル化して表現する定量化手法である．
このアルゴリズムでは，今まで分からなかったり，精度を向上するのが難しかった単語同士の類似度を測る事が出来るようになった．
その結果として，単語そのものの「意味」をより機械的に理解する事が可能となった．

そんな中，単語同士の距離は計算できるものの，単語と単語が一体どのような「関係性」を持つか，どのような単語で「繋がる」のかは未だ発見されていない．
このアプリケーションは，そんな単語と単語の「繋がりを可視化」するアプリケーションである．

### 製品説明（具体的な製品の説明）
### 特長
####1. 単語と単語を「繋げる」．
単語と単語を繋げます．単語には一般的な名詞，固有名詞であればどんな言葉同士(*1)でも繋がります．
例えば「JavaScript」と「サボテン」，もしもこの2つに関係性があるのなら，一体どんな言葉で繋がるのか興味はありませんか?
そのような知的興味や発見を促進させます．
(*1.Wikipediaに載っている範囲)
####2. 「繋がり」を可視化する．
この「繋がり」はグラフを用いて可視化されます．もし様々な繋がり方があるのならば，それらを比較したくはありませんか?
研究のサーベイや関連語句の手がかりとしてもこのアプリケーションは活用できます．
####3. 未定!

### 解決出来ること
* 単語と単語の間にある，未知の単語(知識)を発見できる．
* 無意味な単語(例えば年度)を除外し，関連の強い単語を探索できる．
* 単語というグラフィカルでないオブジェクトに対しての知識資源が可視化できる．
* 研究サーベイ時間の短縮．

### 今後の展望
* 遺伝的アルゴリズムを用いた準最適解を発見することで，複数の単語のルート検索を行い，より複複雑化したグラフとして可視化する．
* 単語間の類似度も同時に実装し，ルート毎の類似度を計算する．

### 注力したこと（こだわり等）
* 問題を最短経路問題に落とし込み，単語の最適なルートの組み合わせを発見する．
* Wikipediaという知識資源を活用することで，従来と異なる知識発見を促す．
* etc...

## 開発技術
### 活用した技術
#### API・データ
* Wikipedia内の全知識情報

#### フレームワーク・ライブラリ・モジュール
* Client Side: React.js
* Server Side: Ruby on Rails
* Algorithm : 幅優先探索，ダイクストラ法，遺伝的アルゴリズム，Word2Vec

#### デバイス
* Webベースなので，スマートフォン他インターネットに繋がる全てのデバイスで活用できます．

### 独自技術
#### ハッカソンで開発した独自機能・技術
* Wikipedia内の全リンク情報を取得
* 要素の関連度を定義し，重み付け
* 最適な経路を探索するAPI
* 

#### 製品に取り入れた研究内容（データ・ソフトウェアなど）（※アカデミック部門の場合のみ提出必須）
* Wikipedia
* Word2Vec
*<commit_msg>change main topic from affinity to small world hypothesis<commit_after>## Status
Master [![Circle CI](https://circleci.com/gh/jphacks/TK_07/tree/master.svg?style=svg)](https://circleci.com/gh/jphacks/TK_07/tree/master)

Develop [![Circle CI](https://circleci.com/gh/jphacks/TK_07/tree/develop.svg?style=svg)](https://circleci.com/gh/jphacks/TK_07/tree/develop)

# knowledge Connection なれコレ!
## 製品概要
### 背景(製品開発のきっかけ、課題等）

社会ネットワーク分析には、「六次の隔たり」という用語が存在します．  
これは，世界中の人々をノードとし，人々の知り合い関係をエッジとした知り合い関係グラフにおいて，任意のノードから任意のノードに対して6ステップ以内で移動可能であるとする仮説です。  
ミルグラムのスモールワルド実験 1)によって検証が行われました．  
他にもスモールワールド現象についての研究は数多く行われています．

Wikipediaは，ユーザによって編集されるWeb上で閲覧できる百科事典です．
それぞれの項目では，関連する単語や事柄についてハイパーテキストリンクが張られています．
Wikipediaにおける項目と項目間のリンク構造は，一種のグラフと捉えることができます．

本アプリケーションでは，一つの巨大な知識のネットワークであるWikipediaについて，単語や事柄同士の「関係性」を明らかにし，「つながり」を可視化します．

### 製品説明（具体的な製品の説明）
### 特長
####1. 単語と単語を「繋げる」．
単語と単語を繋げます．単語には一般的な名詞，固有名詞であればどんな言葉同士(*1)でも繋がります．
例えば「JavaScript」と「サボテン」，もしもこの2つに関係性があるのなら，一体どんな言葉で繋がるのか興味はありませんか?
そのような知的興味や発見を促進させます．
(*1.Wikipediaに載っている範囲)

####2. 「繋がり」を可視化する．
この「繋がり」はグラフを用いて可視化されます．もし様々な繋がり方があるのならば，それらを比較したくはありませんか?
研究のサーベイや関連語句の手がかりとしてもこのアプリケーションは活用できます．

####3. 未定!

### 解決出来ること
* 単語と単語の間にある，未知の単語(知識)を発見できる．
* 無意味な単語(例えば年度)を除外し，関連の強い単語を探索できる．
* 単語というグラフィカルでないオブジェクトに対しての知識資源が可視化できる．
* 研究サーベイ時間の短縮．

### 注力したこと（こだわり等）
* 問題を最短経路問題に落とし込み，単語の最適なルートの組み合わせを発見する．
* Wikipediaという知識資源を活用することで，従来と異なる知識発見を促す．
* etc...

### 今後の展望
* 現実的な時間で経路を発見できるよう探索アルゴリズムを改善する．
* 項目間のリンクに対して，適切な重みを付与することでより関係性の強い単語によって形成される経路を発見する．

## 開発技術
### 活用した技術
#### API・データ
* Wikipedia内の全知識情報

#### フレームワーク・ライブラリ・モジュール
* Client Side: React.js
* Server Side: Ruby on Rails
* Algorithm : 幅優先探索，(ダイクストラ法)

#### デバイス
* Webベースなので，スマートフォン他インターネットに繋がる全てのデバイスで活用できます．

### 独自技術
#### ハッカソンで開発した独自機能・技術
* Wikipedia内の全リンク情報を取得
* 要素の関連度を定義し，重み付け
* 最適な経路を探索するAPI

#### 製品に取り入れた研究内容（データ・ソフトウェアなど）（※アカデミック部門の場合のみ提出必須）
* Wikipedia
* グラフ理論
{'fraction_non_alphanumeric': 0.1383442265795207, 'fraction_numerical': 0.008986928104575163, 'mean_word_length': 9.708454810495628, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5149201', 'n_tokens_mistral': 3163, 'n_tokens_neox': 3132, 'n_words': 151}