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.

機械学習を始めるための第一歩

1,246 views

Published on

機械学習を始めるための第一歩 /LINE Fukuoka株式会社 立石賢吾(tkengo)
LINE Developer Meetup in Kyoto #21での発表資料です
https://line.connpass.com/event/67044/

Published in: Technology
  • Be the first to comment

  • Be the first to like this

機械学習を始めるための第一歩

  1. 1. 機械学習を始めるための 第一歩 @tkengo 2017.10.20 LINE Developer MeetUp in Tokyo #21
  2. 2. 自己紹介 立石 賢吾 LINE Fukuoka 株式会社 データ分析チーム所属 KENGO TATEISHI
  3. 3. 機械学習を始めるための第一歩 アジェンダ • 機械学習をはじめる • 機械学習を理解する • 機械学習を実装する • まとめ
  4. 4. 機械学習をはじめる 機械学習をはじめる
  5. 5. 機械学習のイメージ 機械学習をはじめる
  6. 6. 機械学習のイメージ プログラマが考える機械学習 • 数学必須? • 難しそう? • 人工知能? 数学 ムズすぎ 理論 わからん 遠い世界 機械学習をはじめる
  7. 7. 機械学習のイメージ プログラマが考える機械学習 • 数学必須? • 難しそう? • 人工知能? 理論 わからん 遠い世界 数学 ムズすぎ というイメージを捨てます 機械学習をはじめる
  8. 8. 機械学習を始めるために まずは理解できる楽しさを知ろう! • いきなり難しい理論は誰だって無理 • 一昔前に比べて豊富な入門者向けリソース • 連載記事、オンラインコース、書籍、etc 機械学習をはじめる
  9. 9. 機械学習を理解する 機械学習を理解する
  10. 10. 機械学習を理解する 機械学習ってすごい? → すごい 機械学習を理解するために 機械学習ってなんでもできる? → なんでもはできない
  11. 11. 機械学習を理解する 機械学習を理解するために 機械学習の本質 • 「すごいけどなんでもはできない」 • 人工知能 ≠ 機械学習 • 人間には発見が難しいパターン(ルール)を発見するのが仕事
  12. 12. 機械学習の本質 • 「すごいけどなんでもはできない」 • 人工知能 ≠ 機械学習 • 人間には発見が難しいパターン(ルール)を発見するのが仕事 機械学習を理解する 機械学習を理解するために パターン(ルール)の発見とは
  13. 13. 機械学習を理解する パターン(ルール)の発見 最も単純な例題 • たとえば広告費とクリック数の関係 • 広告費が増える程クリック数も増加 • 広告費とクリック数をプロットした図 • ここにはどういうパターンが存在する? ク リ ッ ク 数 広告費
  14. 14. 広告費とクリック数の関係性を考える • 広告費を50円増やすとクリック数は 機械学習を理解する パターン(ルール)の発見 ク リ ッ ク 数 広告費 どれくらい増える? +50円
  15. 15. 10,000回の広告クリック 広告費とクリック数の関係性を考える • 10,000回のクリック数をかせぐには 機械学習を理解する パターン(ルール)の発見 ク リ ッ ク 数 広告費 いくら広告費をかければ良い?
  16. 16. 広告費とクリック数の関係を定式化 • 傾きと切片をもつ一次関数を想像 • • この  と が関係性を示すパターン • この  と をデータから導き出す 機械学習を理解する パターン(ルール)の発見 x y y = ax + b a b a b
  17. 17. パターンからの予測 • もし           だったら 機械学習を理解する パターン(ルール)の発見 x ya = 100, b = 1000 y = 100x + 1000
  18. 18. パターンからの予測 • 広告費を50円増やすとクリック数は 機械学習を理解する パターン(ルール)の発見 どれくらい増える? → クリック数は約5,000回増える x y
  19. 19. パターンからの予測 • 10,000回のクリック数をかせぐには 機械学習を理解する パターン(ルール)の発見 いくら広告費をかければ良い? → 約90円の広告費をかければ達成 x y
  20. 20. 機械学習を理解する パターン(ルール)の発見 機械学習の本質 • パターン(ルール) = 未知のパラメータ (  や などの未知数) • 現実問題に応用する場合はパラメータ数がとても多い。重みと言う場合もある。 • データから未知のパラメータを探索 • 発見されたパラメータによる予測/推測 a b
  21. 21. 機械学習を理解する パターン(ルール)の発見 機械学習の本質 • パターン(ルール) = 未知のパラメータ (  や などの未知数) • 現実問題に応用する場合はパラメータ数がとても多い • データから未知のパラメータの探索 • 発見されたパラメータによる予測/推測 a b これがイメージできる ようになることが大事
  22. 22. 機械学習を理解する パターン(ルール)の発見 機械学習の本質 • このような未知のパラメータを探す手法を理解するために数学知識が必要 • 数学的背景に目が向くことは多いが本質も理解する • その上で…
  23. 23. 理論を理解する 冒頭に紹介した本書では先に話したような内容を 皮切りに、機械学習の理解に必要な数学の知識を やさしく解説しています。 機械学習を理解する 最小二乗法、勾配降下法、尤度関数、正則化など…
  24. 24. 機械学習を実装する 機械学習を実装する
  25. 25. 実装までの道のり 理論を理解した次のステップ → 実際に機械学習を使い始めてみる • 何に適用すれば? • どう応用すれば? 機械学習を実装する
  26. 26. 理論と実装のギャップ • 実際は勾配法や正則化の実装などしない • from sklearn import linear_model • この1行に先人たちが実装してきたいろんな理論が詰め込まれている • 理論解説には登場しなかった多くの前処理 • 欠損値処理、異常値除去、正規化、白色化、など… 機械学習を実装する 実装までの道のり
  27. 27. 理論と実装のギャップ • だいたい一発ではうまくいかない • おもってたんと違う • アルゴリズム、素性、ハイパーパラメータの選定 • バリデーションデータの概念 • 実験、改善の繰り返し 機械学習を実装する 実装までの道のり
  28. 28. 理論と実装のギャップ • 理論だけ学んでも知らないことはいっぱい テスト コード レビュー デプロイ 運用 学習データ 管理 ドキュメント 整備 機械学習を実装する 実装までの道のり
  29. 29. 手を動かして学ぶ • 座学だけでなんとかなるほど世の中は甘くない • 公開されたデータセットでの練習 → 実データへの応用 • 最初から数百万件規模の大量のデータを目指す必要はない • 実運用中のDBから適当にデータを抜いて試すのもOK 機械学習を実装する 実装までの道のり
  30. 30. 知識のインプットを止めない • なるべく多くの例題や手法に触れる • 手を動かしていくうちにわからないことが出てきてまた調べる • 継続的な知識のインプット 機械学習を実装する 実装までの道のり
  31. 31. まとめ まとめ
  32. 32. まとめ プログラミングはじめたての頃の想い出 • 仕組みを理解できた時の楽しさ • プログラムが動いた時の楽しさ • 勉強を継続できたモチベーションは? → 楽しい 機械学習を始めるための第一歩
  33. 33. 機械学習を始めるための第一歩 理解できる楽しさを知る → 機械学習のイメージを掴む 実装できる楽しさを知る → 手を動かして練習する まとめ 環境は既に整っている
  34. 34. 機械学習を始めるための第一歩 まとめ 理論 実践(わかる|できる)楽しさを知る
  35. 35. 機械学習を始めるための第一歩 まとめ 理論 実践どちらも大事
  36. 36. 機械学習を始めるための第一歩 まとめ 理論 実践どちらから始めますか?
  37. 37. We’re hiring まとめ https://linecorp.com/ja/career/kyoto 京都オフィスエンジニア募集中 一緒に働きませんか? 最新の採用情報をチェック →

×