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
Agent Development Kit によるエージェント開発入門
enakai00
19
3.9k
GDG Tokyo 生成 AI 論文をわいわい読む会
enakai00
1
580
Lecture course on Microservices : Part 1
enakai00
1
3.6k
Lecture course on Microservices : Part 2
enakai00
2
3.6k
Lecture course on Microservices : Part 3
enakai00
1
3.5k
Lecture course on Microservices : Part 4
enakai00
1
3.5k
JAX / Flax 入門
enakai00
1
550
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4k
大規模言語モデルを支える分散学習インフラ Pathways
enakai00
3
510
Other Decks in Technology
See All in Technology
自律的なスケーリング手法FASTにおけるVPoEとしてのアカウンタビリティ / dev-productivity-con-2025
yoshikiiida
1
14k
AI導入の理想と現実~コストと浸透〜
oprstchn
0
180
Geminiとv0による高速プロトタイピング
shinya337
0
230
Connect 100+を支える技術
kanyamaguc
0
180
asken AI勉強会(Android)
tadashi_sato
0
170
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
160
モバイル界のMCPを考える
naoto33
0
410
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
410
Delegating the chores of authenticating users to Keycloak
ahus1
0
130
Frontier airlines®️ USA Contact Numbers: Complete 2025 Support Guide
oliversmith12
0
110
タイミーのデータモデリング事例と今後のチャレンジ
ttccddtoki
6
2.3k
第4回Snowflake 金融ユーザー会 Snowflake summit recap
tamaoki
0
200
Featured
See All Featured
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Scaling GitHub
holman
459
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Done Done
chrislema
184
16k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
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!