More Related Content
Similar to Combined analysis of Watson and Spark (20)
More from DataWorks Summit/Hadoop Summit (20)
Combined analysis of Watson and Spark
- 1. © 2016 IBM Corporation
WatsonとSparkを組み合わせた分析
~Watsonを使ったレコメンドと可能性と問題~
Tanaka Y.P
2016-10-27
- 2. © 2016 IBM Corporation2
自己紹介
田中裕一(yuichi tanaka)
主にアーキテクチャとサーバーサイドプログラムを担当
することが多い。Hadoop/Spark周りをよく触ります。
Node.js、Python、最近はSpark周りの仕事でScalaを書く
ことが多い気がします。
休日はOSS周りで遊んだり。
詳解 Apache Spark
- 3. © 2016 IBM Corporation3
背景
昨今データ活用の重要性が説かれて久しく、
Hadoop/Sparkといった技術要素が非常に注目されてい
ます。また、AIのワードと共にWatsonなどのCognitive
システムにも注目が集まるようになってきました。
参考:総務省 H.24 情報通信白書
http://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h24/html/nc121410.html
- 5. © 2016 IBM Corporation5
Watsonの話
AI(人工知能)の文脈で紹介されることもあるが実はIBM自身はAIとは
読んでいない
Descriptive
Analytics
Predictive
Analytics
Cognitive
Analytics
現状把握
予測分析
認知
何が起こったのか
将来何が起こるのか
次に取るべき
最適なアクションを判別
共有・指示を行う。
- 6. © 2016 IBM Corporation6
Watsonは一体何ができるのか?
現在WatsonはBluemix上で幾つかの機能をRestI/Fで提供しています。
Natural Language Classifier Retrieve and Rank Document Conversino Speech To Text Text to Speech
Tone Analyzer Personality Insights Visual Recognition
参考:
Watson API Demo
Watsonの一例
- 7. © 2016 IBM Corporation7
今日お話しすること
今日は題材としてWatsonがどんなところで利用可能なのか?を考えるため、Watsonの活
用方法の一つとして、WatsonとSparkを組み合わせて新しい形の映画レコメンドを作って
みます。
• 今日のテーマを通して考えること
• Watsonを巧く利用することによるデータ活用のさらなる可能性
• 面白いから実用へ
• Watsonと機会学習の企業における棲みわけ
• これからAI時代を迎えるにあたっての課題
- 8. © 2016 IBM Corporation8
WatsonとSparkで作る映画レコメンド
今日の手順
1. データの収集と格納(Master Data)
2. Watsonを使ったPersonality分析と結果の格納
3. Sparkを使った前処理とモデルの生成
4. サンプルデータの収集とモデルの適用
- 9. © 2016 IBM Corporation9
今日のサンプルの俯瞰
Personality to Item
Webからのデータ収集 Watsonを使った分析
Sparkを使った前処理
レコメンド
- 10. © 2016 IBM Corporation10
Masterデータの収集
user_id name age...
1 Yuichi Tanaka 30
2 Sho Kaijima 35
movie_id title desc
1 君の名は。 前作『言の
葉の庭』か
ら...
2 シン・ゴジラ 『シン・ゴジ
ラ』は、...
user_id movie_id value comment
1 1 4.0 個人的にはめっちゃ好きでした...
1 2 3.5 とにかくリアルなのが良い。無駄な
会議含め...
*ユーザー情報のマスタ 映画情報のマスタ
ユーザによる映画評価
- 11. © 2016 IBM Corporation11
収集データのWatsonによる分析
user_id movie_id value comment
1 1 4.0 個人的にはめっちゃ好きでした...
1 2 3.5 とにかくリアルなのが良い。無駄な会議含め...
ユーザによる映画評価
Personality Insights
WatsonのAPIの中、Personality InsightsのAPIとユーザーによる映画評価の情報を利用し
ユーザー毎のパーソナリティを作成します。
- 12. © 2016 IBM Corporation12
Personality Insight ~書き込みから、心理属性を分析する~
Personality (個性)
Needs (欲求)
Values (価値観)
言語表現の特徴を、心理学的観点から整理・体系化
• 言語的特徴: 助詞・代名詞・数詞・否定表現・他
• 心理作用、精神的・知覚的プロセス: 喜怒哀楽表現・原因表現・他
• 相対的概念: 時間表現・空間表現・行動表現・他
• 関心の対象: 仕事関連・学校関連・娯楽関連・宗教関連・他
テキスト watson
エラー率
- 13. © 2016 IBM Corporation13
Personality(個性)の推定
Big 5/OCEAN と呼ばれる軸でPersonalityを推定
• Openness to experience: 好奇心が強い・独創的 vs. 着実・警戒心が強い
• Conscientiousness: 勤勉・まめな人 vs. 楽天的・不注意
• Extraversion: 外向的・エネルギッシュ vs. 孤独を好む・控えめ
• Agreeableness: 人当たりの良い・温情のある vs. 冷たい・不親切
• Neuroticism: 繊細・神経質 vs. 情緒安定な・自信家の
さらに細かい推定も可能
• Openness to experience: 活発度、自己主張、明朗性、刺激希求性、友情、社交性
• Conscientiousness: 大胆性、芸術的関心度、情動性、想像力、思考力、現状打破
• Extraversion: 達成努力、注意深さ、忠実さ、秩序性、自制力、自己効力感
• Agreeableness: 利他主義、協調性、謙虚さ、強硬さ、共感度、信用度
• Neuroticism: 悲観的、自意識過剰、低ストレス耐性、激情的、心配性、利己的
13
- 14. © 2016 IBM Corporation14
Needs(欲求)の推定
Kevin FordのUniversal Needs Map に沿った分析 (欲求と社会的価値の関係)
個人の様々な習慣に関係 : ブランドの選択、商品の選択、職業の選択
• Challenge:挑戦
• Closeness:親密さ
• Curiosity:好奇心
• Excitement:興奮
• Harmony:調和
• Ideal:理想
• Liberty:自由
• Love:愛
• Practicality:現実性
• Self-(expression):自己表現
• Stability:安定
• Structure:組織
14
Spending
Thrifty
Materialism
Security
Altruism
Risk
Modesty
Conformism
Industry
- 15. © 2016 IBM Corporation15
Value(価値観)の推定
15
Schwartzの価値概説 (Schwartz Value Survey) に沿った分析
4つの上位価値と10個の価値によって構成される
4つの上位価値
•Self-transcendence : 自己超越
•Conservation : 保守(性)
•Self-enhancement :自己高揚
•Open to change : 変化に対する需要(許容)性
10の価値
•博識、善行、調和、伝統、秩序、権勢、
達成、快楽、刺激、自決
http://macs.mainichi.co.jp/space/web/034/marke.html より転載15
- 16. © 2016 IBM Corporation16
収集データのWatsonによる分析
user_id movie_id value comment
1 1 4.0 個人的にはめっちゃ好きでした...
1 2 3.5 とにかくリアルなのが良い。無駄な会議含め...
user_id name age... personality
1 Yuichi Tanaka 30 { "id": "personality", "name": "ビッグファイブ",
"children": [ {"id": "Neuroticism_parent", "name":
"情緒不安定性", "category": "personality",
"percentage": 0.8434073484367335, "children": [
2 Sho Kaijima 35 {"id": "Emotionality", "name": "情動性",
"category": "personality", "percentage":
0.3201653809217191, "sampling_error":
0.02634522}
コメントからpersonalityを作成
*ユーザー情報のマスタ
ユーザによる映画評価
- 17. © 2016 IBM Corporation17
Sparkによる前処理とモデル作成
M1 M2 M3 M4
U1 3.0 3.2 0 4.2
U2 2.1 2.0 3.0 1.8
U3 4.0 0 0 4.0
U4 0 0 3.0 3.3
M1 M2 M3 M4
U1 5.255 5.382 3.342 6.020
U2 4.728 4.511 6.683 4.076
U3 6.0 4.0 4.0 6.0
U4 4.002 4.002 5.902 6.092
映画の評価
前処理しておく
映画の評価(正規化)
user_id movie_id value comment
1 1 4.0 個人的にはめっちゃ好きでした...
1 2 3.5 とにかくリアルなのが良い。無駄な会議含め...
ユーザによる映画評価
ユーザー毎の映画の評価に変換
バラツキが出るので
- 18. © 2016 IBM Corporation18
Sparkによる前処理とモデル作成
user_id name age... personality
1 Yuichi Tanaka 30 { "id": "personality", "name": "ビッグファイブ",
"children": [ {"id": "Neuroticism_parent",
"name": "情緒不安定性", "category":
"personality", "percentage":
0.8434073484367335, "children": [
2 Sho Kaijima 35 {"id": "Emotionality", "name": "情動性",
"category": "personality", "percentage":
0.3201653809217191, "sampling_error":
0.02634522}
*ユーザー情報のマスタ
P1 P2 P3 P4
U1 0.6276 0.5269 0.5798 0.5782
U2 0.4849 0.4450 0.4132 0.4415
U3 0.4338 0.7435 0.7012 0.2925
U4 0.6247 0.7086 0.5751 0.4055
パーソナリティ
ユーザー毎のパーソナリティに変換
エラー率も勘案して計算しておく
P1E P2E P3E P4E
U1 0.0263 0.0341 0.0152 0.4783
U2 0.1238 0.0114 0.0984 0.5783
U3 0.0512 0.0299 0.0378 0.0673
U4 0.0837 0.3512 0.0384 0.1039
エラー率
エラー率で重み付け
- 19. © 2016 IBM Corporation19
Sparkによる前処理とモデル作成
P1 P2 P3 P4
U1 0.6276 0.5269 0.5798 0.5782
U2 0.4849 0.4450 0.4132 0.4415
U3 0.4338 0.7435 0.7012 0.2925
U4 0.6247 0.7086 0.5751 0.4055
M1 M2 M3 M4
P1 10.693 9.9009 10.761 12.163
P2 12.170 10.653 11.891 13.764
P3 11.503 10.091 10.899 12.886
P4 8.5093 7.8967 8.4469 9.5043
パーソナリティ
変換後(Personality/Movie)
M1 M2 M3 M4
U1 5.255 5.382 3.342 6.020
U2 4.728 4.511 6.683 4.076
U3 6.0 4.0 4.0 6.0
U4 4.002 4.002 5.902 6.092
映画の評価(正規化)
内積
- 20. © 2016 IBM Corporation20
対象データのWatsonによる分析
これまでのデータを学習データとし、映画のレコメンドを行う対象データ
を作ります。
引用:
ホワイトハウス
https://www.whitehouse.gov/briefing-room/speeches-and-remarks
外務省
http://www.mofa.go.jp/mofaj/press/enzetsu/e_souri.html
We get an incomplete.
But the good news is we can still
pass the course if we make
some good decisions now. ....
難民問題は国際社会が直面する最も
大きな課題の一つであり、このサミット
を開催したオバマ大統領のイニシア
ティブに心から敬意を表します。...
{"id": "Adventurousness", "name": "大胆性",
"category": "personality", "percentage":
0.5589476354662417, "sampling_error":
0.03311216},
{"id": "Emotionality", "name": "情動性",
"category": "personality", "percentage":
0.3201653809217191, "sampling_error":
0.02634522},
安倍首相 オバマ大統領
- 21. © 2016 IBM Corporation21
対象データのWatsonによる分析
{"id": "Adventurousness",
"name": "大胆性", "category":
"personality", "percentage":
0.5589476354662417,
"sampling_error": 0.03311216},
{"id": "Emotionality",
"name": "情動性",
"category": "personality",
"percentage":
0.3201653809217191,
"sampling_error":
0.02634522},
安倍首相 オバマ大統領
M1 M2 M3 M4
P1 10.693 9.9009 10.761 12.163
P2 12.170 10.653 11.891 13.764
P3 11.503 10.091 10.899 12.886
P4 8.5093 7.8967 8.4469 9.5043
変換後(Personality/Movie)
レコメンドの作成 レコメンドの作成
- 22. © 2016 IBM Corporation22
Cognitive/AIの可能性と問題
ここまで簡易的にWatsonを使ったレコメンドを見てきました。ここから
はこのレコメンドの可能性と問題について見ていきます。
- 23. © 2016 IBM Corporation23
Cognitiveの可能性①
レコメンドの種類/課題
Item to Item
User to Item
Personality to Item
ルールベース
アイテム同士の相関関係によるレコメンド
* パーソナライズがかからない
行動ログ・購買ログを元にしたレコメンド
* 行動や購買実績のないユーザー
ランキングやおすすめ商品のレコメンド
* ディフォルトセットなどで利用
パーソナリティを元にしたレコメンド
• 行動のないユーザーにもある程度
パーソナライズしたレコメンドが可能
- 24. © 2016 IBM Corporation24
Cognitiveの可能性②
日本語
We get an incomplete.
But the good news is we can still
pass the course if we make
some good decisions now. ....
難民問題は国際社会が直面する最も
大きな課題の一つであり、このサミット
を開催したオバマ大統領のイニシア
ティブに心から敬意を表します。...
英語
Personality
レコメンデーション
自社のデータ
Watson
経営分析
- 25. © 2016 IBM Corporation25
可能性のまとめ
• 今後、差別化・競争化していく中で、自社のデータとソーシャルデータの組み合わせ
はますます重要性を増す。
自社のデータ
ソーシャル・オープンデータ
Watson 新たな価値
- 26. © 2016 IBM Corporation26
今回のサンプルから、Watsonと機会学習の棲みわけについてまとめてみます。
Watsonと機会学習の棲みわけ
ソーシャル・オープンデータ
• 心理学などの専門的な知識、日本語の扱いなどの専門的な知識
• 学習データの収集
• コーパスの作成
• 結果検証
分析
- 27. © 2016 IBM Corporation27
今回のサンプルから、Watsonと機会学習の棲みわけについてまとめてみます。
Watsonと機会学習の棲みわけ
ソーシャル・オープンデータ
自社のデータ
分析
Data Scientist
- 28. © 2016 IBM Corporation28
Watsonを筆頭にCognitiveまたはAIと呼ばれているシステムでは説明性について欠如するケース
がほとんどです。
今回の例では テキストデータ ー> パーソナリティを利用しました。Watsonはテキストデータ
を元にテキストを記述したユーザーがどう言ったパーソナリティを持っているかを出力しますが、
なぜそう判断したのか?の部分は説明ができません
何が問題になるのか
自前の分析
Watsonの分析data
data
説明できない
説明可能
- 29. © 2016 IBM Corporation29
Performanceによる計測
自前の分析
Watsonの分析data
data
説明できない
説明可能
Minimum Viable Product
• MVP(検証可能な最小製品)としてBMLループに組み込む事でPerformanceは計測可能である
• CVR,CTR,回遊率等
Feedback
Performance
- 30. © 2016 IBM Corporation30
Performanceによる計測
レコメンドをサイクルさせる為の一つの例
Personality to Item
Other Recommendation
Item1
Item2
Item3
Item4
Item5
View
Click rate,.etc
merge
feedback
merge rate
- 31. © 2016 IBM Corporation31
InterpretableとDataScientist
自前の分析
Watsonの分析data
data
説明できない
説明可能
• 説明性は誰が担保するのか?
Interpretable
自社のデータ
Data Scientist
LOB
Report
- 32. © 2016 IBM Corporation32
今後Cognitive/AI時代の課題
• 従来、重要であった事
• 知っている事の確認
• 経験則から導き出されていたいわゆる業界知識や暗黙知の可視化
• 現在の状態の数値的な裏付け
• 人が理解出来る新しい知見
• 現在の主流
• ナゼが説明可能、ドノが説明可能
• 判別・検証が可能である
• 今後、どのように付き合うのか?
• 人が理解できない新しい知見
• ナゼドノが説明できない
• 判別・検証が出来ない(難しい)
- 33. © 2016 IBM Corporation33
まとめ
Watsonは色々な事ができる
自社のデータとソーシャルデータを組み合わせる事で新たな企業価値を作る
事が可能
Cognitiveをうまく使う事で小さなコストと短い時間で価値抽出が可能となる
説明性について注意が必要
人が理解できない結果についてどのように信頼関係を結ぶかは今後の課題
- 35. © 2016 IBM Corporation35
ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報提供の目的のみで提供されており、いかなる参加者
に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結果を生むものでもありません。本講演資料に含まれている情報については、完全性と正確性を期するよう努力し
ましたが、「現状のまま」提供され、明示または暗示にかかわらずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使用によって、あるいはその他の関連によって、いかなる損
害が生じた場合も、IBMは責任を負わないものとします。 本講演資料に含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかなる保証または表明を引きだすことを意図した
ものでも、IBMソフトウェアの使用を規定する適用ライセンス契約の条項を変更することを意図したものでもなく、またそのような結果を生むものでもありません。
本講演資料でIBM製品、プログラム、またはサービスに言及していても、IBMが営業活動を行っているすべての国でそれらが使用可能であることを暗示するものではありません。本講演資料で言及して
いる製品リリース日付や製品機能は、市場機会またはその他の要因に基づいてIBM独自の決定権をもっていつでも変更できるものとし、いかなる方法においても将来の製品または機能が使用可能に
なると確約することを意図したものではありません。本講演資料に含まれている内容は、参加者が開始する活動によって特定の販売、売上高の向上、またはその他の結果が生じると述べる、または暗
示することを意図したものでも、またそのような結果を生むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使用した測定と予測に基づいています。ユー
ザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入出力構成、ストレージ構成、および処理されるワークロードなどの考慮事
項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここで述べられているものと同様の結果を得られると確約するものではありません。
記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、またそれらのお客様が達成した結果の実例として示されたものです。実際の環境コストおよびパフォーマ
ンス特性は、お客様ごとに異なる場合があります。
IBM、IBM ロゴ、ibm.com、[以下当該情報に関連し商標リスト中に掲載されたIBMブランドやIBMの製品名称があれば追加する]は、 世界の多くの国で登録されたInternational Business Machines
Corporationの商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、
www.ibm.com/legal/copytrade.shtmlをご覧ください。
Adobe, Adobeロゴ, PostScript, PostScriptロゴは、Adobe Systems Incorporatedの米国およびその他の国における登録商標または商標です。
IT Infrastructure LibraryはAXELOS Limitedの登録商標です。
インテル, Intel, Intelロゴ, Intel Inside, Intel Insideロゴ, Centrino, Intel Centrinoロゴ, Celeron, Xeon, Intel SpeedStep, Itanium, およびPentium は Intel Corporationまたは子会社の米国およびそ
の他の国における商標または登録商標です。
Linuxは、Linus Torvaldsの米国およびその他の国における登録商標です。
PowerLinux is a trademark of International Business Machines Corp. The registered trademark Linux is used pursuant to a sublicense from LMI, the exclusive licensee of Linus Torvalds,
owner of the mark on a world-wide basis.
Microsoft, Windows, Windows NT および Windowsロゴは Microsoft Corporationの米国およびその他の国における商標です。
ITILはAXELOS Limitedの登録商標です。
UNIXはThe Open Groupの米国およびその他の国における登録商標です。
Cell Broadband Engineは、Sony Computer Entertainment, Inc.の米国およびその他の国における商標であり、同社の許諾を受けて使用しています。
JavaおよびすべてのJava関連の商標およびロゴは Oracleやその関連会社の米国およびその他の国における商標または登録商標です。
Linear Tape-Open, LTO, LTOロゴ, UltriumおよびUltriumロゴは、HP, IBM Corp.およびQuantumの米国およびその他の国における商標です。
Editor's Notes
- 1
- 会社ではSparkとHadoopのスペシャリストやってます。
- 普段1ミリも製品の話しをしませんが、今日は珍しくIBMの製品と絡めた話しをします。
- まずWatsonの前提知識を2ページで
- 渡辺謙とwatsonが話しても企業は1円も売り上げが上がりません。
- 事業者ではないので特にベースとなるデータを持っていません。そこで、Web上に散在する映画にまつわる情報を収集しMasterデータとしております。通常皆様におかれましては自社のDBなどに保持されているデータになります。
- 今日は映画をサンプルに作ってみましたが、例えば口コミ系、マッチングアプリ系でも利用できそうですね。
- 今回のレコメンドは何が良いのでしょうか?
ログではなくユーザーの表現からのレコメンド
- ・今回、日本語の評価ー>Personalityー>レコメンドと間にPersonalityを挟むことで、他言語のユーザーを扱える
・パーソナリティと映画評価の関連を取る事で、どう言った内容(アクション・ホラー(ゾンビ))がその地域(国)で受けるのか?
を過去のデータを元に分析が可能です。何を誰に押すのか?といった部分(経験的に推測可能な部分の数値的な裏付け)
- Cognitiveと機会学習(データサイエンティスト)の棲みわけです。
Personality Insightsを自社で用意するコストを考えてみます。
- 説明できないというのは、機会学習触られている皆さんはピンとくると思いますが、
どのパラメータがどのように働いたかがわかりません。
この問題にどのように付き合っていくべきでしょうか?
観点として今日は2つ着目します。
なぜ機会学習が必要なのか?
ー> データから知見を得、我々が理解する事
ー> データを元により高い精度を得る
- 結果が出ればOKであるという事業目線
- 説明性が重要なケース
例えばキャンペーンの対象ユーザーの抽出について考えて見ると
・なぜこのユーザーグループキャンペーンを当てるの?
・Watsonがそう言ったから・・・・・
ここで何を説明性とするのか?
・他のクラスタを反映していないか?
・これは難しい問題