webエンジニアが機械学習とか難しいアルゴリズムを理解するとっかかり.pdf

 webエンジニアが機械学習とか難しいアルゴリズムを理解するとっかかり.pdf

E14df652e38ac4d1dd59590dd76ad5f1?s=128

Tomoaki Takamatsu

March 22, 2018
Tweet

Transcript

  1. web エンジニアが機械学習とか難しい web エンジニアが機械学習とか難しい web エンジニアが機械学習とか難しい web エンジニアが機械学習とか難しい web エンジニアが機械学習とか難しい

    web エンジニアが機械学習とか難しい アルゴリズムを理解するとっかかり アルゴリズムを理解するとっかかり アルゴリズムを理解するとっかかり アルゴリズムを理解するとっかかり アルゴリズムを理解するとっかかり アルゴリズムを理解するとっかかり - Housmart Inc. 高松智明 - - Housmart Inc. 高松智明 - - Housmart Inc. 高松智明 - - Housmart Inc. 高松智明 - - Housmart Inc. 高松智明 - - Housmart Inc. 高松智明 - 1 / 21
  2. ※ ざっくりした話です ※ ざっくりした話です ※ ざっくりした話です ※ ざっくりした話です ※ ざっくりした話です

    ※ ざっくりした話です 2 / 21
  3. Web エンジニアの人? Web エンジニアの人? Web エンジニアの人? Web エンジニアの人? Web エンジニアの人?

    Web エンジニアの人? 機械学習とかのアルゴリズム得意だよ 機械学習とかのアルゴリズム得意だよ 機械学習とかのアルゴリズム得意だよ 機械学習とかのアルゴリズム得意だよ 機械学習とかのアルゴリズム得意だよ 機械学習とかのアルゴリズム得意だよ って人? って人? って人? って人? って人? って人? 3 / 21
  4. モチベーション モチベーション モチベーション モチベーション モチベーション モチベーション ディープラーニングとか機械学習とか流行ってる ディープラーニングとか機械学習とか流行ってる ディープラーニングとか機械学習とか流行ってる ディープラーニングとか機械学習とか流行ってる

    ディープラーニングとか機械学習とか流行ってる ディープラーニングとか機械学習とか流行ってる Web エンジニアから飛び越えてくる人少なくて寂しい Web エンジニアから飛び越えてくる人少なくて寂しい Web エンジニアから飛び越えてくる人少なくて寂しい Web エンジニアから飛び越えてくる人少なくて寂しい Web エンジニアから飛び越えてくる人少なくて寂しい Web エンジニアから飛び越えてくる人少なくて寂しい やってみようと思ってもらいたい やってみようと思ってもらいたい やってみようと思ってもらいたい やってみようと思ってもらいたい やってみようと思ってもらいたい やってみようと思ってもらいたい これを言える場は意外と無い これを言える場は意外と無い これを言える場は意外と無い これを言える場は意外と無い これを言える場は意外と無い これを言える場は意外と無い                         4 / 21
  5. 出来るようになること 出来るようになること 出来るようになること 出来るようになること 出来るようになること 出来るようになること アルゴリズムがわかると... アルゴリズムがわかると... アルゴリズムがわかると... アルゴリズムがわかると...

    アルゴリズムがわかると... アルゴリズムがわかると... 機械学習・ディープラーニング 機械学習・ディープラーニング 機械学習・ディープラーニング 機械学習・ディープラーニング 機械学習・ディープラーニング 機械学習・ディープラーニング 画像や文章の分類 画像や文章の分類 画像や文章の分類 画像や文章の分類 画像や文章の分類 画像や文章の分類 似ている画像とか似ている文章を出したり 似ている画像とか似ている文章を出したり 似ている画像とか似ている文章を出したり 似ている画像とか似ている文章を出したり 似ている画像とか似ている文章を出したり 似ている画像とか似ている文章を出したり レコメンデーション レコメンデーション レコメンデーション レコメンデーション レコメンデーション レコメンデーション 検索エンジン 検索エンジン 検索エンジン 検索エンジン 検索エンジン 検索エンジン こんなことができるようになる こんなことができるようになる こんなことができるようになる こんなことができるようになる こんなことができるようになる こんなことができるようになる                               5 / 21
  6. アルゴリズムわかる様になりたい! アルゴリズムわかる様になりたい! アルゴリズムわかる様になりたい! アルゴリズムわかる様になりたい! アルゴリズムわかる様になりたい! アルゴリズムわかる様になりたい! 6 / 21

  7. でも、難しそう でも、難しそう でも、難しそう でも、難しそう でも、難しそう でも、難しそう 7 / 21

  8. どうするか? どうするか? どうするか? どうするか? どうするか? どうするか? 8 / 21

  9. なぜ難しいか?を知る なぜ難しいか?を知る なぜ難しいか?を知る なぜ難しいか?を知る なぜ難しいか?を知る なぜ難しいか?を知る 9 / 21

  10. なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか 数学 数学 数学 数学

    数学 数学 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く                               10 / 21
  11. なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか 数学 数学 数学 数学

    数学 数学 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ← これは今日は話しません ← これは今日は話しません ← これは今日は話しません ← これは今日は話しません ← これは今日は話しません ← これは今日は話しません 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く                               11 / 21
  12. なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか なぜ難しいか 数学 数学 数学 数学

    数学 数学 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 ベクトル、線形代数 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 勉強する範囲が広い 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない 全体像がわからない ← 今日はここを考えます ← 今日はここを考えます ← 今日はここを考えます ← 今日はここを考えます ← 今日はここを考えます ← 今日はここを考えます よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く よくわからないけど延々と理論の話が続く                               12 / 21
  13. そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは アルゴリズム = モデル化 +

    損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 13 / 21
  14. そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは アルゴリズム = モデル化 +

    損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く             14 / 21
  15. そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは そもそもアルゴリズムとは アルゴリズム = モデル化 +

    損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 アルゴリズム = モデル化 + 損失関数 + 最適化 モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする モデル化 : アイデアを式にする 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く 損失関数 + 最適化 : 式を解く ← まず、ここ ← まず、ここ ← まず、ここ ← まず、ここ ← まず、ここ ← まず、ここ             15 / 21
  16. 式を解く 式を解く 式を解く 式を解く 式を解く 式を解く 式を解く方法は2 つ 式を解く方法は2 つ

    式を解く方法は2 つ 式を解く方法は2 つ 式を解く方法は2 つ 式を解く方法は2 つ 解析的に解く 解析的に解く 解析的に解く 解析的に解く 解析的に解く 解析的に解く 式を変形して紙と鉛筆で解く 式を変形して紙と鉛筆で解く 式を変形して紙と鉛筆で解く 式を変形して紙と鉛筆で解く 式を変形して紙と鉛筆で解く 式を変形して紙と鉛筆で解く 1 x 20 = ? 1 x 20 = ? 1 x 20 = ? 1 x 20 = ? 1 x 20 = ? 1 x 20 = ? 空気抵抗がない空間でのボールの軌道 空気抵抗がない空間でのボールの軌道 空気抵抗がない空間でのボールの軌道 空気抵抗がない空間でのボールの軌道 空気抵抗がない空間でのボールの軌道 空気抵抗がない空間でのボールの軌道 数値的に解く 数値的に解く 数値的に解く 数値的に解く 数値的に解く 数値的に解く 行列計算にしてコンピュータで解く 行列計算にしてコンピュータで解く 行列計算にしてコンピュータで解く 行列計算にしてコンピュータで解く 行列計算にしてコンピュータで解く 行列計算にしてコンピュータで解く 複雑な問題は全てこれ! 複雑な問題は全てこれ! 複雑な問題は全てこれ! 複雑な問題は全てこれ! 複雑な問題は全てこれ! 複雑な問題は全てこれ!                                                 16 / 21
  17. 式を解く 式を解く 式を解く 式を解く 式を解く 式を解く 数値的に式を解く方法は 数値的に式を解く方法は 数値的に式を解く方法は 数値的に式を解く方法は

    数値的に式を解く方法は 数値的に式を解く方法はどんなアルゴリズムでも同じ どんなアルゴリズムでも同じ どんなアルゴリズムでも同じ どんなアルゴリズムでも同じ どんなアルゴリズムでも同じ どんなアルゴリズムでも同じ(と考え (と考え (と考え (と考え (と考え (と考え て良い) て良い) て良い) て良い) て良い) て良い) 数学的にはここがすごい難しい 数学的にはここがすごい難しい 数学的にはここがすごい難しい 数学的にはここがすごい難しい 数学的にはここがすごい難しい 数学的にはここがすごい難しい 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて 頭がいい人がめっちゃ考えてくれてライブラリ化してくれて るからそれを使えば良い るからそれを使えば良い るからそれを使えば良い るからそれを使えば良い るからそれを使えば良い るからそれを使えば良い 最初から 最初から 最初から 最初から 最初から 最初から深追いする必要はない 深追いする必要はない 深追いする必要はない 深追いする必要はない 深追いする必要はない 深追いする必要はない ⇒ ⇒ ⇒ ⇒ ⇒ ⇒ とりあえず式を解く部分は考えなくてOK とりあえず式を解く部分は考えなくてOK とりあえず式を解く部分は考えなくてOK とりあえず式を解く部分は考えなくてOK とりあえず式を解く部分は考えなくてOK とりあえず式を解く部分は考えなくてOK                         17 / 21
  18. ということは ということは ということは ということは ということは ということは アルゴリズム = モデル化 アルゴリズム

    = モデル化 アルゴリズム = モデル化 アルゴリズム = モデル化 アルゴリズム = モデル化 アルゴリズム = モデル化 + 損失関数 + 最適化 + 損失関数 + 最適化 + 損失関数 + 最適化 + 損失関数 + 最適化 + 損失関数 + 最適化 + 損失関数 + 最適化 アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い             18 / 21
  19. 例えば... ディープラーニング 例えば... ディープラーニング 例えば... ディープラーニング 例えば... ディープラーニング 例えば... ディープラーニング

    例えば... ディープラーニング アイデア:人間の脳の生体モデルを式で表現したらすごいんじ アイデア:人間の脳の生体モデルを式で表現したらすごいんじ アイデア:人間の脳の生体モデルを式で表現したらすごいんじ アイデア:人間の脳の生体モデルを式で表現したらすごいんじ アイデア:人間の脳の生体モデルを式で表現したらすごいんじ アイデア:人間の脳の生体モデルを式で表現したらすごいんじ ゃね? ゃね? ゃね? ゃね? ゃね? ゃね? 生理学、認知科学の観点からも改良をしている 生理学、認知科学の観点からも改良をしている 生理学、認知科学の観点からも改良をしている 生理学、認知科学の観点からも改良をしている 生理学、認知科学の観点からも改良をしている 生理学、認知科学の観点からも改良をしている             19 / 21
  20. 例えば... レコメンデーション 例えば... レコメンデーション 例えば... レコメンデーション 例えば... レコメンデーション 例えば... レコメンデーション

    例えば... レコメンデーション 流行りの Matrix Factorization 流行りの Matrix Factorization 流行りの Matrix Factorization 流行りの Matrix Factorization 流行りの Matrix Factorization 流行りの Matrix Factorization アイデア:ユーザーのアイテムに対する行動から嗜好性を読み アイデア:ユーザーのアイテムに対する行動から嗜好性を読み アイデア:ユーザーのアイテムに対する行動から嗜好性を読み アイデア:ユーザーのアイテムに対する行動から嗜好性を読み アイデア:ユーザーのアイテムに対する行動から嗜好性を読み アイデア:ユーザーのアイテムに対する行動から嗜好性を読み 取る 取る 取る 取る 取る 取る 行列計算で嗜好性がわかる様に行列を圧縮する 行列計算で嗜好性がわかる様に行列を圧縮する 行列計算で嗜好性がわかる様に行列を圧縮する 行列計算で嗜好性がわかる様に行列を圧縮する 行列計算で嗜好性がわかる様に行列を圧縮する 行列計算で嗜好性がわかる様に行列を圧縮する                   20 / 21
  21. まとめ まとめ まとめ まとめ まとめ まとめ アルゴリズムが理解できると色々できる アルゴリズムが理解できると色々できる アルゴリズムが理解できると色々できる アルゴリズムが理解できると色々できる

    アルゴリズムが理解できると色々できる アルゴリズムが理解できると色々できる 全体像が掴めないから難しそうに感じる 全体像が掴めないから難しそうに感じる 全体像が掴めないから難しそうに感じる 全体像が掴めないから難しそうに感じる 全体像が掴めないから難しそうに感じる 全体像が掴めないから難しそうに感じる アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 アルゴリズムとは、問題を式にして(モデル)、解く(損失関数 + 最適化)ことである + 最適化)ことである + 最適化)ことである + 最適化)ことである + 最適化)ことである + 最適化)ことである 解くところは考えなくて良い 解くところは考えなくて良い 解くところは考えなくて良い 解くところは考えなくて良い 解くところは考えなくて良い 解くところは考えなくて良い アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! アイデアを式にするところだけ考えれば良いよ! モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い モデル化は知ってみると面白い                                     21 / 21