- 投稿日:2020-03-17T18:03:44+09:00
機械学習に関する個人的なメモとリンク集②(DeepLearning編)
はじめに
何をするにあたってもゼロからできることは限られています。
「巨人の肩の上に立つ」という言葉もありますが、先人の知恵として参考になる記事を活用して、レベルアップを図りたいものです。DeepLearning
DeepLearningは、Tensorflowを中心に色々と勉強はする(した)のですが、構造化データを使うのが主な小売りではあまり使い道がなく。
結局、時間が掛かる割には機械学習(Scikit-learnでできるレベル)と精度が変わらない・勝てないレベルなんですよね。もちろん、もっと上手くニューラルネットワークを作ると違うのかもしれませんが。
ですので、Tensorflow2.xになってからは、情報が追えていません。今後勉強しないと。「お客様の声」とかで、自然言語処理を使ってみたりはしたいですね。。。
機械学習(ニューラルネットワーク)モデル
CNN
RNN
- 再帰型ニューラルネットワーク: RNN入門
- TensorFlow の RNN チュートリアルやってみた
- 深層学習ライブラリKerasでRNNを使ってsin 波予測
- RNNの基礎だけじゃなく、Sequential Mnistにも実践!浅川先生の機械学習勉強会に参加してみた!
- 今度こそわかるぞRNN, LSTM編
- RNNで来月の航空会社の乗客数を予測する:TFLearnでLSTMからGRUまで実装しよう
バッチノーマライゼーション・バックプロパゲーション
半教師あり学習
強化学習
転移学習
Tensorflow
Tensorflow1.x関連
- 書籍転載:TensorFlowはじめました ― 実践!最新Googleマシンラーニング
- 中学生にも分かるTensorFlow入門
- TensorFlowチュートリアル - ML初心者のためのMNIST
- Tensorflow勉強会(1)、(2)、(3)、(4)
- 深層学習ライブラリKeras
- Kerasで深層学習を実践する
- KerasでMNIST
- GitHub
- KerasをTensorFlowバックエンドで試してみた
- DeepLearning4Jの問題点とKerasの使い勝手
- TF KerasからTensorboardを使用する方法
- jupyter上に、tensorBoardのグラフを表示させる
- Tensorflowの便利ライブラリTF-Slim
Tensorflowの活用事例
- Googleが提供する機械学習ライブラリ TensorFlow を1時間で試してみた
- 海外事例 マーケティング会社が Google BigQuery で天候データから顧客行動を分析
- BigQuery、パブリック データセット、TensorFlow で需要を予測する
- 【レポート】Recap of TensorFlow DEV SUMMIT 2017
自然言語処理
形態素解析
自然言語は、数値のような構造化されたデータでないために、構造化することが重要。
特に日本語の場合は、英語等と異なり単語の切れ目が明確でないため、どこまでを1つの単語と見做すのかといった問題を解決するために、形態素解析が行われる。JUMAN+;
形態素解析のライブラリは、JUMAN++を利用
他にMecabやJanomeといったライブラリもあるが、それらに比べてJUMAN++は遅いけど正確性が高い
- MeCabより高精度?RNNLMの形態素解析器JUMAN++
- MeCabよりも高精度なJUMAN++をUbuntuにインストールしたよ
- JUMAN++をPythonから使う
- GCEで立ち上げた機械学習環境で形態素解析を実行
Mecab
予測モデル構築
ナイーブベイズ
- http://aidiary.hatenablog.com/entry/20100613/1276389337
- https://qiita.com/kotaroito/items/76a505a88390c5593eba
- https://qiita.com/ynakayama/items/ca3f5e9d762bbd50ad1f
- https://pythondatascience.plavox.info/pythonとrの違い/ナイーブベイズ
RNN
- http://hytae.hatenablog.com/entry/2016/07/29/新たなRNNと自然言語処理
- https://www.slideshare.net/unnonouno/ss-43844132
- https://qiita.com/knok/items/26224c8489ad681769c0
- http://ksksksks2.hatenadiary.jp/entry/20160515/1463300078
Character-Level CNN
機械学習の世界で、画像等の分類で有名なCNN(畳み込みニューラルネットワーク)を、自然言語処理にも対応する様に用いた手法。
自然言語処理なら、前後の関係性が重要になるため、RNN(再帰型ニューラルネットワーク)だろうと言われているが、Twitterレベルの文字数制限であれば、CNNでも充分使い物になるらしい。
形態素解析→単語レベルでのCNN(Word-Level CNN)と、単純に文字で分けて行うCNN(Character-Level CNN)がある。
- character-level CNNでクリスマスを生き抜く
- 自然言語処理における畳み込みニューラルネットワークを用いたモデル
- CNNを利用した自然言語処理技術まとめ(2017年1月)
- KerasのCNNを使って文書分類する
- CNNを利用したセンチメント分析
- 艦これのセリフ分類をCNNでやる
その他
- MeCab, gensim, scikit-learnでニュース記事の分類
- Pythonでテキストマイニング ②Word Cloudで可視化
- KerasのサンプルでMLPを使って文の分類を試してみる
- テキスト分類器fastTextを用いた文章の感情極性判定
地理情報処理
地図作成
Open Street Map
- https://qiita.com/nyampire/items/423344fa75707dc138af
- https://qiita.com/duonys/items/c941bc2818abe5cc1da7
- https://qiita.com/k-ten/items/f7373e5e2fa709a97524
- https://qiita.com/k-ten/items/38160f10aee9ee904afc
- https://qiita.com/k-ten/items/ef4ddda743f1b0ad03eb
- https://qiita.com/k-ten/items/0ff819e35697f59203cc
ArcMap
BigQuery GIS
- 投稿日:2020-03-17T18:03:44+09:00
機械学習に関する個人的なメモとリンク集②
はじめに
機械学習に関する個人的なメモとリンク集①に引き続き、先人の知恵をまとめていきます。
DeepLearningは、Tensorflowを中心に色々と勉強はする(した)のですが、構造化データを使うのが主な小売りではあまり使い道がなく。
結局、時間が掛かる割には機械学習(Scikit-learnでできるレベル)と精度が変わらない・勝てないレベルなんですよね。もちろん、もっと上手くニューラルネットワークを作ると違うのかもしれませんが。
ですので、Tensorflow2.xになってからは、情報が追えていません。今後勉強しないと。「お客様の声」とかで、自然言語処理を使ってみたりはしたいですね。。。
DeepLearning
機械学習(ニューラルネットワーク)モデル
CNN
RNN
- 再帰型ニューラルネットワーク: RNN入門
- TensorFlow の RNN チュートリアルやってみた
- 深層学習ライブラリKerasでRNNを使ってsin 波予測
- RNNの基礎だけじゃなく、Sequential Mnistにも実践!浅川先生の機械学習勉強会に参加してみた!
- 今度こそわかるぞRNN, LSTM編
- RNNで来月の航空会社の乗客数を予測する:TFLearnでLSTMからGRUまで実装しよう
バッチノーマライゼーション・バックプロパゲーション
半教師あり学習
強化学習
転移学習
Tensorflow
Tensorflow1.x関連
- 書籍転載:TensorFlowはじめました ― 実践!最新Googleマシンラーニング
- 中学生にも分かるTensorFlow入門
- TensorFlowチュートリアル - ML初心者のためのMNIST
- Tensorflow勉強会(1)、(2)、(3)、(4)
- 深層学習ライブラリKeras
- Kerasで深層学習を実践する
- KerasでMNIST
- GitHub
- KerasをTensorFlowバックエンドで試してみた
- DeepLearning4Jの問題点とKerasの使い勝手
- TF KerasからTensorboardを使用する方法
- jupyter上に、tensorBoardのグラフを表示させる
- Tensorflowの便利ライブラリTF-Slim
Tensorflowの活用事例
- Googleが提供する機械学習ライブラリ TensorFlow を1時間で試してみた
- 海外事例 マーケティング会社が Google BigQuery で天候データから顧客行動を分析
- BigQuery、パブリック データセット、TensorFlow で需要を予測する
- 【レポート】Recap of TensorFlow DEV SUMMIT 2017
自然言語処理
形態素解析
自然言語は、数値のような構造化されたデータでないために、構造化することが重要。
特に日本語の場合は、英語等と異なり単語の切れ目が明確でないため、どこまでを1つの単語と見做すのかといった問題を解決するために、形態素解析が行われる。JUMAN+;
形態素解析のライブラリは、JUMAN++を利用
他にMecabやJanomeといったライブラリもあるが、それらに比べてJUMAN++は遅いけど正確性が高い
- MeCabより高精度?RNNLMの形態素解析器JUMAN++
- MeCabよりも高精度なJUMAN++をUbuntuにインストールしたよ
- JUMAN++をPythonから使う
- GCEで立ち上げた機械学習環境で形態素解析を実行
Mecab
予測モデル構築
ナイーブベイズ
- http://aidiary.hatenablog.com/entry/20100613/1276389337
- https://qiita.com/kotaroito/items/76a505a88390c5593eba
- https://qiita.com/ynakayama/items/ca3f5e9d762bbd50ad1f
- https://pythondatascience.plavox.info/pythonとrの違い/ナイーブベイズ
RNN
- http://hytae.hatenablog.com/entry/2016/07/29/新たなRNNと自然言語処理
- https://www.slideshare.net/unnonouno/ss-43844132
- https://qiita.com/knok/items/26224c8489ad681769c0
- http://ksksksks2.hatenadiary.jp/entry/20160515/1463300078
Character-Level CNN
機械学習の世界で、画像等の分類で有名なCNN(畳み込みニューラルネットワーク)を、自然言語処理にも対応する様に用いた手法。
自然言語処理なら、前後の関係性が重要になるため、RNN(再帰型ニューラルネットワーク)だろうと言われているが、Twitterレベルの文字数制限であれば、CNNでも充分使い物になるらしい。
形態素解析→単語レベルでのCNN(Word-Level CNN)と、単純に文字で分けて行うCNN(Character-Level CNN)がある。
- character-level CNNでクリスマスを生き抜く
- 自然言語処理における畳み込みニューラルネットワークを用いたモデル
- CNNを利用した自然言語処理技術まとめ(2017年1月)
- KerasのCNNを使って文書分類する
- CNNを利用したセンチメント分析
- 艦これのセリフ分類をCNNでやる
その他
- MeCab, gensim, scikit-learnでニュース記事の分類
- Pythonでテキストマイニング ②Word Cloudで可視化
- KerasのサンプルでMLPを使って文の分類を試してみる
- テキスト分類器fastTextを用いた文章の感情極性判定
地理情報処理
地図作成
Open Street Map
- https://qiita.com/nyampire/items/423344fa75707dc138af
- https://qiita.com/duonys/items/c941bc2818abe5cc1da7
- https://qiita.com/k-ten/items/f7373e5e2fa709a97524
- https://qiita.com/k-ten/items/38160f10aee9ee904afc
- https://qiita.com/k-ten/items/ef4ddda743f1b0ad03eb
- https://qiita.com/k-ten/items/0ff819e35697f59203cc
ArcMap
BigQuery GIS
- 投稿日:2020-03-17T15:06:49+09:00
TensorFlow Dev Summit 2020 Recap
What's this?
2020/3/11に開催されたTensorFlow Dev Summit 2020(オンラインイベント)のストリーミングを見て自分の気になったところをまとめたメモ
TensorFlow Dev Summit とは
2017年から毎年開催されているTensorFlowの開発者向けイベント
TensorFlowの新しいプロダクトはだいたい毎年このイベントで発表されることが多い
全動画
- Keynote
- Learning to read with TensorFlow and Keras
- TensorFlow Hub: Making Model Discovery Easy
- Collaborative ML with TensorBoard.dev
- TF2.x on Kaggle
- Performance Profiling in TensorFlow 2
- Research with TensorFlow
- Differentiable convex optimization layers
- Scaling TensorFlow data processing with tf.data
- Scaling TensorFlow 2 models to multi-worker GPUs
- Making the most of Colab
- MLIR: Accelerating TF with compilers
- TFRT: A new TensorFlow Runtime
- TFX: Production ML with TensorFlow in 2020
- TensorFlow Enterprise: Productionizing TensorFlow with Google Cloud
- TensorFlow.js: ML for the Web and beyond
- TensorFlow Lite: ML for mobile and IoT devices
- TensorFlow and ML from the trenches: The innovation experience center at JPL
- Getting involved in the TF community
- Responsible AI with TensorFlow
- TensorFlow Quantum: A software platform for hybrid quantum-classical ML
- 全てを見たい人 (7:50:12)
The TensorFlow Ecosystem
TensorFlow Quantum
TensorFlow Dev Summitに先立って公開されたライブラリ
https://www.tensorflow.org/quantum
https://github.com/tensorflow/quantum
- 「Cirq」を、既存のTensorFlowライブラリに統合した
- TensorFlow APIと互換性をもつ量子コンピューティングを実現
紹介記事
https://gigazine.net/news/20200310-google-tensorflow-quantum/
TensorFlow 2.2
Performance Profiler
Overview Page
Input Pipeline Analyzer
Trace Viewer
TensorFlow Stats
Profiling
Step 1: Keras TensorBoard callback
Step 2: Launch TensorBoard
Step 3: Check Overall Analysis
Step 4: Input Pipeline Recommendation
Step 5: Optimize the "Data Preprocessing"
Step 6: Capture a new profile
Next Steps
TensorFlow Developer Certificate
TensorFlow Developer Certificate
https://www.tensorflow.org/certificate
- 5時間のテストで5つのモデルを作る
- 全体で100点満点中90点で合格
カテゴリ
- ベーシック/シンプル
- データセットからのモデル
- 画像データからCNNモデル
- テキストデータからNLPテキスト分類
- 数値データセットからシーケンスモデル
受講者に必要なスキルセット
- ML/DLの基礎的な知識
- TensorFlowを用いた機械学習モデルの実装
- DNNとCNNを使った画像認識アルゴリズムの実装
- 異なる画像サイズの扱い
- 畳み込みレイヤーの視覚化
- lossやaccuracyのプロット
- オーバーフィッティングを防ぐ方法
- 画像認識、物体検出、テキスト認識
- 自然言語処理へのニューラルネットワークの適用
環境
- PyCharm
- インターネット接続環境
- TensorFlow Examプラグイン
- テスト中のドキュメント参照は可能
コスト
- $100 USD
再受験
- 一回目から14日後に再受験
- 二回目から2ヶ月後に再受験
- 三回目から1年後に再受験(それ以降は同じ)
有効期限
- 36ヶ月
- 更新不可、要再受験
Google Cloud AI Platform Pipelines
- ベータ版をリリース
- Notebookでの課題解決はシンプル
- ワークフローの構築やスケールは複雑
- データの準備と分析、トレーニング、評価、展開
TensorFlow.js
Facemesh
demo
https://storage.googleapis.com/tfjs-models/demos/facemesh/index.html
Handpose
demo
https://storage.googleapis.com/tfjs-models/demos/handpose/index.html
実行速度
MobileBERT
Use cases
AR Beauty
Multiple Backends
TensorBoard.dev
TensorFlow Hub
TensorFlow Hub
Ready to use
Easy to Search
With Notebook
Style transfer
Text Classification
Audio
Improved Search & Discovery
Expanded Support for TF Formats
Colab
Top 10 Colab Tricks for TensorFlow Users
10: Specify TensorFlow version
9: Use TensorBoard right in Colab
8: TFLite? No problem!
7: Use TPUs
6: Use local runtimes
5: The Colab scratchpad
https://colab.research.google.com/notebooks/empty.ipynb
4: Copy data to Colab VMs
3: Mind your memory
2: Close tabs when done
1: Only use GPUs when needed
Colab Pro
Colab Pro
Colab Pro
Kaggle x TensorFlow 2.x
TensorFlow Lite
Android Studio Integration
Profiler for Android
iOS Core ML support
Language support
Hardware support
Arduino Suppoort
Thank you