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
機械学習について
Search
Rintaro Fukui
May 20, 2024
90
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
機械学習について
Rintaro Fukui
May 20, 2024
Featured
See All Featured
Paper Plane
katiecoart
PRO
5
54k
Building the Perfect Custom Keyboard
takai
2
910
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
280
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.8k
Discover your Explorer Soul
emna__ayadi
2
1.3k
Designing for humans not robots
tammielis
254
26k
Embracing the Ebb and Flow
colly
88
5.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Transcript
機械学習 Rintaro Fukui
今日話すこと • 学習とは何か • 実際にどうやって学習しているのか?
背景・モチベーション 機械学習について学ぶ前に その基本的な考え方を整理する
学習とは
学習とは こんなデータが得られたとする
学習とは 散布図で表してみた。以下のような考察 ができそう。 気温が高いとビールの売上も増えている ➔ 予想気温に応じて入荷量を決めると 過剰在庫を減らせるのでは? ➔ 気温が高い日に広告を打つと効果的 なのでは?
学習とは データはそのままでは価値を発揮しない ↓ データからなんらかの法則を見出す必要がある
学習とは • データを要約する • データについて説明する • 未知のデータに対して予測する
数理モデル: ある入力に対してなんらかの値を出力するもの(=関数) (本当はもっと広い意味を持つ) 学習とは 数理モデル 入力 出力
数理モデル: ある入力に対してなんらかの値を出力するもの(=関数) 機械学習モデル: いい感じの法則を見つけて適切な出力を得る 学習とは 機械学習モデル 入力 出力 適切な
学習とは 機械学習: 目的に沿った適切な出力が可能な関数を得ること
回帰問題
回帰問題 次の問題について考えてみる あなたはコンビニエンスストアの店長です。 入荷量を最適化して過剰在庫を減らすために、過去の平均気温とビール の売上データから、将来のビールの売上を予測したい。 どうすれば良いだろうか?
平均気温とビールの売上のデータが下のように与えられているとする 平均気温: x = ( x 1 , x 2
, x 3 , ... x n )T ビールの売上: y = ( y 1 , y 2 , y 3 , ... y n )T 上のデータを使って、その関係性をうまく表す関数 y = f(x) を見つけたい このような、予測値yが連続的な実数値の場合を回帰という 回帰問題
回帰問題 例として適当なモデルで解いてみる。簡単な直線 y = f(x) = ax + b で近似できな
いか考えてみる。これを線形回帰という。 ➔ データの関係性をよく捉えることができる y = f(x) = ax + b の パラメータ(a, b)を求めるという問題に言い換えることができそう ➔ どうすれば適切なパラメータを求めることができるだろうか?
回帰問題 予測結果 y^ と実際の値 y の差 が最も小さくなるパラメータ(a, b) を求めるといい感じになりそう?
回帰問題 予測結果 y^ と実際の値 y の差は正負両方の値をとり得る ➔ 差の2乗の合計をとってそれを最小化する 最小化する対象: E(a,
b) = Σ( y i - ( ax i + b ) )2
回帰問題 E(a, b) = Σ( y i - ( ax
i + b ) )2 上の関数を最小化したい ➔ δE / δa(a, b) = 0, δE / δb(a, b) = 0 を解くと求められそう
回帰問題 求められた! def least_squares(x:np.array, y:np.array) -> float: a = ((x
* y).mean() - x.mean() * y.mean()) / ((x ** 2).mean() - (x.mean()) ** 2) b = y.mean() - a * x.mean() return a, b
分類問題
分類問題 次の問題について考えてみる ビールの売上は予測できたが、 それをもっと単純に捉えられるように 「売れそう / 売れなさそう」の2値で捉えたい。
分類問題 予測値がクラスラベルの場合を分類という。 線形回帰やSVMなど多くのモデルではクラスラベルを直接扱うことは難しい ➔ 特定のクラスに予測される確率を出力とするように関数を設計する ➔ sigmoid関数やsoftmax関数を用いると予測確率を出力とすることができる
分類問題 sigmoid関数 出力値yを入力として特定のクラスラベ ルへの所属確率を返す
分類問題 • ロジスティック回帰について取り組んでみたいって言ってた人がいた気がす るので詳しい式の展開とかはスキップします • がんばって解いてみてね
まとめ
まとめ • データは知見を抽出して初めて価値を発揮する • 学習とは、目的に沿った適切な出力が可能な関数を得ること • 関数を設計するという点は簡単なモデルも複雑なモデルも変わらず、 あらかじめ、人間がタスクに合わせて設計する必要がある