第6章: 単語ベクトル#
単語の意味を実ベクトルで表現する単語ベクトル(単語埋め込み)に関して、以下の処理を行うプログラムを作成せよ。
50. 単語ベクトルの読み込みと表示#
Google Newsデータセット(約1,000億単語)での学習済み単語ベクトル(300万単語・フレーズ、300次元)をダウンロードし、”United States”の単語ベクトルを表示せよ。ただし、”United States”は内部的には”United_States”と表現されていることに注意せよ。
51. 単語の類似度#
“United States”と”U.S.”のコサイン類似度を計算せよ。
52. 類似度の高い単語10件#
“United States”とコサイン類似度が高い10語と、その類似度を出力せよ。
53. 加法構成性によるアナロジー#
“Spain”の単語ベクトルから”Madrid”のベクトルを引き、”Athens”のベクトルを足したベクトルを計算し、そのベクトルと類似度の高い10語とその類似度を出力せよ。
54. アナロジーデータでの実験#
単語アナロジーの評価データをダウンロードし、国と首都に関する事例(: capital-common-countriesセクション)に対して、vec(2列目の単語) - vec(1列目の単語) + vec(3列目の単語)を計算し、そのベクトルと類似度が最も高い単語と、その類似度を求めよ。求めた単語と類似度は、各事例と一緒に記録せよ。
55. アナロジータスクでの正解率#
54の実行結果を用い、意味的アナロジー(semantic analogy)と文法的アナロジー(syntactic analogy)の正解率を測定せよ。
56. WordSimilarity-353での評価#
The WordSimilarity-353 Test Collectionの評価データをダウンロードし、単語ベクトルにより計算される類似度のランキングと、人間の類似度判定のランキングの間のスピアマン相関係数を計算せよ。
57. k-meansクラスタリング#
国名に関する単語ベクトルを抽出し、k-meansクラスタリングをクラスタ数k=5として実行せよ。
58. Ward法によるクラスタリング#
国名に関する単語ベクトルに対し、Ward法による階層型クラスタリングを実行せよ。さらに、クラスタリング結果をデンドログラムとして可視化せよ。
59. t-SNEによる可視化#
ベクトル空間上の国名に関する単語ベクトルをt-SNEで可視化せよ。