ホーム » TensorFlow » TensorFlow Word2Vec で「源氏物語」解析

TensorFlow Word2Vec で「源氏物語」解析

TensorFlow Word2Vec で「源氏物語」解析

TensorFlow Word2Vec による日本語テキスト解析

自然言語処理の基本と言える Word2Vec については TensorFlow のチュートリアル 単語のベクトル表現 / Word2Vec がありますが、まだ日本語テキストで試していなかったので青空文庫の源氏物語(訳: 與謝野晶子)を題材に解析してみました。桐壺から夢浮橋の帖までの全テキストを使用しています。

Wikipedia によれば …
『源氏物語』は平安時代中期に成立した日本の長編物語、小説である。文献初出は1008年(寛弘五年)でこの頃には相当な部分までが成立していたと思われる。
母系制が色濃い平安朝中期(概ね10世紀頃)を舞台に、天皇の親王として出生し、才能・容姿ともにめぐまれながら臣籍降下して源氏姓となった光源氏の栄華と苦悩の人生、およびその子孫らの人生を描く。通説とされる三部構成説に基づくと、各部のメインテーマは以下とされ、長篇恋愛小説としてすきのない首尾を整えている。

  • 第一部:光源氏が数多の恋愛遍歴を繰り広げつつ、王朝人として最高の栄誉を極める前半生
  • 第二部:愛情生活の破綻による無常を覚り、やがて出家を志すその後半生と、源氏をとりまく子女の恋愛模様
  • 第三部:源氏没後の子孫たちの恋と人生

 
日本語テキストを Word2Vec に持ち込む場合には形態素解析がつきまといます。今回は自然言語処理ツールキットの定番 NLTK をベースに改良しましたが、MeCab なども試すべきかもしれません。

取りあえず、源氏物語のテキストを形態素解析してトークン化してリストを入力として、Word2Vec の基本実装 word2vec_basic.py を実行してみました。視覚化されたグラフが以下です(画像はクリックして拡大できます)。官職名の距離が近いことなどが見て取れます。 :
w2vec_genji2

Word2Vec で Cos 距離

視覚化だけでなく単語間の具体的な cos (コサイン)距離を測るために、元祖 Word2Vec を利用しました。
以下はその例で「光源氏」「無常」「嫉妬」「寵愛」それぞれの単語と距離が近い単語を pick up しています :

 

Word: 光源氏 Position in vocabulary: 1761
単語

コサイン距離
優秀

0.837391
趣味

0.790800
貴公子

0.788980
すぐれ

0.788795
及ぶ

0.788473
最上

0.780777
人物

0.778179
方面

0.774576
最も

0.765890
競争心

0.763227
次点: 芸術、重々しい、素質、貴婦人、才気、帝王 etc.
Word: 無常 Position in vocabulary: 1443
単語

コサイン距離
人生

0.873624

0.826600
いとわしく

0.799423
体験

0.796729
はかな

0.774706
この世

0.772246
いとわしい

0.761853
あやまち

0.753774
報い

0.746610
いたさ

0741317
次点: 無限、生命、厭世、後世、信仰 etc.
 
 

Word: 嫉妬 Position in vocabulary: 885
単語

コサイン距離
気に入ら

0.823713
男性

0.820702
異性

0.801180
信頼

0.795489
軽侮

0.782988
憎悪

0.780449

0.772462
行為

0.770650
精神

0.768954
尊重

0.767844
Word: 寵愛 Position in vocabulary: 1879
単語

コサイン距離
東宮

0.806865
後宮

0.776469
内親王

0.762031
重々しく

0.758517
競争

0.758219
後見

0.757598
候補

0.750942
先帝

0.742261
大切

0.738606
後援

0.738517
 

 
光源氏がどのような人物像として描かれているか一目瞭然ですし、無常・嫉妬・寵愛のような固有名詞でない単語の場合でも性質が良く表れています。
結論として、日本語テキストの場合でも Word2Vec は機能するようです。

補記

word2vec_basic.py の embedding 層のサイズと window サイズをそれぞれ 512, 2 に変更して得られた画像は以下になります。注意深く観察すれば改良されていることが分かりますが、二次元画像に射影すると分かりにくいかもしれません :
w2vec_genji-e512_w2b

 

以上

AI導入支援 #2 ウェビナー

スモールスタートを可能としたAI導入支援   Vol.2
[無料 WEB セミナー] [詳細]
「画像認識 AI PoC スターターパック」の紹介
既に AI 技術を実ビジネスで活用し、成果を上げている日本企業も多く存在しており、競争優位なビジネスを展開しております。
しかしながら AI を導入したくとも PoC (概念実証) だけでも高額な費用がかかり取組めていない企業も少なくないようです。A I導入時には欠かせない PoC を手軽にしかも短期間で認知度を確認可能とするサービの紹介と共に、AI 技術の特性と具体的な導入プロセスに加え運用時のポイントについても解説いたします。
日時:2021年10月13日(水)
会場:WEBセミナー
共催:クラスキャット、日本FLOW(株)
後援:働き方改革推進コンソーシアム
参加費: 無料 (事前登録制)
人工知能開発支援
◆ クラスキャットは 人工知能研究開発支援 サービスを提供しています :
  • テクニカルコンサルティングサービス
  • 実証実験 (プロトタイプ構築)
  • アプリケーションへの実装
  • 人工知能研修サービス
◆ お問合せ先 ◆
(株)クラスキャット
セールス・インフォメーション
E-Mail:sales-info@classcat.com