• Like
  • Save
Jubatusで始める機械学習
Upcoming SlideShare
Loading in...5
×

Jubatusで始める機械学習

  • 6,558 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
6,558
On Slideshare
0
From Embeds
0
Number of Embeds
11

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ©2014 NTT Resonant Inc. All Rights Reserved 1 エヌ・ティ・ティ レゾナント株式会社 藤村 武史 Jubatusで始める機械学習 (カスタマサポートへの適用検討と導入障壁)
  • 2. ©2014 NTT Resonant Inc. All Rights Reserved 2 はじめに ■アジェンダ - 適用分野の紹介 (コンタクトセンターへの適用案) - 試行錯誤の紹介 (検討段階まで) ■自己紹介 業務内容: NTTレゾナントの法人営業部門 Windows向けツールの開発に携わっていました。 機械学習関係(jubatus)は、昨年末頃から携わっています。 利用頻度の比較的高い言語: Java,C/C++ 本件では社内の有識者の助力を得て取り組んでいました。
  • 3. ©2014 NTT Resonant Inc. All Rights Reserved 3 適用分野 ■カスタマサポート(コンタクトセンター)への適用 問合せ 回答 データの蓄積 データの分析 運用業務 分析業務 コンタクトセンタ業務 ・日々の問合せ受付けオペレーションを行う運用業務 ・「寄せられた声」を分析し、改善に繋げる分析業務 3
  • 4. ©2014 NTT Resonant Inc. All Rights Reserved 4 適用分野 コンタクトセンター 要望 Jubatusによ るソリューシ ョン 内容 対応が不要な問合せ (スパム、売込等) は、事前に選別 分類器 スパム等を特徴づけるベクトルを設計する事で、該当する問合せを 回答する対象から除外する。 怒っている問合せ内 容を事前に分別 分類器 「怒り」を特徴づけるベクトルを設計する事で、問合せの内容から 申告者の「怒り」を判定し、「怒り」の問合せとそれ以外を分類す る。 速やかな対応が必要 な問合せを事前に分 別 分類器 速やかな対応が必要な問合せを特徴づけるベクトル(緊急ベクトル )を設計する事で、問合せの内容から緊急性を判定し、緊急な対応 が必要な問合せとそれ以外を分類する。 自動的に問合せ内容 を解釈し、適切なF AQを返す 近傍探索 問合せ内容とFAQの内容を共通の特徴ベクトルで解析し、関連付け る。 新たな手法による分 析の実施 クラスタリン グ Jubatusを利用する事で、従来の手法では得る事が難しい「気づき 」を得る。 ・ Jubatus の適用案
  • 5. ©2014 NTT Resonant Inc. All Rights Reserved 5 適用分野 問い合わせ分類による効率化 ユーザ コンタクトセンター システム スーパーバイザー オペレーター メール分類システム メールの仕分けを目検にて実施 主にスパムの除去を行うメールフォームにて問合せ 問合せに対して回答を行う メールにて回答 解決しない場合は、メールのやり取りが繰り返される ・現状
  • 6. ©2014 NTT Resonant Inc. All Rights Reserved 6 ユーザ コンタクトセンターー システム スーパーバイザー オペレーター 分類 近傍探索 メールフォームにて問合せ 適切なオペレータが 問合せに対して回答を行う メールにて回答 解決しない場合は、メールのやり取りが繰り返される 近傍探索 システムで受付けた際に適切なレコメンドがされる ことで、後工程に廻す件数を減らす事が可能となる 分類器の検証 正しく自動分類されることで、オペレータのス キルに応じた対応が可能となり、人員配置の最適 化が可能となる 問い合わせ分類による効率化 適用分野 ・Jubatusの適用案 Jubatus 対象外 怒り 緊急 その他
  • 7. ©2014 NTT Resonant Inc. All Rights Reserved 7 内容 概要 数量 gooへの問合せ ポータルサイトgooに寄せられた利用者からの問合せ https://goo.e-srvc.com/app/ask_select 315 ビジネスgooへの問合せ 法人向け有料サービスであるビジネスgooに寄せられた利用者 からの問合せ https://business.goo.ne.jp/open_page/open_page/inquiry/ 80 スパム NTTレゾナントが導入しているスパムフィルタ「Barracuda Spam & Virus Firewall Plus」がスパム判定をしたメール http://www.barracuda.co.jp 150 gooが用意しているFAQ ポータルサイトgooが用意している「よくある質問/お問い合わせ」 と、それに対する回答 https://goo.e-srvc.com/app/answers/list/ 508 適用分野 ・検証用データ 分析結果の予想が立てやすい「試験用データ」を用いるのではなく、 NTTレゾナントがWebサービスを提供する過程で得た「問合せデータ」を使用する ⇒ 人手で個人情報の削除をする必要があり、データ件数は数百単位程。
  • 8. ©2014 NTT Resonant Inc. All Rights Reserved 8 試行錯誤 ・形態素を特徴ベクトルとした場合 項番 判定項目 基準 試験結果 (件) 1 問合せ対象外データを対象外と判定(真陽性) ○ 18 2 問合せ対象外データを対象と判定(偽陰性) △ 57 3 問合せ対象データを対象外と判定(偽陽性) × 2 4 問合せ対象データを対象と判定(真陰性) ○ 138 回答対象外(スパム)の分類器 ⇒ 感度(再現率) 24% 特異度(適合率)99%
  • 9. ©2014 NTT Resonant Inc. All Rights Reserved 9 項番 判定項目 基準 試験結果 (件) 1 「怒り」のデータを「怒り」と判定(真陽性) ○ 1 2 「怒り」のデータを「その他」と判定(偽陰性) × 21 3 「その他」のデータを「怒り」と判定(偽陽性) △ 6 4 「その他」のデータを「その他」と判定(真陰性) ○ 256 怒り(クレーム)の分類器 試行錯誤 ・形態素を特徴ベクトルとした場合 ⇒ 感度(再現率) 5% 特異度(適合率)98%
  • 10. ©2014 NTT Resonant Inc. All Rights Reserved 10 試行錯誤 ・機械学習に対するイメージとのキャップ
  • 11. ©2014 NTT Resonant Inc. All Rights Reserved 11 試行錯誤(特徴ベクトルの再設計) No 特徴ベクトル構成要素(回答対象外(スパム)の分類器) 1 本文がURLで、構成されている 2 本文中に大量の画像が存在する 3 「メルマガ」に関しての固有表現がある 4 「儲け話」に関しての固有表現がある 5 「出会い系」サイトへ誘導する固有表現がある 6 「勧誘」をする際の固有表現がある 7 上記3~6に属さない回答を要しない問合せの固有表現がある 8 記号を乱用している ・次元数の低い特徴ベクトルに変更 各文書(スパム、クレーム)中の特徴的なワードの抽出。 ・問題点(有識者からの指摘) 学習データ数(数十~百数十)に対して、特徴ベクトルの次元が大きすぎる ■ 回答対象外(スパム)の分類器
  • 12. ©2014 NTT Resonant Inc. All Rights Reserved 12 試行錯誤(特徴ベクトルの再設計) No 特徴ベクトル構成要素(怒りの分類器) 1 記号を乱用している 2 「無能」に類似する語彙がある 3 「改悪」に類似する語彙がある 4 「卑怯」に類似する語彙がある 5 「貪欲」に類似する語彙がある 6 「憤り」に類似する語彙がある 7 「強要」に類似する語彙がある 8 「反対」に類似する語彙がある 9 「迷惑」に類似する語彙がある 10 「クレーム」に類似する語彙がある 11 「苛立たしさ」に類似する語彙がある No 特徴ベクトル構成要素(怒りの分類器) 12 「魯鈍」に類似する語彙がある 13 「不当」に類似する語彙がある 14 「憤り」に類似する語彙がある 15 「行き過ぎ」に類似する語彙がある 16 「罵倒」をする際の固有表現がある 17 「ポジティブ」な表現がある ※ 18 「ネガティブ」な表現がある ※ ・次元数の低い特徴ベクトルに変更 ■ 怒り(クレーム)の分類器 ※「17」「18」の取得には リッチインデクサを利用
  • 13. ©2014 NTT Resonant Inc. All Rights Reserved 13 【参考】躓き Jubatusの分類器では分離超平面が原点を通るので、 定数項を追加する等の工夫が必要。 #特徴の次元が低い場合は影響が大きい?
  • 14. ©2014 NTT Resonant Inc. All Rights Reserved 14 ・特徴的なワードを特徴ベクトルとした場合 回答対象外(スパム)の分類器 ⇒ 感度(再現率) 24% → 51% 特異度(適合率)99% → 100% ⇒ 結果の改善 項番 判定項目 基準 試験結果(件) 初回 2回目 1 問合せ対象外データを対象外と判定(真陽性) ○ 18 38 2 問合せ対象外データを対象と判定(偽陰性) △ 57 37 3 問合せ対象データを対象外と判定(偽陽性) × 2 0 4 問合せ対象データを対象と判定(真陰性) ○ 138 140 試行錯誤(特徴ベクトルの再設計)
  • 15. ©2014 NTT Resonant Inc. All Rights Reserved 15 怒り(クレーム)の分類器 ・特徴的なワードを特徴ベクトルとした場合 ⇒ 感度(再現率) 5% → 18% 特異度(適合率)98% → 95% 項番 判定項目 基準 試験結果(件) 初回 2回目 1 「怒り」のデータを「怒り」と判定(真陽性) ○ 1 4 2 「怒り」のデータを「その他」と判定(偽陰性) × 21 18 3 「その他」のデータを「怒り」と判定(偽陽性) △ 6 12 4 「その他」のデータを「その他」と判定(真陰性) ○ 256 250 ⇒ やや改善傾向 試行錯誤(特徴ベクトルの再設計)
  • 16. ©2014 NTT Resonant Inc. All Rights Reserved 16 試行錯誤(jubadump) ・Jubadumpによる特徴ベクトルの検証 Jubadump とは 学習モデル(係数)を表示することが出来るツール 以下から導入することが出来ます https://github.com/jubatus/jubadump "storage": { "weight": { "06_u52E7u8A98@num": { "1": { "v2": 0, "v1": -0.436069326475, "v3": 0 }, "0": { "v2": 0, "v1": 0.62849682197, "v3": 0 } }, "04_u5132u3051u8A71@num": { ・・・・ ← このような出力が得られます。
  • 17. ©2014 NTT Resonant Inc. All Rights Reserved 17 ※:小数点第3位を四捨五入 No 特徴ベクトル構成要素 係数(※) 回答を 要しない 回答を 要する 1 本文がURLで、構成されている 0.87 ー0.46 2 本文中に大量の画像が存在する ー0.20 0.20 3 「メルマガ」に関しての固有表現がある ー0.79 0.79 4 「儲け話」に関しての固有表現がある 1.54 ー1.50 5 「出会い系」サイトへ誘導する固有表現がある 0.22 ー0.13 6 「勧誘」をする際の固有表現がある ー0.44 0.63 7 上記3~6に属さない回答を要しない問合せの 固有表現がある ー1.01 1.05 8 記号を乱用している 0.25 ー0.14 試行錯誤(jubadump) Jubadumpで確認した係数(赤枠■は、本来正とすべき要素を負へ誘導する想定外の係数値) ・回答対象外(スパム)の分類器
  • 18. ©2014 NTT Resonant Inc. All Rights Reserved 18 試行錯誤(jubadump) No 特徴ベクトル構成要素 係数(※) 怒り 怒りでない 1 記号を乱用している 351 135 2 「無能」に類似する語彙がある ー551 541 3 「改悪」に類似する語彙がある ー551 541 4 「卑怯」に類似する語彙がある ー551 541 5 「貪欲」に類似する語彙がある ー551 542 6 「憤り」に類似する語彙がある ー551 542 7 「強要」に類似する語彙がある ー551 542 8 「反対」に類似する語彙がある ー551 541 9 「迷惑」に類似する語彙がある ー551 541 10 「クレーム」に類似する語彙がある 465 440 11 「苛立たしさ」に類似する語彙がある ー551 542 Jubadumpで確認した係数(赤枠■は、本来正とすべき要素を負へ誘導する想定外の係数値) ・怒り(クレーム)の分類器
  • 19. ©2014 NTT Resonant Inc. All Rights Reserved 19 No 特徴ベクトル構成要素 係数(※) 怒り 怒りでない 12 「魯鈍」に類似する語彙がある ー551 542 13 「不当」に類似する語彙がある ー551 542 14 「憤り」に類似する語彙がある ー551 541 15 「行き過ぎ」に類似する語彙がある ー551 541 16 「罵倒」をする際の固有表現がある ー551 541 17 「ポジティブ」な表現がある ー551 541 18 「ネガティブ」な表現がある ー197 683 ⇒ 過半数の特徴量が想定通りに機能していない ⇒ 根本的な特徴ベクトルの再設計が必要 どうしたら良いかご存知の方は、お声かけ下さい。 試行錯誤
  • 20. ©2014 NTT Resonant Inc. All Rights Reserved 20 導入障壁(ご相談) ・素人には敷居が高い ・データ数が少ない場合は… データの種類によっては、十分なデータ数を確保できない。 - 教師データを人手で作成している場合 - データ利用にあたって個人情報の削除が必要な場合 動かしてみるまでの障壁は少ないが、 精度向上には、特徴ベクトル設計の職人技が必要?