21
商商商商商商商商商商商商商商 商商商商商商商 商商商商商商 商商商商商商 商商商商商 商商商商 I13I006 1

商品レビューのディープラーニングによる分類

Embed Size (px)

Citation preview

Page 1: 商品レビューのディープラーニングによる分類

1

商品レビューのディープラーニングによる分類岡山理科大学 総合情報学部 情報科学科井上佳祐( I13I006 )

Page 2: 商品レビューのディープラーニングによる分類

2

アジェンダ1. 背景2. 目的3. データについて4. 分類について5. 技術的な概要6. 学習の評価結果と比較7. まとめ8. 今後の予定

Page 3: 商品レビューのディープラーニングによる分類

3

背景• 近年、インターネットの普及やコンピュータの性能の向上のためデータの収集やその処理などを行うハードルが下がった• ディープラーニングを含め機械学習を行うための便利なツールやライブラリなどが容易に利用できるようになった• 収集した情報や機械学習などの技術を用いて自動的に会話文を生成し返答する BOT などが増えた

• 商業利用もされてきている

Page 4: 商品レビューのディープラーニングによる分類

4

目的• 本研究では、前ページの背景にある技術の初歩的な機能である「分類」をおこなうことが目的

• 分類対象は、楽天市場の商品レビューデータ

Page 5: 商品レビューのディープラーニングによる分類

5

楽天市場の商品レビューデータについて (1/2) 2011 年 7 月 28 日現在のデータ レビュー数 1297697 件 (複数ファイルがあるがとりあえず 1 ファイルで) 17 項目

ID データ名 説明0 投稿者 「 user1 」のようにマスクしたユーザ名1 年齢 10 歳代など2 性別 0 :男  1 :女  2 :不明3 商品コード 店舗コード:商品 id4 商品名5 店舗名6 商品 URL 商品ページの URL のドメイン以降の部分7 商品ジャン

ル ID商品のジャンル ID

Page 6: 商品レビューのディープラーニングによる分類

6

楽天市場の商品レビューデータについて (2/2)ID データ名 説明8 商品価格 商品購入時の価格9 購入フラグ 0 :購入なし  1 :購入あり10 内容 「実用品・普段使い」などの文字列11 目的 「自分用」などの文字列12 頻度 「はじめて」などの文字列13 評価ポイン

ト0 - 5 の 6 段階評価スコア

14 レビュータイトル

レビューの題名15 レビュー内

容レビューのコメント

16 レビュー登録日時

「 yyyy/mm/dd HH:MM:SS 」

Page 7: 商品レビューのディープラーニングによる分類

7

分類について• 購入者が投稿したレビューデータのコメントをその商品に対する購入者の評価(星の数)で分類

Page 8: 商品レビューのディープラーニングによる分類

8

技術的な概要• この分類は、ディープラーニングを用いて学習させる• ディープラーニングのアルゴリズムとして RNN (特に

LSTM )を用いる• 楽天市場のレビューデータは内容的には加工せずそのまま用いる• インターネットに公開してあるサンプルデータでの今回の手法による分類は、 6 割の正確性で分類できている

• 2 クラスへの分類

Page 9: 商品レビューのディープラーニングによる分類

9

ニューラルネットワーク、ディープラーニングとは? ニューラルネットワークとは、生物の脳の神経ネットワークをモデルとしたコンピュータ処理の仕組み ディープラーニングとは、ニューラルネットワークの延長上にあり、階層を多段階にしたニューラルネットワークを利用したアルゴリズムの総称

    入力層    隠れ層   出力層

Page 10: 商品レビューのディープラーニングによる分類

10

RNN とは?• RNN とは Recurrent Neural Network の略で、可変長のデータを扱えるようにするために、隠れ層に再帰的な構造をもたせたニューラルネットワークを利用したアルゴリズム

              入力層        隠れ層      出力層

Page 11: 商品レビューのディープラーニングによる分類

11

LSTM とは?• LSTM とは Long Short Term Memory の略で、 RNN の一種

• 従来の RNN では学習できない長期依存が学習可能である

LSTMBlock

              入力層        隠れ層      出力層

Page 12: 商品レビューのディープラーニングによる分類

12

LSTM BLOCK について

[ 参考 ] わかる LSTM ~ 最近の動向と共に | Qiita http://qiita.com/t_Signull/items/21b82be280b46f467d1b

Page 13: 商品レビューのディープラーニングによる分類

13

実行・開発環境• OS : Linux Ubuntu16.04 LTS 64bit• CPU : Corei7 6700• RAM : 32GB• GPU : GTX960 2GB• GPGPU : CUDA7.5• プログラミング言語: Python2.7.12• 形態素解析器: MeCab0.996 + IPA NEologd 辞書• ディープラーニングライブラリ: Keras• ディープラーニングフレームワーク: Tensorflow

• Keras のバックエンドで動く

Page 14: 商品レビューのディープラーニングによる分類

14

LSTM に文を入力• 文を以下のようなイメージのモデルで学習させたい

• 学習データとして「コメント」、教師データとして「評価値」

LSTMBlock

コメント 評価値

              入力層        隠れ層      出力層

Page 15: 商品レビューのディープラーニングによる分類

15

LSTM に文を単語にして入力• LSTM に文を直接入力できない• 文を形態素解析器で単語に分解し、単語ごとに入力

• 長期依存の学習が可能な LSTM を使うのはそのため• 例

• 文:とてもよかったです• 評価値: 5

• 単語に分解• 文:「とても」「よかっ」「た」「です」

• 単語に ID を付与• 1 「とても」 2 「よかっ」 3 「た」 4 「です」

• 文は以下のようになる• 「 1 」「 2 」「 3 」「 4 」

Page 16: 商品レビューのディープラーニングによる分類

16

LSTM に文を単語にして入力する図LSTMBlock

LSTMBlock

LSTMBlock

LSTMBlock

単語「 1 」

単語「 2 」

単語「 3 」

単語「 4 」 評価「 5 」              入力層        隠れ層      出力層

Page 17: 商品レビューのディープラーニングによる分類

17

学習の評価結果と比較手法 正確に分類できた割合TF-IDF+SVM(10000 文 ) 60.55%

TF-IDF+SVM(50000 文 ) 62.94%

TF-IDF+SVM(1297697 文 ) 66.90%

今回の手法( LSTM ) (1297697文 )

1.67%

Page 18: 商品レビューのディープラーニングによる分類

18

まとめ• 今回は、 LSTM による楽天市場のレビューデータ学習および分類を行った• また、その評価をおこない正確に分類できた割合の算出をし、

TF-IDF による分類での割合と比較した• 学習する文が圧倒的に TF-IDF より多いが、満足いく結果が得られなかったため工夫が必要• サンプルデータでは 6 割の正確性を得られていることから、学習結果(正確性)は、学習させるデータに影響されやすい

Page 19: 商品レビューのディープラーニングによる分類

19

今後の予定• 形態素解析器を最近流行りの JUMAN++ に変更

• 単語の切り方が変わる• 単語をステミング

• 活用などを考慮するので、学習する単語数が減る• 単語を Word2Vec でベクトル化しそれを LSTM で学習• 単語を Word2Vec でベクトル化しそれを CNN で学習• 商品を購入した人がレビューをする際、コメントから自動的に商品の評価を行えるようにすることが最終的な目標

Page 20: 商品レビューのディープラーニングによる分類

20

ご静聴ありがとうございました

Page 21: 商品レビューのディープラーニングによる分類

21

質疑応答