Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Machine Learning As Software
Search
TajimaTheMemer
January 23, 2019
Programming
120
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Machine Learning As Software
TajimaTheMemer
January 23, 2019
More Decks by TajimaTheMemer
See All by TajimaTheMemer
事業成長を加速させるGoのコード品質改善の取り組み / Code quality improvement for Go language
tajimathememer
5
3.1k
CronJobがschedule通りにJobを生成しない時
tajimathememer
0
1.6k
入門wasm
tajimathememer
0
170
ふわっと理解する類似画像検索技術
tajimathememer
0
180
Other Decks in Programming
See All in Programming
GemmaをJevのように使ってみる / Use Gemma like Jev
kishida
5
670
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
450
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
320
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
残高管理から台帳サービスへの進化
artoy
0
140
phperだってパンチカードでコーディングしたい
o0h
PRO
0
200
setup-vp GitLab対応の裏側
naokihaba
0
150
The Rails Doctrine Decade
koic
2
490
Workers Cache を知る
syumai
0
330
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
270
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
350
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.4k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
710
BBQ
matthewcrist
89
10k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
260
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
700
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
910
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
710
Transcript
Machine Learning As Software Makuake 社内 LT 2019/01/23 Tajima Taichi
今日話さないこと 機械学習の具体的な手法・アルゴリズムの説明 ※一般のソフトウェア開発者向けのお話です。
今日伝えたいこと 機械学習≠AI というよりも...
今日伝えたいこと 機械学習≒ソフトウェアの可能性を拡張する技術 と捉えるほうが適切という話(※私見)
機械学習とは データから目的の関数を生成する技術 ※全ての手法が、というわけではない。
例えば... AlphaGo(ゲームAI) 関数(機械学習モデル) 囲碁の盤面 最も勝率の高い 次の一手 シミュレータ環境上の打ち手データを使って...
例えば... Siri(音声認識) 関数(機械学習モデル) 音声波形 テキスト 音声とテキストのペアデータを使って...
例えば... Google翻訳(機械翻訳) 関数(機械学習モデル) 英語 日本語 日英の対訳データを使って...
例えば... Amazonの商品推薦(レコメンデーション) 関数(機械学習モデル) 行動、購買、 商品... ユーザーが 欲しがる商品 行動、購買、商品...データを使って...
近年、機械学習技術(特にDeep Learning)の進歩により 人手のコーディングでは表現が難しかった関数を データから生成することができるようになった
ソフトウェアとは 関数の集まり 機械学習とは データから目的の関数を生成する技術
機械学習≒ソフトウェアの可能性を拡張する技術
ここまでが今日伝えたかったこと
ここからは偉い人の話 (権威を笠に着る)
Software 2.0 Andrej Karpathy氏 (Director of AI at Tesla) によるエッセイ(2017年11月)
Software 1.0 人間がプログラミング言語で振る舞いを記述する 従来のソフトウェア開発 Software 2.0 ニューラルネット(Deep Learning)の重みパラメータで記述 される コーディングに人間が介在しない
なぜSoftware 2.0が重要か 現実世界の課題の大部分はプログラムを明示的に書くよりもデー タを収集するほうがずっと容易だから(ということらしい)
Software 2.0 例えば... 昔の Google翻訳は50万行のコードと多くのミドルウェア、 パイプラインなどで構成された大規模で複雑なソフトウェア (Software 1.0)
Software 2.0 現在の Google翻訳は500行のPythonコードとニューラル ネットの重みパラメータ(数百万)のファイルのみで構成され たソフトウェア(Software 2.0)
Software 2.0の良いところ① 均質な計算処理 Computationally homogeneous
Software 2.0の良いところ② チップに埋め込みやすい Simple to bake into silicon
Software 2.0の良いところ③ 実行時間が一定 Constant running time
Software 2.0の良いところ④ メモリ使用量も一定 Constant Memory Use
Software 2.0の良いところ⑤ 移植性が高い It is highly portable
Software 2.0の良いところ⑥ アジャイル It is very agile
Software 2.0の良いところ⑦ モジュール性 Modules can meld into an optimal whole
Software 2.0の良いところ⑧ お前らの書くコードより良い It is better than you
ただし、Software 2.0はSoftware1.0を 全て置き換えるものではない しかし、Software 2.0の適応範囲をますます広がっている
Software 2.0の記事から遡ること4ヶ月...
The future of deep learning Francois Chollet AI研究者, Keras(AIの民主化)の開発者 @Google
によるエッセイ(2017年7月)
The future of deep learning Software 2.0以降のソフトウェア開発の 具体的な素描 “Models As
Programs”
The future of deep learning Algorithmic subroutine: Software 1.0 Geometric
subroutine: Software 2.0 これからのソフトウェア開発
The future of deep learning もっと先の未来のソフトウェア開発 →自動化が進む
Machine Learning As Software時代の開発ツール Tensorflow Hub 学習済みの機械学習モデルのモジュールを共有するプラットフォーム Comet ML 機械学習モデルのバージョン管理・チーム開発ツール
Google Dataset Search データセット専用の検索エンジン
まとめ 機械学習という技術を適切に捉え、 適切に使っていきましょう。 (使わないという選択をする上でも大事。)