Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ITエンジニアのための「機械学習理論」入門 (ハンズオンガイド)
Search
Etsuji Nakai
October 23, 2017
Technology
3
330
ITエンジニアのための「機械学習理論」入門 (ハンズオンガイド)
2018/04/04 ver 1.2
Etsuji Nakai
October 23, 2017
Tweet
Share
More Decks by Etsuji Nakai
See All by Etsuji Nakai
GDG Tokyo 生成 AI 論文をわいわい読む会
enakai00
0
490
Lecture course on Microservices : Part 1
enakai00
1
3.3k
Lecture course on Microservices : Part 2
enakai00
1
3.3k
Lecture course on Microservices : Part 3
enakai00
1
3.2k
Lecture course on Microservices : Part 4
enakai00
1
3.2k
JAX / Flax 入門
enakai00
1
450
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
3.7k
大規模言語モデルを支える分散学習インフラ Pathways
enakai00
3
470
Python × 数学ブートキャンプガイド
enakai00
1
730
Other Decks in Technology
See All in Technology
What's new in Go 1.24?
ciarana
1
110
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
110
【Findy】「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly by findy
i35_267
5
860
IAMのマニアックな話2025
nrinetcom
PRO
2
250
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
11k
Pwned Labsのすゝめ
ken5scal
1
400
LINEギフトにおけるバックエンド開発
lycorptech_jp
PRO
0
270
短縮URLをお手軽に導入しよう
nakasho
0
140
あなたが人生で成功するための5つの普遍的法則 #jawsug #jawsdays2025 / 20250301 HEROZ
yoshidashingo
2
280
脳波を用いた嗜好マッチングシステム
hokkey621
0
280
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
540
設計を積み重ねてシステムを刷新する
sansantech
PRO
0
160
Featured
See All Featured
Facilitating Awesome Meetings
lara
52
6.2k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Rails Girls Zürich Keynote
gr2m
94
13k
Designing for Performance
lara
604
68k
GraphQLとの向き合い方2022年版
quramy
44
14k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Speed Design
sergeychernyshev
27
810
Building a Scalable Design System with Sketch
lauravandoore
461
33k
How STYLIGHT went responsive
nonsquared
98
5.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
RailsConf 2023
tenderlove
29
1k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Transcript
CodeZine Academy ITエンジニアのための 「機械学習理論」入門 (ハンズオンガイド) ver1.2 2018/04/04 中井悦司 (Twitter @enakai00)
2 CodeZine Academy 目次 ▪ ハンズオン環境の利用方法 ▪ 演習手順 - 演習1:最小二乗法による回帰分析
- 演習2:最尤推定による回帰分析(その1) - 演習3:最尤推定による回帰分析(その2) - 演習4:パーセプトロンによる二項分類 - 演習5:パーセプトロンとロジスティック回帰の比較 - 演習6:ロジスティック回帰のROC曲線 - 演習7:k平均法による画像変換 - 演習8:EM法による手書き文字分類
3 CodeZine Academy ハンズオン環境の利用方法
4 CodeZine Academy ハンズオン環境の利用方法 ▪ 本講義のハンズオン環境は、下記のBlog記事にしたがって準備したものが前提 となります。 - Google Colaboratory
を用いた演習環境の準備手順 - http://enakai00.hatenablog.com/entry/2018/02/11/151136
5 CodeZine Academy ハンズオン環境の利用方法 ▪ プルダウンメニューから「ファイル」→「Python X のノートブックを新規作 成」を選択すると新しいノートブックが開きます。 ▪
タイトル部分をクリックすると、新しいファイル名が設定できます。拡張子に は「.ipynb」を使用します。
6 CodeZine Academy ハンズオン環境の利用方法 ▪ ノートブック上では、セルにプログラムコードを入力して、▶ ボタン、もしく は、[Ctrl] + [Enter]
で実行すると結果が表示されます。 ▪ テキスト形式のセルには説明文を記載することができます。 コード形式、もしくは、 テキスト形式のセルを追加 テキスト形式のセル コード形式のセル
7 CodeZine Academy ハンズオン環境の利用方法 ▪ 実行結果を消去する際は、メニューから「編集」→「すべての出力を消去」を 選択します。 ▪ ノートブック全体を最初から実行し直す場合は、メニューから「ランタイム」 →「ランタイムを再起動」を選択して、実行環境を初期化します。
8 CodeZine Academy 演習手順
9 CodeZine Academy 演習1:最小二乗法による回帰分析 ▪ ノートブック「02-square_error.ipynb」を開いて、各セルの説明を読みなが ら、順番に実行していきます。 - このノートブックでは、最小二乗法による回帰分析を実施します。 ▪
下記の N を変えると、データ数(x軸上の観測点の数)を変更できます。 - データ数によって結果がどのように変わるか観察してください。 ▪ 下記の [0,1,3,9] は、グラフに描く4種類の多項式の次数を指定します。 - 多項式の次数を変えて結果がどのように変わるか観察してください。この時、多項 式の次数をデータ数以上に設定すると正しい結果が得られなくなります。
10 CodeZine Academy 演習2:最尤推定による回帰分析(その1) ▪ ノートブック「03-maximum_likelihood.ipynb」を開いて、各セルの説明を 読みながら、順番に実行していきます。 - このノートブックでは、最尤推定による回帰分析と最大ログ尤度の計算を行いま す。
▪ 下記の N を変えると、データ数(x軸上の観測点の数)を変更できます。 - データ数によって結果がどのように変わるか観察してください。 ▪ 下記の [0,1,3,9] は、グラフに描く4種類の多項式の次数を指定します。 - 多項式の次数を変えて結果がどのように変わるか観察してください。この時、多項 式の次数をデータ数以上に設定すると正しい結果が得られなくなります。
11 CodeZine Academy 演習3:最尤推定による回帰分析(その2) ▪ ノートブック「03-ml_gauss.ipynb」を開いて、各セルの説明を読みなが ら、順番に実行していきます。 - このノートブックでは、最尤推定による正規分布の推定を行います。 -
最後のセルを何度か繰り返し実行して、結果がどのように変わるか観察してくださ い。 ▪ 下記の [2,4,10,100] は推定に用いるサンプル数(4種類)を指定します。 - サンプル数によって結果がどのように変わるか観察してください。
12 CodeZine Academy 演習4:パーセプトロンによる二項分類 ▪ ノートブック「04-perceptron.ipynb」を開いて、各セルの説明を読みなが ら、順番に実行していきます。 - このノートブックでは、パーセプトロンによる二項分類を実施します。 ▪
分類用のデータは、2種類の2次元正規分布を用いてランダムに生成していま す。下記のパラメータでデータ数、中心座標、分散を変更できます。 - データの配置によって、結果がどのように変わるか観察してください。 データ数 中心座標 分散 ◦ ✕
13 CodeZine Academy 演習5:パーセプトロンとロジスティック回帰の比較 ▪ ノートブック「05-logistic_vs_perceptron.ipynb」を開いて、各セルの説明 を読みながら、順番に実行していきます。 - このノートブックでは、パーセプトロンとロジスティック回帰による二項分類を実 施します。
- 何度か繰り返し実行して、パーセプトロンとロジスティック回帰の結果の違いを比 較してください。
14 CodeZine Academy 演習6:ロジスティック回帰のROC曲線 ▪ ノートブック「05-roc_curve.ipynb」を開いて、各セルの説明を読みなが ら、順番に実行していきます。 - このノートブックでは、ロジスティック回帰を実施して、その結果をROC曲線で表 示します。
▪ 分類用のデータは、2種類の2次元正規分布を用いてランダムに生成していま す。下記のパラメータでデータ数、中心座標、分散を変更できます。 - データの配置によって、結果がどのように変わるか観察してください。 データ数 中心座標 分散 ◦ ✕
15 CodeZine Academy 演習7:k平均法による画像変換 ▪ ノートブック「06-k_means.ipynb」を開いて、各セルの説明を読みながら、 順番に実行していきます。 - このノートブックでは、サンプル画像「photo.jpg」を読み込んで、k平均法を用い て、画像の減色処理を行います。
▪ 下記の部分では、インターネットから画像をダウンロードして利用していま す。 - 同じ方法で、好きな画像をダウンロードして試してください。
16 CodeZine Academy 演習8:EM法による手書き文字分類 ▪ ノートブック「07-mix_em.ipynb」を開いて、各セルの説明を読みながら、順 番に実行していきます。 - このノートブックでは、混合ベルヌーイ分布を用いたEM法により、手書き文字の分 類を行います。
- 何度か繰り返し実行して、結果がどのように変化するか観察してください。 ▪ 下記の K=4 の部分で、分類するクラスター数を指定します。 - クラスター数を変更して、結果がどのように変化するか観察してください。
17 CodeZine Academy メモとしてお使いください
CodeZine Academy Thank You!