平成
21
年度
学士学位論文
テキストマイニングを用いた株価予測
Stock price forecast using text mining
1100323
仲矢 浩二
指導教員
吉田 真一
2010
年
3
月
1
日
要 旨
テキストマイニングを用いた株価予測
仲矢 浩二
株価予測の際に使用される手法として,ニューラルネットワーク,遺伝的アルゴリズム, 遺伝的プログラミング,Q-Learning,フラクタル次元,Support-Vector-Machineなどの研 究が行われている.それらの研究は株価や為替などの定量的な数値データのみの場合が多 かった.しかし、実際のファンドマネージャは数値データのみではなく,むしろ積極的に定 性的なニュース記事の情報も用いて株式の売買を行っている.そこで本研究では定量的デー タと定性的データを用いた株価予測を行うことを目的として,テキストマイニングを用い た.定性的データとして,NIKKEI NET,InfoseekとMSN産経ニュースの 10月1日から 12月 22日までの経済に関連する記事を 170記事入手し,株価に影響を与える可能性の ある単語を抽出し 121単語の単語ベクトルを作成する.定量的データとして記事発表から 10日分前の 9月15日から 12月 22日までの日経平均終値の時系列データを使用する.株 価予測にはニューラルネットワークによるテキストマイニングを使用する.ニューラルネッ トワークの学習手法にはバックプロパゲーションを使用する.実験用データとして85セッ トの単語ベクトルと株価の時系列データを使用する.教師データを翌日の株価が上昇か下降 の 2値とする.検証用データとして残りの85セットの単語ベクトルと株価の時系列データ を使用する.単語ベクトルと株価の併用,単語ベクトルのみ,株価の時系列データ,認識率 の比較を行った.その結果,単語ベクトルと株価の併用の認識率が 10ポイント程度高い結 果となる事を示す. キーワード ニューラルネットワーク,株価予測,単語ベクトル
Abstract
Stock price forecast using text mining
Koji Nakaya
The stock prices forecast was done by the numeric character data. . However, Fund manager is having dealings over the stocks by using information in not only the numeric character data but also a qualitative news article. Then, text mining was used aiming to forecast stock price that used the quantitative data and qualitative data in this research. Qualitative data extracts the word with the possibility of influencing stock prices by using the article that relates to the economy of NIKKEI NET, Infoseek, and MSN Sankei news from October 1st to December 22nd by 170 articles and makes word vector of 121 words. The quantitative data uses the longitudinal data of Nikkei average closing share price from September 15th to December 22nd the tenth ago from the article announcement. Text mining by the Neural Network is used for the stock prices forecast. The learning technique of Neural Network uses Back Propagation. Verification data uses the longitudinal data of word vector and stock prices of 85 sets. Whether the teacher data is a rise of next day’s stock prices is assumed to be binary of the descent. Data for the verification uses the longitudinal data of word vector and stock prices of the remainder of 85 sets. Only using together and word vector of word vector and stock prices compared the recognition rates of the longitudinal data of stock prices. The results show that using of word vector and stock prices together became the highest result.
目次
第1章 はじめに 1 第2章 提案手法 3 2.1 テキストマイニング . . . 4 2.2 ニューラルネットワーク . . . 6 2.2.1 バックプロパゲーション . . . 6 2.3 伝達関数 . . . 7 2.3.1 線形伝達関数 . . . 8 2.3.2 対数シグモイド伝達関数 . . . 8 2.3.3 双曲線正接シグモイド伝達関数 . . . 9 第3章 株価記事による予測実験 14 3.1 実験条件 . . . 14 3.2 予備実験 . . . 14 3.3 本実験 . . . 15 第4章 考察・まとめ 18 4.1 考察. . . 18 4.2 まとめ . . . 19 謝辞 21 参考文献 23 付録A 単語ベクトル 24図目次
1.1 テキストマイニングによる株価予測の概念図 . . . 2 2.1 形態素解析 . . . 3 2.2 単語ベクトル . . . 4 2.3 提案手法 . . . 5 2.4 フィードフォワード型ニューラルネット . . . 6 2.5 リカレント型ネットワーク . . . 7 2.6 バックプロパゲーションのアルゴリズム . . . 8 2.7 学習状況 . . . 9 2.8 収束状況 . . . 10 2.9 線形伝達関数 . . . 11 2.10 対数シグモイド伝達関数 . . . 12 2.11 双曲線正接シグモイド関数 . . . 13 A.1 単語ベクトル 1 . . . 24 A.2 単語ベクトル 2 . . . 25 A.3 単語ベクトル 3 . . . 26 A.4 単語ベクトル 4 . . . 27 A.5 単語ベクトル 5 . . . 28 A.6 単語ベクトル 6 . . . 29 A.7 単語ベクトル 7 . . . 30 A.8 単語ベクトル 8 . . . 31 A.9 単語ベクトル 9 . . . 32 A.10単語ベクトル 10 . . . 33図目次 A.11単語ベクトル 11 . . . 34 A.12単語ベクトル 12 . . . 35 A.13単語ベクトル 13 . . . 36 A.14単語ベクトル 14 . . . 37 A.15単語ベクトル 15 . . . 38 A.16単語ベクトル 16 . . . 39 A.17単語ベクトル 17 . . . 40 A.18単語ベクトル 18 . . . 41
表目次
3.1 学習終了条件 . . . 15 3.2 単語ベクトル株価の併用 . . . 16 3.3 単語ベクトルのみ . . . 16 3.4 株価のみ . . . 16 3.5 単語ベクトル株価の併用 . . . 17 3.6 単語ベクトルのみ . . . 17 3.7 株価のみ . . . 17第
1
章
はじめに
株価予測は,重回帰分析を用いた予測,遺伝的アルゴリズムを用いた予測,サポートベク ターマシンを用いた予測やニューラルネットワークを用いた予測等の多くの手法で研究され てきた.その背景には計算機の性能向上による大規模データの使用があげられる.株価が上 昇するか下降するかを予測する単純予測では 90%以上の精度を出した研究もある [1].し かし,いずれの研究でも株価や為替のような定量的な数値データしか使われていなかった. 数値データには指標化されていない情報が含まれていないので,分析対象の範囲がテキスト 情報よりも狭くなる可能性がある[2].また,数値データのみを使った予測は,リーマンブ ラザーズの倒産によって引き起こった株価の暴落のような,突発的に起こる事態を予測する には十分ではない.実際,ファンドマネージャは数値データのみではなく,ニュース記事を 参考に株の売買を行っている.また近年,政治,経済のグローバル化とインターネット等の ICTの発展により,投資に関する情報は飛躍的に増加している[2]. そこで,本研究では定量的データのみではなく,ニュース記事のような定性的なデータと 定量的データを組み合わせる事で,株価予測の精度の向上を行う.本手法の概念図は図1.1 に示す. 本論文の構成は第2章では本研究の提案手法及び使用するシステムについて述べる.第 3 章では予備実験と実験結果を述べる.第 4章では実験結果の考察と本研究のまとめを述べ, 今後の課題について言及する.第
2
章
提案手法
本手法では定性的データとしてニュース記事を扱う.定性的な情報であるニュース記事を 扱うためテキストマイニングを用いた.テキストマイニングとは,大量の文書から有益な情 報を抽出するデータマイニングの一種である. MeCabを用いてニュース記事を形態素解析 し形態素に分ける.形態素解析とは図2.1のように単語ごとに分けることである.. 図2.1 形態素解析 黒字や赤字といった株価に影響を与える可能性のある 単語をリスト化する.そして,リ ストの単語で単語ベクトルを作成する.単語ベクトルの例を図2.2に示す. この様に,ある記事に対して,単語が何回出現したかを示す.2.1 テキストマイニング 図2.2 単語ベクトル ションを用いて予測を行う.本手法のモデルは図2.3となる.
2.1
テキストマイニング
テキストマイニングとは,データマイニングの一つで大量の文書から有益な情報を導出す ることである.テキストマイニングの主目的を以下に示す[3]. • 相関発見 • 傾向発見 • イベント発見 相関発見とはある文書と別のある文書との間で,共に出現する単語の度合いの事をいう.傾 向発見とはある文書の集合の中から特定の単語の出現を見て,流行などの傾向を見ることを2.1 テキストマイニング 図2.3 提案手法 言う.イベント発見とは,蓄積した情報の集合から未知の情報や未確認の情報を発見するこ とを言う.[3] テキストマイニングの適用例として,コールセンターでの顧客との会話を記 録し,同じ顧客との応対や他の担当者への引き継ぎに際して情報の参照や共有することで サービスの向上を図る事例がある[4].
2.2 ニューラルネットワーク
2.2
ニューラルネットワーク
ニューラルネットワークとは人間の脳内の神経回路を模した学習手法である.ニューラル ネットワークには2つの代表的なネットワークの構造があり, 1つはデータが入力層から出 力層の1方向のみ流れる構成のフィードフォワード型ニューラルネット(図2.4)がある. 図2.4 フィードフォワード型ニューラルネット もう 1 つはネットワーク内の各ニューロンのが相互関係になっている,リカレント型 ニューラルネット(図2.5)がある. 本研究では,関数近似や時系列予測に使われるフィードフォワード型ニューラルネットを 使用する.2.2.1
バックプロパゲーション
バックプロパゲーションとはニューラルネットワークの学習アルゴリズムの 1つでバック プロパゲーションの特徴として以下が上げられる.2.3 伝達関数 図2.5 リカレント型ネットワーク • 複雑で高度な写像能力を有する非線形システムを用いて関数近似を行う • 教師あり学習 • 局所解に陥りやすい • 学習させすぎると汎化能力が落ちる この様な特徴を持ち,パターン認識や関数の近似に用いられてきた[5]. バックプロパゲーションは入力データを教師データに近づけるため,重みを更新し,理想 的な出力データを学習させ,未知のデータの入力に対しても,ある程度の近似をする方法で ある.アルゴリズムを以下の図2.6に示す. またバックプロパゲーションの学習状況の例を図2.7,図2.8に示す.
2.3
伝達関数
伝達関数とは入力から層の出力を計算するもので,伝達関数には数多くの種類がある.本 論文では,今回実験に使用した 3つの伝達関数について説明する.2.3 伝達関数 図2.6 バックプロパゲーションのアルゴリズム
2.3.1
線形伝達関数
線形伝達関数とは図2.9のようになり,アルゴリズムは purelin(n) = n となる.今回の実験では中間層 - 出力層間で使用2.3.2
対数シグモイド伝達関数
対数シグモイド関数とは図2.10のようになり,アルゴリズムは logsig(n) = 1 (1 + exp(−n)) となる.今回の実験では入力層 - 中間層間で使用.2.3 伝達関数 図2.7 学習状況
2.3.3
双曲線正接シグモイド伝達関数
双曲線正接シグモイド関数とは図2.11のようになり,アルゴリズムは n = 2 (1 + exp(−2n))− 1 となる.今回の実験では入力層 - 中間層間で使用.2.3 伝達関数
2.3 伝達関数 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 図2.9 線形伝達関数
2.3 伝達関数 -5 0 5 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 図2.10 対数シグモイド伝達関数
2.3 伝達関数 -5 0 5 -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 図2.11 双曲線正接シグモイド関数
第
3
章
株価記事による予測実験
本章では今回の実験条件と事前に自らが行ったニュース記事での予備実験の結果とニュー ラルネットワークとテキストマイニングを用いて予測を行った結果を述べる.
3.1
実験条件
本手法では定性的データとして, NIKKEI NET, InfoseekとMSN産経ニュースの 10
月 1日から 12月 22日までのニュース記事を扱う.今回の実験では 170記事を使用した.
そしてこれらの記事を形態素解析し,株価に影響を与える可能性のある単語をリスト化し,
121単語の単語ベクトルを作成した.定量的データとして9月15日から 12月22日までの 日経平均終値を使用した.
3.2
予備実験
予備実験での実験条件は定性的データとして, NIKKEI NET, Infoseekと MSN産経 ニュースの 10月 1日から 11月 4日までのニュース記事を扱う.今回の予備実験では 100
記事使用.そしてそれらの記事の中から株価に影響を与える可能性のある単語を使い全く未
知の 20記事の内容を見て記事に直接関連する会社の翌日の株価の終値の上昇か下降かを予
3.3 本実験
3.3
本実験
日経平均終値と単語ベクトルを使い翌日の株価が上昇するか下降するかの単純予測を行っ た.学習データとして 85個セットの単語ベクトルと株価の時系列データを使用した.教師 データを翌日の株価の上昇か下降の2値として学習した.また,教師データを記事に反映し たデータ,あるいは株価に反映したデータの2つを使用した.予測データは残りの 85セッ トの単語ベクトルと時系列データを使用した. そして,単語ベクトルと株価,単語ベクトルのみ及び株価の時系列データでの伝達関数を それぞれ変更し5回ずつ予測し認識率を比較した.認識率とは 85セットの予測データの単 純予測の精度である.ニューラルネットワークではどのような構造が最適なのか詳しい調査 はされていない[1]ため,今回は伝達関数を変え,実験を行う.バックプロパゲーションの 学習終了条件の設定は下記の表3.1に示す. 表3.1 学習終了条件 最大学習回数 500回 訓練目標値 0.01 最小パフォーマンス勾配 1e-10 学習時間 設定無し • 最大学習回数 : 1回の予測に対して学習する上限回数 • 訓練目標値 : 出力値の教師データに対しての最小誤差 • 最小パフォーマンス勾配 : 平均2乗誤差の最小値 • 学習時間 : 学習する時間 となり,これらの条件の内 1つでも達すると学習が終了する. 入力層- 中間層間の伝達関数を対数シグモイド伝達関数,中間層- 出力層の伝達関数を線3.3 本実験 表3.2 単語ベクトル株価の併用 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 65% 44% 75% 76% 49% 61% 記事 50% 55% 52% 52% 55% 52% 表3.3 単語ベクトルのみ 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 60% 50% 54% 50% 58% 54% 記事 50% 47% 51% 45% 58% 50% 表3.4 株価のみ 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 50% 45% 55% 41% 51% 48% 記事 55% 47% 48% 57% 62% 53% 入力層- 中間層間の伝達関数を双曲線正接シグモイド伝達関数,中間層 - 出力層の伝達関 数を線形伝達関数の場合表3.5,3.6,3.7のようになった.
3.3 本実験 表3.5 単語ベクトル株価の併用 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 70% 76% 63% 63% 51% 64% 記事 54% 41% 55% 54% 58% 52% 表3.6 単語ベクトルのみ 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 55% 54% 49% 52% 54% 52% 記事 54% 50% 47% 51% 56% 51% 表3.7 株価のみ 教師データ 1回目 2回目 3回目 4回目 5回目 平均 株価 45% 43% 71% 64% 48% 54% 記事 60% 62% 49% 45% 67% 56%
第
4
章
考察・まとめ
4.1
考察
本研究で提案した手法は,実験結果より単語ベクトルと株価を併用して予測した方が高い 認識率となった.しかし,認識率は決して高いものとはいえなかった.これは,単語の偏り や単語リストが少なかったからなのではないかと考えられる.また,実験結果の表をみると 教師データを記事にした方が高い結果となったのは,やはり記事が株価に影響を与えている のではないかと考えられる. 伝達関数を変えて予測した場合,若干ながら双曲線正接シグモイド伝達関数と線形伝達関 数を使った方が認識率が高く,最低認識率も低く認識率にばらつきがなかった. しかし,今回の予備実験の結果と本手法の結果の予測精度の差が少なかったのは,予測対 象が日経平均終値と特定企業の株価と対象が違いや特定企業の株価の方がニュース記事の影 響が多く出るのではないかと考えられる. 本研究では予測対象を日経平均終値としたが,今回の結果からニュース記事の有効性が見 られた.また予備実験の結果からから特定の企業のニュース記事を対象とすれば,単一の銘 柄に対しても有効であることが考えられる.しかし,単一銘柄のみにする場合,ニュース記 事の減少や有名企業のみの予測しかできないのではないかという問題点が考えられる.この 問題点には,予測する企業のニュース記事に重みを付け,その他のニュース記事は今回の提 案手法のようにする事や,ニュース記事の無い日は数値のみで予測するなどが考えられる. ニュース記事にならないような中小の企業には業種別のニュース記事のみで対応するなどが 考えられる.4.2 まとめ 今回は日本のニュース記事のみを集めたが,海外のニュース記事を扱う事によって輸出入 に関係のある企業のより詳しいデータがとれるのではないかと考えられる.また,海外の ニュース記事を扱うことによってリーマンショックのような事態にもいち早く対応する事が できる可能性がある. 問題点として,今回作成した単語ベクトルは記事によって, 0ベクトルが多くなり記事 の特徴を掴むのには不十分だった.今後の課題として,単語の特徴づけをより考える必要が ある.
4.2
まとめ
本研究では,単語ベクトルと株価の時系列データを使い株価の予測を行った.定性的デー タとして各ニュースサイトの記事を使用した.定量的データとして情報以前の日系平均終 値の時系列データを使用した.株価の予測にはニューラルネットワークのバックプロパゲー ションを用いて予測を行った.バックプロパゲーションの設定は中間層 5個で最大学習回数 を 500回,目標値を 0.01,平均2乗誤差の最小値を 1e-10とした.また伝達関数を入力層 - 中間層間を対数シグモイド伝達関数の場合と双曲線正接シグモイド伝達関数の場合として, 中間層 - 出力層間を線形伝達関数とした.そして,入力データを単語ベクトルと株価の併用 の場合と単語ベクトルのみの場合と株価のみの場合の 3種類とした.教師データを翌日の株 価の上昇か下降の 2値と自らの判断で上昇する記事か下降する記事かの 2値として,学習 させた.それぞれ全くの未知のデータを入力し翌日の株価の予測をした. 結果は単語ベクトルと株価の併用の認識率が最も高い結果となった.また株価のみの結果 より記事が株価に関係している可能性を示すことができた.しかし,本研究より得られた認 識率は決して高いものではなく,これらを改善する為には,記事データの増加や,単語ベク トルに使用する単語の熟考,各単語の株価への影響度による重みの付与,株価以外の数値 データの使用事など検討する必要がある.4.2 まとめ ることが考えられる.問題点としてニュース記事の減少や中小企業の予測が困難といったも のが挙げられる.改善点として,特定企業のニュース記事に対して重みを付ける事や中小企 業に対しては業種別のニュース記事を使用することで改善できると考えられる. 今回認識率の判断に翌日の株価が上昇したか下降したか単純なものにしたが,これだと上 昇率と下降率の違いで予測をできたとしても損をする場合がある.そのため,教師データを いくら変動するかを調べる必要がある.
謝辞
本研究にあたりご協力いただいた皆様には心から感謝致します指導教員である高知工科大 学情報学群講師吉田先生には,特にご迷惑をお掛けしました.吉田先生には研究のアドバイ スだけではなく,就職活動の際にも,面接の練習をしてくださったりと大変お世話になりま した.また飲み会の席での礼儀などもお教えいただき深く感謝いたします. また本研究の副査を引き受けていただきました高知工科大学情報学群篠森敬三教授と高知 工科大学情報学群松崎公紀准教授に深く感謝いたします.篠森先生には梗概の提出時に様々 な助言をいただきました.松崎先生には出張中お忙しい中,梗概のいたらない部分を指摘し ていただきました.また,卒業研究発表の時ご指摘をいただき有難うございました.両先生 には深く感謝いたします. 同研究室の修士 2年の森木彰規氏には,御自身研究が忙しい中,本研究のテキストマイニ ングの相談や助言などをしていただきました.またテキストマイニングについての本を貸し ていただき非常に役にたちました.また卒業研究発表のスライドで多くのご指摘いただき感 謝いたします. 同研究室の修士 1年の大東真氏,立花啓海氏,中谷浩輝氏,中山達喜氏には深く感謝致し ます.大東氏には株に関する相談だけでなく,私たちのことを色々気にかけてくれてよく発 破をかけてくれました.またそれだけではなく私たちの気晴らしをしていただき感謝いたし ます.立花氏には,不甲斐ない私たちのために色々厳しいお言葉をいただきましたが,それ がなければ無事研究が終わらなかったと思います.また,厳しいお言葉だけでなく立花氏も 私たちの気晴らしをしていただきかんしゃいたします.中谷氏には,テキストマイニングの 相談や単語ベクトルの作成を手伝っていただきました.私の研究が無事終わったのも中谷氏 の力があればこそだと思います.また卒業研究発表のスライドを就職活動中忙しい中見てい ただき感謝いたします.中山氏には,私の研究とは直接関係ないもののよく気をかけていた謝辞 た時,中山氏にはフォローをしていただき感謝いたします. 同研究室の赤井氏,越村氏,鈴江氏,富永氏,橋詰氏,原氏は研究室の配属から2年近く のともに吉田研究室で切磋琢磨してきたと私は思っています.今の自分がいるのは一緒に頑 張ってこれたからだと思います.越村氏,鈴江氏,富永氏,原氏は私と同じく無事就職する ことができましたが,私は 1人埼玉と遠くになり寂しく感じます.こちらに来ることがあれ ば,連絡でも入れてみてください.橋詰氏は院に上がり,これからの吉田研究室を支えてい く事になると思い大変だと思いますが,頑張ってください.あと,任天堂に就職できること を祈ってます.赤井氏は現在,就職活動中とのことですが,大変だと思いますが頑張ってく ださい. 同研究室の3年の清水氏,宮本氏,斧山氏の3人には私の研究の記事集めを手伝っていた だきました.就職活動で忙しい中時間を割いてくれ感謝いたします. 最後に,1人遠くの地に行きますができたら暇を見つけて高知に帰ってきたいと考えてい るのでその時は,よろしくお願いします.
参考文献
[1] 山口 和孝:“ ニューラルネットと遺伝的アルゴリズムを用いた株式売買支援システム ” 東京大学院,平成14年度 [2] 和泉 潔,後藤 卓,松井 藤五郎,産業技術総合研究所,三菱東京UFJ銀行,とうごろ う機械学習研究所:“ テキスト情報による金融市場変動の要因分析 ”第23回人工知能学 会全国大会,2009.[3] George Chang,Marcus J. Healey,James A. M. Mchugh,Jason T. L. Wang,“Web
マイニング ”,共立出版,2005.
[4] 那須川 哲也,“テキストマイニングを使う技術/作る技術”,東京電機大学出版局,2006.