あなたは今、話題の機械学習でどんなことが実現できるのか調べていますね?
その中でもTensorFlow(テンソルフロー)に注目して、情報を探しているところではありませんか?
TensorFlowは、機械学習ライブラリ=TensorFlowと言えるくらいの人気を誇るライブラリですが、では、いったいTensorFlowでどんなことが実現できるのか?
というと、まとまった情報はなかなか見つかりません。
そこで、今回は、TensorFlowの公式チュートリアルのまとめ記事を作成してみました!
公式チュートリアルを概観してみると、TensorFlowを現実社会に適用するために、どのようなモデルを利用すればよいか、という方向性が見えてくるでしょう。
侍エンジニアブログに書いた公式チュートリアルをやってみた記事も、あわせて紹介していますので、ぜひご覧ください!
画像の学習
Build a Convolutional Neural Network using Estimators
参考:https://www.tensorflow.org/tutorials/estimators/cnn
タスク | 手書き数字の画像を見て、描かれている数字を推測(分類)する |
データセット | MNIST 参考:http://yann.lecun.com/exdb/mnist/ |
侍エンジニアブログ:
少し古いバージョンのチュートリアルですが、以下の記事でもMNISTを学習するチュートリアルを紹介しています。
Image Recognition
参考:https://www.tensorflow.org/tutorials/images/hub_with_keras
タスク | 画像を見て、何が描かれているか推測(分類)する |
データセット | ImageNet 参考:http://www.image-net.org/ |
学習済みモデル | Inception-v3 |
How to Retrain Inception’s Final Layer for New Categories
参考:https://www.tensorflow.org/tutorials/image_retraining
タスク | 花の写真を見て、写っている花を推測(分類)する |
データセット | TensorFlowのチームが収集した、クリエイティブコモンズライセンスの花の写真 参考:http://download.tensorflow.org/example_images/flower_photos.tgz |
Convolutional Neural Networks
参考: https://www.tensorflow.org/tutorials/images/deep_cnn
タスク | RGB 32×32ピクセルの画像を見て、写っているモノを推測(分類)する |
データセット | CIFAR-10 参考:https://www.cs.toronto.edu/~kriz/cifar.html |
時系列データの学習
Recurrent Neural Networks
参考:https://www.tensorflow.org/tutorials/recurrent
タスク | 英文を読んで、英文の最後の単語を推測する |
データセット | PTB(Penn Treebank) 参考:https://catalog.ldc.upenn.edu/ldc99t42 ※ここからは権限がないとダウンロードできません。 |
侍エンジニアブログ:
Neural Machine Translation (seq2seq) Tutorial
参考: https://github.com/tensorflow/nmt
タスク | 翻訳元の単語列から、翻訳先の単語列を推測(翻訳)する |
データセット | ベトナム語から英語(または英語からベトナム語):IWSLT'15 English-Vietnamese data 参考:https://nlp.stanford.edu/projects/nmt/ |
Recurrent Neural Networks for Drawing Classification
参考:https://www.tensorflow.org/tutorials/recurrent_quickdraw
タスク | 手書きの絵から、内容を推測(分類)する |
データセット | Quick, Draw! dataset 参考:https://quickdraw.withgoogle.com/data |
Simple Audio Recognition
参考:https://www.tensorflow.org/tutorials/audio_recognition
タスク | "yes", "no", "up", "down", "left", "right", "on", "off", "stop", "go"のいずれかの音声データから、内容を推測(分類)する |
データセット | Speech Commands dataset 参考:https://storage.cloud.google.com/download.tensorflow.org/ data/speech_commands_v0.01.tar.gz |
データマイニング
Build a linear model with Estimators
参考:https://www.tensorflow.org/tutorials/wide
タスク | 年齢、教育、婚姻、職業といった国勢調査データから、年間収入が50,000ドルを超えるかどうかを推測する |
データセット | Census Income Data Set 参考:https://archive.ics.uci.edu/ml/datasets/Census+Income |
TensorFlow Wide & Deep Learning Tutorial
参考:https://www.tensorflow.org/tutorials/wide_and_deep
タスク | 年齢、教育、婚姻、職業といった国勢調査データから、年間収入が50,000ドルを超えるかどうかを推測する |
データセット | Census Income Data Set 参考:https://archive.ics.uci.edu/ml/datasets/Census+Income |
Improving Linear Models Using Explicit Kernel Methods
参考:https://www.tensorflow.org/tutorials/kernel_methods
タスク | 手書き数字の画像を見て、描かれている数字を推測(分類)する |
データセット | MNIST 参考:http://yann.lecun.com/exdb/mnist/ |
Vector Representations of Words
参考:https://www.tensorflow.org/tutorials/representation/word2vec
タスク | 英文を読んで、単語ベクトルを作成する |
データセット | text8 参考:http://mattmahoney.net/dc/textdata.html |
侍エンジニアブログ:
まとめ
TensorFlowの公式チュートリアルのまとめ記事として、チュートリアルのタスクとデータセットをまとめてみました。
まとめてみると、同じMNISTを学習するモデルでも何通りもあることから、同じタスクでもさまざまな学習方法(モデル)があることがわかります。
機械学習で解決したい問題が、どのチュートリアルに近いかがわかれば、難しい内容でも頑張って読み進められますよね!
今回、後半のチュートリアルについては、日本語でやってみた記事が少ないことがわかりましたので、今後、順番に記事にしていきたいと思います。
ご期待ください!