MNISTで
AIやってみた
malo21st
【オンライン】はんなりPython #38 サクラな季節なLT会 2021/03/19
今更なんですけど
おまえだれよ
malo21st 簡単に「まろ」でいいです
なぜ、malo21st なの?
malo は、高校の国語の先生が
「田中麻呂」と呼んだのが始まり。
21st は、今が 21世紀 だから。
今更ながら、AIやってみた理由
・昨年8月、社内でデータ分析チームの育成が始まる
・9〜11月、pandasを中心にPythonの先生になる
・12〜3月、隔週で1時間程度のPythonに関するトークを10本
→ やったことないけど、テーマとしてAIは外せない
→ ってことで、やってみることに
→ どうせやるなら、実装までやってみよう
MNISTって何?
MNISTとは
・画像処理システムの学習に広く使用される
手書き数字画像の大規模なデータベース
・7万枚 の
画 像 と ラベル
・画像は
28×28のモノクロ
「教師あり学習」を 3つ やってみた
SVM
サポートベクターマシン
MLP(隠れ層:1)
多層パーセプトロン
CNN
畳込み
ニューラルネットワーク
①
②
③
出典:AINOW
学習・テスト・実装まで、やってみた
クラウド上で全部やってまえ!
出典:DATAGRID Inc. https://datagrid.co.jp/service/
チャチャっと
AIアプリ
画像とラベルが一体の MNIST で
データ収集と前処理を楽して完了
教師あり学習
scikit-learn
① SVM
② MLP
PyTorch
③ CNN
テスト結果 と デモ( SVM・MLP・CNN )
学 習 方 法 | テストの 正 解 率 |
S V M サポートベクターマシン | 95 % |
M L P 多層パーセプトロン (隠れ層:1) | 97 % |
C N N 畳込みニューラルネットワーク | 99 % |
まとめ
◆ 学習・テストだけでは物足りない
実装までやらないと面白くない
・テストが良くても、実践で使えないと意味がない
今後やりたいこと
◆ 性能向上
・学習データを増やして、再学習
◆ 教師なし学習
・オートエンコーダで、偶数・奇数判定
ご清聴 ありがとうございました。
【オンライン】はんなりPython #38 サクラな季節なLT会 2021/03/19
(おまけ)関連リンク
◆ MNIST:http://yann.lecun.com/exdb/mnist/
◆ scikit-learn:https://scikit-learn.org/stable/
◆ PyTorch:https://pytorch.org/
・学習:https://qiita.com/TKC-tkc/items/42ff569be496621fc016
・実装:https://qiita.com/TKC-tkc/items/3b41620ecb9b22901413
◆ Dash:https://plotly.com/dash/
・Dash Canvas OCR(これを改造してWebアプリ作りました)
https://github.com/plotly/dash-sample-apps/tree/master/apps/dash-canvas-ocr
・Jupyter Dash(ジュピター上で、Dashアプリが開発できるライブラリ)