Skip to main content
0
「Python機械学習プログラミング」
と振り返る機械学習の動向と展望
2023年2月16日
第90回 Start Python Club
福島 真太朗
1
自己紹介
福島 真太朗 @shi-fukushima
⚫ トヨタ自動車株式会社コネクティッド先行開発部InfoTech データ解析基盤G
グループ長/プリンシパル・リサーチャー
博士(情報理工学)
⚫ 産業技術総合研究所人工知能研究センター 客員研究員
⚫ 専門分野: 機械学習・データマイニング
⚫ 仕事: 車両データ解析に関連した研究開発
Python機械学習プログラミング Pythonによる
あたらしいデータ分析の教科書
データサイエンティスト養成読本
機械学習入門編
(Python・R・Julia等の
機械学習ソフトウェアの概観)
・・・
2
車両から収集した大量データの解析・活用
Edge Computing
Data Collection/
Storage/Analysis
Platform
・Real-time processing
Condition of in-out vehicles
Data Center
Next 5G Network
・Standardization for
vehicles
・Applicability validation
・Regional distribution
・Layering of data
・Network topology
・Optimal deployment
IoT Network
コネクティッドカーから大量の車両走行データを
収集・蓄積・解析・活用
3
解析対象データ例
ナビプローブデータ
~数100MB/月[常時]
ECU状態データ
~数GB/月[適時]
動的地図生成
~数GB/月[適時]
周辺センシングデータ
~数10GB/月[適時]
4
概要
● 翻訳書「Python機械学習プログラミング」の刊行後、2年おきに3回
改版
● 初版からの機械学習の動向を概観し、グラフニューラルネットワークを
例に書籍の雰囲気をお伝えします
● Pythonコードの詳細、理論背景については、詳しくはお話しません
5
アジェンダ
1. 書籍の概要
2. 書籍の雰囲気
3. まとめ
6
Python機械学習プログラミングとは
● ”Python Machine Learning”の翻訳書
● 2016年に初版が刊行し、以後2年おきに改版・改編
● 監訳として従事
初版
2016年
(456ページ)
第2版
2018年
(584ページ)
第3版
2020年
(688ページ)
PyTorch &
scikit-learn編
2022年
(712ページ)
7
初版の内容
ブックインサイドー『Python機械学習プログラミング』 学び方ガイド
8
初版以降の追加内容
+ Transformer (GPT, BERT, BART)
+ グラフニューラルネットワーク (GNN)
+ XGBoost
+ 画像分類
畳み込みニューラルネットワーク
(CNN)
+ リカレントニューラルネットワーク
(RNN)
+ 敵対的生成ネットワーク
(GAN)
+ 強化学習
2016年 2018年 2020年 2022年
深層学習を中心に代表的なトピックを逐次的に追加
9
目次: PyTorch & scikit-learn編
⚫ 第1章 「データから学習する能力」をコンピュータに与える
⚫ 第2章 分類問題―単純な機械学習アルゴリズムの訓練
⚫ 第3章 分類問題―機械学習ライブラリscikit-learnの活用
⚫ 第4章 データ前処理―よりよい訓練データセットの構築
⚫ 第5章 次元削減でデータを圧縮する
⚫ 第6章 モデルの評価とハイパーパラメータのチューニングのベストプラクティス
⚫ 第7章 アンサンブル学習―異なるモデルの組み合わせ
⚫ 第8章 機械学習の適用―感情分析
⚫ 第9章 回帰分析―連続値をとる目的変数の予測
⚫ 第10章 クラスタ分析―ラベルなしデータの分析
⚫ 第11章 多層人工ニューラルネットワークを一から実装する
⚫ 第12章 ニューラルネットワークの訓練をPyTorchで並列化する
⚫ 第13章 PyTorchのメカニズム
⚫ 第14章 画像の分類―ディープ畳み込みニューラルネットワーク
⚫ 第15章 系列データのモデル化―リカレントニューラルネットワーク
⚫ 第16章 Transformer―Attentionメカニズムによる自然言語処理の改善
⚫ 第17章 新しいデータの合成―敵対的生成ネットワーク
⚫ 第18章 グラフニューラルネットワーク―グラフ構造データでの依存性の捕捉
⚫ 第19章 複雑な環境での意思決定―強化学習
10
書籍の特徴
● Pythonでの実装を中心に、機械学習の初歩から比較的最近の
手法まで実行方法を学べる
● GitHubからソースコードをダウンロードし、Jupyter Notebook上で
実行結果を確認しながら進められる
● 理論背景はあまり詳しくないので、他書で補う必要あり
11
最近の機械学習の主な動向 (Transformer・GNN中心)
Trans
former
生成
モデル
PyTorch &
Scikit-learn
編で追加
(2022年)
第3版で
追加
(2020年)
グラフ
ニューラル
ネットワーク
2016 2017 2018 2019 2020 2021 2022 2023
Transformer
GPT-3
GPT-2
GPT
DALL-E DALL-E2
Parti
Imagen
BERT BART
GCN AGCN
DGCN
GWNN
GraphSAGE
ChebNet
GAN
(敵対的生成
ネットワーク)
2015以前
その他 XGBoost
ソフトウェアは2014年
12
最近の機械学習の主な動向 (Transformer・GNN中心)
Trans
former
生成
モデル
PyTorch &
Scikit-learn
編で追加
(2022年)
第3版で
追加
(2020年)
グラフ
ニューラル
ネットワーク
2016 2017 2018 2019 2020 2021 2022 2023
Transformer
GPT-3
GPT-2
GPT
DALL-E DALL-E2
Parti
Imagen
BERT BART
GCN AGCN
DGCN
GWNN
GraphSAGE
ChebNet
GAN
(敵対的生成
ネットワーク)
2015以前
グラフニューラルネット
ワークを例に書籍の
雰囲気をお伝えします
その他 XGBoost
ソフトウェアは2014年
13
アジェンダ
1. 書籍の概要
2. 書籍の雰囲気: グラフニューラルネットワーク
3. まとめ
14
特徴
① 初歩的な知識から説明している
② 簡単な例を使いアルゴリズムの動作の概要を説明している
③ 最初はライブラリではなく自前で実装している(場合がある)
15
①初歩的な知識から説明してくれている
書籍より引用
グラフデータ 有向グラフや無向グラフの例
16
①初歩的な知識から説明してくれている
書籍より引用
17
②簡単な例を使いアルゴリズムの動作の概要を説明している
グラフ畳み込み
プーリング
書籍より引用
入力:
4つのノードを持つ
グラフデータ
出力:
実数値
18
②簡単な例を使いアルゴリズムの動作の概要を説明している
書籍より引用
19
③最初はライブラリではなく自前で実装している(場合がある)
最初は簡単に自前で実装 次にライブラリを用いて実装
(PyTorch Geometric)
20
アジェンダ
1. 書籍の概要
2. 書籍の雰囲気: グラフニューラルネットワーク
3. まとめ
21
まとめ
● 「Python機械学習プログラミング」の特徴を説明
● 今後、画像、言語処理、音声認識等での深層学習の研究、活用は
一層進み、書籍もそれに伴い進化する (かも)
● 一方で、実際に業務で使うには、書籍に書かれていない以下なども重
要(個人的な見解)
● 機械学習の品質管理・保証
● ドメイン知識と融合した機械学習技術 (車両・制御 × 機械学習)
● セキュリティ・プライバシー等の機械学習技術 (federated learning等)