こんにちわ、oyoshiです.
今回記事にするのは「Word2Vec」という仕組みについてです.情報系の学生の方であれば聞いたことある人もいるかもですが,ほとんどの人が聞いたことがない言葉でしょうね.かくいう自分も聞いたことあるけど詳しくは分からないって感じだったので( ´∀` )
「Word2Vec」とは,簡単に言うと”各単語の意味をベクトル化する“ことです.「、、、は?」ってなりますよね.ベクトル化というのは,各単語がある数値いくつか持ってるって感じです.具体的には以下のような感じです.
- リンゴ:(0.5, 0.3, 0.0, 0.7)
- ミカン:(0.6, 0.1, 0.0, 0.7)
- コンピュータ:(0.1, 0.7, 0.6, 0.0)
- AI:(0.2, 0.8, 0.5, 0.0)
- 人間:(0.0, 0.5, 0.3, 0.0)
これは4次元ベクトルの例になります.各単語の数値を見てみると,”リンゴとミカン”,”コンピュータとAI”が近いですよね.こういった数値をもとに,Word2Vecでは「単語間の意味の近さ」,「単語間の足し算,引き算」を計算することができます.
そのためWord2Vecを用いると,人間が脳で処理するようなものをコンピュータにやらせることができます.「リンゴとミカンは果物だから」とか,「コンピュータとAIは関連性が高い」とか,人間が当たり前に思うことをWord2Vecを利用することで,コンピュータでも同じようにやってくれるのです.
ただWord2Vecを使ってみようとすると,「単語のベクトル化」,「言語モデルの作成」など,結構専門的知識も必要になってくるので,ここから先は別で書くことにします(一気に書きたくない、、、)
では今日はこのへんで(*__*)
コメント