So-net無料ブログ作成

テキスト マイニング

先月LDAでニュース解析したときに
https://aoken.blog.so-net.ne.jp/2019-07-07

テレグラフ紙の記事のトピックとTED SpreadやCBOE Volatility Index: VIXの推移の関連があるように見えたのですが...


テレグラフ紙の記事には、リーマンショックの前には、セクターごとの株価情報のリンク(例:SHARE DATA ARRANGED BY SECTOR: GAS DISTRIBUTION)が入っていたのが、リーマンショックのときに無くなったのが要因でした。

これを除いて、計算しなおしたら、傾向が見えなくなってしまいました。

確かに、新聞の記事の内容は変わっているのですが、今まであった記事の項目が無くなったということで、ニュースのトピックのトレンドについては、全然解析できていませんでした。
こんな初歩的なミスをしてしまって... くやしいので、別の方法で解析し直しました。



まず、LDAではなく、Truncated SVDを使ったLSA ( Latent Semantic Analysis)で、手堅く(?)ニュース記事の特異値の推移を計算します。


Truncated SVDで、100次元に次元削減した結果

100本も線があって、わかりにくいので、Pythonのstatsmodelsライブラリの中にある、Granger causality test (グレンジャー因果性検定 )の関数grangercausalitytestsを使って、CBOE Volatility Index と因果関係のありそうな要素だけ抽出します。



関連するキーワードを抽出
sig 1:
[('brown', 0.237578751724588), ('crisis', 0.22713994653965058), ('gordon', 0.22655916123909123), ('financial', 0.19470404713286515), ('over', 0.19039519433756327)]
sig 4:
[('crisis', 0.5082633019207302), ('financial', 0.4429525661850055), ('obama', 0.19997316415565353), ('barack', 0.1853106812499837), ('out', 0.13399673307993853), ('bail', 0.09085949332835215), ('credit', 0.08943988328467095), ('bank', 0.0616640875359367), ('banks', 0.05428485712819011)]

crisisとかfinancialとかbankといった、それらしい単語が出てきました。

こんどは、ちゃんとできていそうなので、ドイツのHandelsblatt 紙のアーカイブ https://www.handelsblatt.com/archiv/
のデータでもやっってみました。

Truncated SVDで100次元にしたデータの推移


Granger causality testでCBOE Volatility Indexと関係がありそうな要素


キーワード
finanzkrise(ドイツ語で、「金融危機」)、banken(銀行)などの単語が出てきました。
sig 8:
[('finanzkrise', 0.8198435830216857), ('folgen', 0.20334411894990104), ('banken', 0.1250660072739291), ('street', 0.06894954198673105), ('wall', 0.06814687341402476), ('trotz', 0.05762351178765651), ('bank', 0.05718554331510726), ('deutsche', 0.05199620304253621), ('euro', 0.05062341657699982), ('rettungspaket', 0.04264210139767636), ('lehman', 0.0412367616833838)]





最近、O’Reilly の Text Mining with R が無料で読めるのを知ったので、今年の夏の自由研究はテキストマイニングにしようと思います。
TextMiningWithR.jpg
https://www.tidytextmining.com/

nice!(13)  コメント(0) 
共通テーマ:学問

nice! 13

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。