どうも、まるさ@maruuusa83です!
もうすぐ3月ですが明けましておめでとうございます!
年が明けてから年度が終わるまでの期間が一番あっという間に過ぎ去ってしまう期間に感じますw
そんなこんなであっという間に高校生ではなくなり、大学生と扱われるようになります・・・。悲しい。
さて、本題ですw
特定非営利活動法人NDA 様が主催している、「ビックデータ解析演習講座」を受講してきました。
2月16日からスタートの全5回の講義で、演習に重きを置いて実際にビックデータを用いて株式の変動予測を立ててみる、という内容でした。
すごく良い内容で楽しかったので、まとめておこうと思います。
そもそもビックデータとは
その名の通り、巨大なデータのことですw(
きちんと構造化されている場合も、まったくされていない場合もあります。
身近なもので言うと、コンビニチェーン全店の購買記録だったり、大量のニュース情報、気象データなどが挙げられます。
最近バイオインフォマティクスとして注目されているゲノム配列のデータもビックデータと呼ばれたりしますね。
そういう巨大な情報を解析して、「今まで見えなかったこと」を見つけていくのがビックデータ解析の目的です。
Twitterが株式市場を予測する
現在のTwitterは、これまでの最高で25,088TPS(Tweet per Seconds)(という単位があることにもおどろきだけれども)を記録するほどの(有意かどうかはさておき)大量の発言が飛び交い、ビックデータが形成されるプラットフォームになっています。
ある研究によると、その発言に含まれる単語の感情を分析して世の中の雰囲気を読み取り、株式市場の予測を約86%の確率で行うことができるそうです。
8割当たれば大金持ちですよね・・・。
実際に僕らもそのような分析ができる、というところを目指して講義に挑みました。
ポジティブな単語、ネガティブな単語
与えられたデータ群(つぶやき)の分析を行う手順として、簡単に以下のような感じになります。
単語の抽出→単語の解析→統計・データの分析→結果出力
「単語の解析」ですが、ここがとても興味深いものでした。
たとえば以下のようなことをするとします。
- 「悪い」「減少」「降下」などというワードに"ネガティブ"を与える
- 「良い」「増加」「上昇」などといった単語に"ポジティブ"を与える
単純ですが、その情報を持ったうえで統計を取ると、分析するデータ群がどんな"雰囲気"なのかがわかり、株価が上昇/降下のどちらなのか判断することができます。
この解析ですが、
- 単語のポジティブ・ネガティブについて、0か1を与えるのではなく実数値として与える
- ポジティブ・ネガティブだけでなく、もっとたくさんの意味を与える
とかやってみるとさらに正確な予想ができると考えられます。
また、「失業率が急上昇」というセンテンスに対して、我々が読めば明らかにネガティブなものですが、先ほどの単純な解析だとコンピュータからは
『「失業率:ネガティブ」「急上昇:ポジティブ」・・・OK,1対1だからどちらでもない記事だね!』
くらいにしか見えないかもしれないので注意が必要です。
キーワード
演習講座というタイトルだけあって、実際に現場で使われている手法や解析ツールを用いて具体的な手法を学ぶことができました。
全部書くわけにもいかないので幾つかキーワードを書いておきます。
- 極性付評価表現辞書:単語のネガティブ・ポジティブを分類するものです。
- ベイズの定理:これを使って記事の予測モデルを構築します。
- ナイーブベイズモデル:ベイズの定理を用いた分類モデルです。
株価予測コンテスト
講座の最終日はそれまでに得た知識を使って株価予測コンテストを行いました。
学習データとして28日分のニュース記事と四本値が提供され、分類モデルを構築。
それからランダムに選択された日から5日前分のニュース記事が提供され、選択された日の指定銘柄の相対リターンのup/downを予測する。
というものです(一部略w)。
んで、結果なのですが、なんと優勝してしまいましたwww(たぶんというか絶対まぐれ)
超豪華賞品とコンテスト前からずっと煽られてたのですが、なんとLEGOのmindstormsをいただくことができました!!
やってみたかったので超うれしかったです><
これまでビックデータと言ったらゲノム解析のイメージが強かったのでイメージが大きくかわる講座でした。
というか、ビックデータでこんなことができるなんて全く思ってなかったです(笑)
ビックデータを使った何かを作ってみたいなーと感じました。
何かアイデアを思いついたら書いてみようと思います!!
今日はこのへんで! ノまるさ