• Like
  • Save
機械学習チュートリアル@Jubatus Casual Talks
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

機械学習チュートリアル@Jubatus Casual Talks

  • 43,569 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
43,569
On Slideshare
0
From Embeds
0
Number of Embeds
37

Actions

Shares
Downloads
0
Comments
0
Likes
128

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. 機械学習チュートリアル株式会社Preferred Infrastructure海野  裕也 (@unnonouno)2013/06/02Jubatus Casual Talks #1
  • 2. ⾃自⼰己紹介l  海野  裕也 (@unnonouno)l  プリファードインフラストラクチャーl  情報検索索、レコメンドl  機械学習・データ解析研究開発l  Jubatusl  分散オンライン機械学習フレームワークl  専⾨門l  ⾃自然⾔言語処理理l  テキストマイニング2
  • 3. Googleトレンドの、このグラフは何でしょう?3 2011年年 2013年年
  • 4. Googleトレンドの、このグラフは何でしょう?4 ビッグデータ
  • 5. ⼀一⽅方の分析技術系キーワードは・・・データは貯めるけど分析できない・・・???5
  • 6. ところで、機械学習は・・・6
  • 7. 概要本チュートリアルではデータを解析して判断に活かすための技術、機械学習を説明しますl  機械学習ってどこで使われてるの?l  機械学習が得意・不不得意な条件って?l  機械学習って裏裏で何してるの?7
  • 8. 注意l  初めて機械学習を聞いた⼈人向けですl  数式を使いませんl  分散の話はしませんl  ガチな⼈人は寝てて下さい8
  • 9. 機械学習って何?9
  • 10. 機械学習とはl  経験(データ)によって賢くなるアルゴリズムの研究l  データから知識識・ルールを⾃自動獲得するl  データの適切切な表現⽅方法も獲得するl  ⼈人⼯工知能の中で、⼈人が知識識やルールを明⽰示的に与える⽅方法の限界から⽣生まれてきた10学習データ分類モデル
  • 11. 例例1:スパム判定l  メールがスパムが否かを⾃自動判定するl  GoogleのGmailでもスパム判定は機械学習が使われている11 スパム 通常 新着メール
  • 12. 例例2:商品推薦l  過去の購買履履歴から類似ユーザーを探して、未購⼊入の商品を推薦する12 購買履履歴
  • 13. 例例3:コンピュータ将棋・囲碁・チェス13 http://blog.livedoor.jp/yss_fpga/archives/53897129.html詳細は鶴岡慶雅先生のチュートリアル 「自然言語処理とAI」 l  ゲームごとに機械学習の応⽤用⼿手法が次々に進歩l  機械の性能改善以上に⼿手法の改善が⽬目覚ましい強い 弱い
  • 14. 様々な分野に適⽤用可能l  データから有⽤用な規則、ルール、知識識、判断基準を抽出l  データがあるところならば、どこでも使えるl  様々な分野の問題に利利⽤用可能14レコメンデーションクラスタリング分類、識識別 市場予測 評判分析情報抽出 ⽂文字認識識 ロボット 画像解析遺伝⼦子分析検索索ランキング⾦金金融 医療療診断適用分野
  • 15. ⼈人に⽐比べて機械学習のここがいい!l  ⼤大量量l  ⼤大量量に処理理できるl  機械を並べればいくらでもスケールするl  ⾼高速l  ⼈人間の反応速度度を超えることができるl  ⾼高精度度l  場合によっては⼈人間を凌凌駕するようになってきたl  ⼈人と違って判断がブレない、疲れない15
  • 16. 機械学習を活かすポイント量量と速度度が圧倒的なポイントl  量量l  ⼤大量量のデータが有って⼈人⼿手で処理理できないl  情報源が多様すぎて⼈人間では⼿手に負えないl  速度度l  ⼈人間よりも圧倒的に⾼高速に反応できるl  反応速度度が重要な領領域で価値が出る16 いずれも⼀一般的に機械が⼈人間より優っているポイント
  • 17. 機械学習が失敗するパターンl  できない精度度を求めるl  サイコロの次の⽬目を当てることはできないl  同じように、精度度の限界があるl  ⼈人にとって簡単なタスクをやろうとするl  少ない情報から推論論するのは⼈人間が得意l  逆に⼤大量量の情報から判断する必要がある時は機械が得意l  ボトルネックが別にあるl  アクションを取るのが⼈人だったり、⼈人が途中に介在するl  量量と速度度のメリットをいかに活かすか17
  • 18. 「機械にやらせるなら、ルールを書けばいいんじゃないの?」l  俗にルールベースと呼ばれる⽅方法l  最初は精度度が悪いが頑張れば意外とどこまでも良良くなる18 「ゴルフ」 à スポーツ「インテル」 à コンピュータ「選挙」  à 政治
  • 19. ルールに基づく判断の限界l  ⼈人⼿手で書いたルールはすぐ複雑、膨⼤大になるl  1万⾏行行のperlスクリプトl  どこを変えたらいいかわからないl  条件を追加したら何が起こるか・・・l  複雑化したルールは引き継げなくなる19 「ゴルフ」and「VW」  à  ⾞車車「インテル」and「⻑⾧長友」 à サッカー「選挙」and「AKB」 à 芸能
  • 20. ルールの管理理よりもデータの管理理を!l  ルールは必ず管理理できなくなるl  膨⼤大なルールl  妥当性がわからないl  この条件なんだっけ・・・?l  ⼤大事なのはデータ!l  データの正しさは⼈人間に判断できるl  間違えたら間違えたデータを教えれば良良いl  ルールは適⽤用できなくなるが、データは変わらないl  「スイカ」が「⻄西⽠瓜」から「Suica」になる⽇日・・・20
  • 21. データ管理理の発想はテスト駆動開発に近い?l  まずテストを⽤用意せよ、それを満たすルールを学習せよl  リファクタリング(ルールの書き換え)をしたくなってもデータがあれば安⼼心21 ⼊入⼒力力データ期待される結果テスト⼊入⼒力力期待される結果ルールプログラム
  • 22. まとめ:機械学習  vs ⼈人間  vs ルールl  機械学習は速度度、量量、精度度、メンテナンス性のバランスがとれているl  ⼈人間に⽐比べて・・l  量量と速度度に優るl  疲れない、ぶれない、スケールするl  ルールに⽐比べてl  精度度に優るl  メンテナンスできる、引き継げる、データの変化に強い22
  • 23. 機械学習って何してるの?23
  • 24. 機械学習の世界の分類l  問題設定に基づく分類l  教師有学習  / 教師無学習  / 半教師有学習 / 強化学習  など ..l  戦うドメインの違いl  特徴設計屋(各ドメイン毎に, NLP, Image, Bio, Music)l  学習アルゴリズム屋(SVM, xx Bayes, CW, …)l  理理論論屋(統計的学習理理論論、経験過程、Regret最⼩小化)l  最適化実装屋l  好みの違いl  Bayesian / Frequentist / Connectionistl  [Non-|Semi-]Parametric24 この⼆二つの問題設定だけは知っておいてほしいので説明
  • 25. 教師有り学習l  ⼊入⼒力力  x に対して期待される出⼒力力  y を教えるl  分析時には未知の  x に対応する  y を予測するl  分類l  y がカテゴリの場合l  スパム判定、記事分類、属性推定、etc.l  回帰l  y が実数値の場合l  電⼒力力消費予測、年年収予測、株価予測、etc.25 x y
  • 26. 教師無し学習l  ⼊入⼒力力  x をたくさん与えると、⼊入⼒力力情報⾃自体の性質に関して何かしらの結果を返すl  クラスタリングl  与えられたデータをまとめあげるl  異異常検知l  ⼊入⼒力力データが異異常かどうかを判定する26 x
  • 27. 安易易に教師なし学習に⾶飛びつかない!l  どのような分類基準になるか予測できないl  結果の意味を解釈するのが難しい27 問:下の図形を2つのクラスタに分けなさい
  • 28. 教師有り学習と教師無し学習は⽬目的が違う教師有り学習l  ⼊入出⼒力力の対応関係を学んで、未知の⼊入⼒力力に対して判断するl  ⼊入⼒力力と出⼒力力を教える必要があるl  ⼀一番シンプルな問題設定で汎⽤用性が⾼高い教師無し学習l  データ集合⾃自体の特徴を学習するl  データをとにかく⼊入れれば、すぐ動くl  制御が難しく実⽤用上は⼤大変l  教師あり学習の前処理理としても使われる28 こっちだけ詳しく説明します
  • 29. 教師あり学習には推定と学習のフェーズが有る推定するとき 学習するとき29 短髪Tシャツチノパン予想:男性⻑⾧長髪Tシャツチノパン学習データ 男性次は当てよう推定対象
  • 30. 線形分類器の推定は重み付き多数決のイメージl  ⼊入⼒力力データの特徴に応じて票を⼊入れていくl  最多得票のカテゴリーに分類する30 特徴 男性 ⼥女女性⻑⾧長髪 +3短髪 +2Tシャツ +1ブラウス +2ジーンズ +2スカート +5チノパン +3短髪Tシャツチノパン予想:男性推定対象 内部に表がある
  • 31. 学習のステップ  1/3l  どれが重要かわからないので、全ての重みを更更新するl  結果的に、このデータは正しく予想できるようになる31 特徴 男性 ⼥女女性⻑⾧長髪 0 à +1短髪Tシャツ 0 à +1ブラウスジーンズスカートチノパン 0 à +1⻑⾧長髪Tシャツチノパン学習データ 男性初期値は全部0
  • 32. 学習のステップ  2/4l  間違えるたびに正しく分類できるように更更新32 特徴 男性 ⼥女女性⻑⾧長髪 +1 à 0短髪Tシャツ +1ブラウス 0 à +1ジーンズスカート 0 à +1チノパン +1⻑⾧長髪ブラウススカート学習データ ⼥女女性
  • 33. 学習のステップ 3/4l  何度度も更更新する33 特徴 男性 ⼥女女性⻑⾧長髪 0 à +1短髪Tシャツ +1 à 0ブラウス +1ジーンズスカート +1 à +2チノパン +1⻑⾧長髪Tシャツスカート学習データ ⼥女女性
  • 34. 学習のステップ 4/4l  最終的にうまく分類できるところで落落ち着くl  縦が数万〜~数百万になり、⼈人が全部調整するのは不不可能34 特徴 男性 ⼥女女性⻑⾧長髪 +3短髪 +2Tシャツ +1ブラウス +2ジーンズ +2スカート +5チノパン +3できた!
  • 35. 機械学習を更更に発展させるl  より効率率率よく更更新するl  オンライン学習l  アンサンブル学習l  より⼤大規模なデータを利利⽤用するl  分散して学習l  半教師有り学習l  より複雑な特徴を利利⽤用するl  深層学習l  カーネル法35 Jubatusは、特にオンライン学習と分散処理理に注⼒力力
  • 36. まとめ:機械学習の仕組みl  ⼀一⼝口に機械学習といっても⾊色々l  ⼊入出⼒力力、設定、⽬目標、好き嫌い、様々l  教師ありなしl  あり:⼊入出⼒力力関係を学習するl  なし:データの性質を学習するl  線形分類器は重み付き多数決36
  • 37. 機械学習の本領領が発揮されるのはこれから・・・l  機械やモノ同⼠士が情報のやり取りを⾏行行う世界観がどんどん提唱されているl  データに基づく意思決定ではなく、データに基づいて機械がアクションを起こす必要がある37
  • 38. l  NTT  SIC*とPreferred  Infrastructureによる共同開発l  2011年年10⽉月よりOSSで公開  http://jubat.us/Jubatus38リアルタイム  ストリーム 分散並列列 深い解析*  NTT研究所  サイバーコミュニケーション研究所  ソフトウェアイノベーションセンタ
  • 39. 「緩いモデル共有」による分散の仕組みl  みんな個別に⾃自学⾃自習l  たまに勉強会で情報交換l  ⼀一⼈人で勉強するより効率率率がいいはず!39 学習器オンライン学習分散処理理
  • 40. Jubatusの分散学習の仕組みはまた今度度!40
  • 41. ご清聴ありがとうございました41