Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
CNNを使ったテキスト分類
岡山理科大学 総合情報学部 情報科学科
I13I006 井上佳祐
アジェンダ
 前回までの課題点
 間違っていたところ
 LSTMを使ったテキスト分類
 CNNを使ったテキスト分類
 畳み込み層1ノードモデル
 畳み込み層2ノードモデル
 畳み込み層3ノードモデル
 結果の比較
 まとめ
...
前回までの課題点
 うまく学習ができておらず、Accuracyが2%程と実用的でなかった。
 やり方が間違っていた
間違っていたところ
 間違い
 学習用のラベルデータを1次元で0,・・・,5を表現していた
 正しい
 学習用のラベルデータを分類する項目と同じ数の次元にして各要素は、0 or 1(正解のラ
ベルだけ1になる)のいわゆるone-hotベ...
LSTMを使ったテキスト分類
LSTM
Block
コメン
ト
評価値
入力層 隠れ層 出力層
LSTMに文を単語にして入力する図
LSTM
Block
LSTM
Block
LSTM
Block
LSTM
Block
単語
「1」
単語
「2」
単語
「3」
単語
「4」
評価
「5」
入力層 隠れ層 出力層
CNNを使ったテキスト分類
 入力形式は、m×n行列
 m:単語のベクトル表現の次元(word embeddingかword2vecで変換)
 n :文章の単語数
 やはり次元を揃える必要がある(足りないとことは0で埋めるとか)
とても...
畳み込み層1ノードモデル
畳み込み
層
高:3
コメン
ト
評価値Embed プーリング
層
全結合
層
入力層 出力層
畳み込み層2ノードモデル
畳み込み
層
高:3
コメン
ト
評価値Embed
プーリング
層
全結合
層
入力層 出力層
畳み込み
層
高:4
プーリング
層
畳み込み層3ノードモデル
畳み込み
層
高:3
コメン
ト
評価値Embed
プーリング
層
全結合
層
入力層 出力層
畳み込み
層
高:5
プーリング
層
畳み込み
層
高:4
プーリング
層
出力層について
 活性化関数は、ソフトマックス関数を利用
 目的関数は、交差エントロピーを利用
 ようは、Softmax cross entropy
 出力値は確率
 例)[0.2 0.4 0.1 0.1 0.1 0.1]
 一番左...
結果の比較
 LSTMは、15回学習
 CNNは、5回学習
 Accuracyは学習データと同一のデータで測定
LSTM CNN-1 CNN-2 CNN-3
Accuracy 81.7% 80.26% 82.63% 86.4%
まとめ
 今回はLSTMとCNNを用いて学習を行った
 CNNは畳み込み層のノード数を増やしたりフィルタの高さを変えたりした
 6クラス分類を行っているが今回のデータではどの手法でも8割程の精度であった
今後の予定
 Accuracyの測定は学習時とは違うデータで行うべきなのでそれをやる
 単語から単語ベクトルへの変換に単語の出現頻度を用いたWordEmbeddingではな
くWord2Vecを用いたものにしてみる
ご清聴ありがとうございました
Upcoming SlideShare
Loading in …5
×

CNNを使ったテキスト分類

1,047 views

Published on

学校で発表した資料
CNNを利用して文章の分類を行った

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

CNNを使ったテキスト分類

  1. 1. CNNを使ったテキスト分類 岡山理科大学 総合情報学部 情報科学科 I13I006 井上佳祐
  2. 2. アジェンダ  前回までの課題点  間違っていたところ  LSTMを使ったテキスト分類  CNNを使ったテキスト分類  畳み込み層1ノードモデル  畳み込み層2ノードモデル  畳み込み層3ノードモデル  結果の比較  まとめ  今後の予定
  3. 3. 前回までの課題点  うまく学習ができておらず、Accuracyが2%程と実用的でなかった。  やり方が間違っていた
  4. 4. 間違っていたところ  間違い  学習用のラベルデータを1次元で0,・・・,5を表現していた  正しい  学習用のラベルデータを分類する項目と同じ数の次元にして各要素は、0 or 1(正解のラ ベルだけ1になる)のいわゆるone-hotベクトルで表現する  0から5の6段階に分類する場合で正解が3の場合 [0 0 0 1 0 0] と6次元のベクトルで表現する
  5. 5. LSTMを使ったテキスト分類 LSTM Block コメン ト 評価値 入力層 隠れ層 出力層
  6. 6. LSTMに文を単語にして入力する図 LSTM Block LSTM Block LSTM Block LSTM Block 単語 「1」 単語 「2」 単語 「3」 単語 「4」 評価 「5」 入力層 隠れ層 出力層
  7. 7. CNNを使ったテキスト分類  入力形式は、m×n行列  m:単語のベクトル表現の次元(word embeddingかword2vecで変換)  n :文章の単語数  やはり次元を揃える必要がある(足りないとことは0で埋めるとか) とても よか った ・ ・ ・ です 0.x 0.y 0.z ・・・ 0.i 0.j 0.k 0.y 0.z 0.x ・・・ 0.k 0.i 0.j 0.z 0.y 0.x ・・・ 0.i 0.j 0.k ・ ・ ・ 0.y 0.x 0.z ・・・ 0.k 0.i 0.j
  8. 8. 畳み込み層1ノードモデル 畳み込み 層 高:3 コメン ト 評価値Embed プーリング 層 全結合 層 入力層 出力層
  9. 9. 畳み込み層2ノードモデル 畳み込み 層 高:3 コメン ト 評価値Embed プーリング 層 全結合 層 入力層 出力層 畳み込み 層 高:4 プーリング 層
  10. 10. 畳み込み層3ノードモデル 畳み込み 層 高:3 コメン ト 評価値Embed プーリング 層 全結合 層 入力層 出力層 畳み込み 層 高:5 プーリング 層 畳み込み 層 高:4 プーリング 層
  11. 11. 出力層について  活性化関数は、ソフトマックス関数を利用  目的関数は、交差エントロピーを利用  ようは、Softmax cross entropy  出力値は確率  例)[0.2 0.4 0.1 0.1 0.1 0.1]  一番左が第0要素とすると第1要素の確率が一番大きいので、入力した文はカテゴリ (評価)「1」に分類される
  12. 12. 結果の比較  LSTMは、15回学習  CNNは、5回学習  Accuracyは学習データと同一のデータで測定 LSTM CNN-1 CNN-2 CNN-3 Accuracy 81.7% 80.26% 82.63% 86.4%
  13. 13. まとめ  今回はLSTMとCNNを用いて学習を行った  CNNは畳み込み層のノード数を増やしたりフィルタの高さを変えたりした  6クラス分類を行っているが今回のデータではどの手法でも8割程の精度であった
  14. 14. 今後の予定  Accuracyの測定は学習時とは違うデータで行うべきなのでそれをやる  単語から単語ベクトルへの変換に単語の出現頻度を用いたWordEmbeddingではな くWord2Vecを用いたものにしてみる
  15. 15. ご清聴ありがとうございました

×