TensorFlow を使用した機械学習の基礎
このカリキュラムは以下の方に最適です。
- ML については初心者だが、中級のプログラミング スキルがある方
このコンテンツは、ML を一から始めるデベロッパーが、ML の初歩の知識を身に付けるためのものです。多くのリソースで TensorFlow が使用されていますが、他の機械学習フレームワークに応用できる知識を身に付けることができます。
ステップ 1: ML の全体像を理解する
TensorFlow 2.0 には Keras と呼ばれる API が使用され、機械学習用のニューラル ネットワークを簡単に構築できます。Keras の開発者である Francois Chollet の著書『Deep Learning with Python』は、入門用に最適です。この本の 1~4 章では、プログラマーの観点から ML の基礎を理解できます。また、後半ではコンピュータ ビジョン、自然言語処理、ジェネレーティブ ディープ ラーニングなどの領域が詳しく解説されています。今、こうした内容が高度すぎると感じたとしても、心配はいりません。自然に理解できるようになります。
この入門書では、最も一般的な ML シナリオ(ウェブ、モバイル、クラウド、埋め込みランタイム向けのシーケンス モデリング、コンピュータ ビジョン、自然言語処理(NLP)など)の実装方法を学習するための、コード ファーストのアプローチが紹介されています。
⬆ または ⬇
Coursera の Introduction to TensorFlow や Udacity の Intro to TensorFlow for Deep Learning などのオンライン コースでは、上記の書籍で解説されている基本的な項目を学習できます。また、3blue1brown の動画は、ニューラル ネットワークが数学レベルでどのように機能するかをすばやく理解するのに役立ちます。
このステップを完了することで、ML の仕組みに関する基礎を理解し、応用編に進む準備ができます。
DeepLearning.AI
"AI、機械学習、ディープラーニングのための TensorFlow 入門 (Intro to TensorFlow for AI, ML, and Deep Learning)"このコースは TensorFlow Developer 専門講座の一部として TensorFlow チームと共同で開発されており、TensorFlow を使用するためのベスト プラクティスを学べます。
TensorFlow チームと Udacity の開発によるこのオンライン コースでは、TensorFlow を使ってディープ ラーニング アプリケーションを作成する方法を学ぶことができます。
ステップ 2: 基礎から応用へ進む
TensorFlow Developer 専門講座では、基本から一歩進んで入門的なコンピュータ ビジョン、NLP、シーケンス モデリングを学習できます。
このステップは入門の続きであり、画像分類、テキストの感情分析、ジェネレーティブ アルゴリズムなどのさまざまなシナリオで、TensorFlow を使用して基本的なモデルを構築する方法を学習できます。
DeepLearning.AI
TensorFlow Developer 専門講座TensorFlow 開発者が講師を務めるこの 4 つのコースの専門講座では、TensorFlow で AI を活用したスケーラブルなアルゴリズムを作成するためのツールについて詳しく知ることができます。
ステップ 3: 実践
主な TensorFlow のチュートリアルをいくつか試してみましょう。ステップ 1~2 で学んだ概念を実践的に練習できます。それらが完了したら、より高度な演習をいくつか試してみましょう。
このステップを完了すると、ML モデルを構築する際に遭遇する主な概念とシナリオの理解が深まります。
ステップ 4: TensorFlow で理解を深める
ここで、Francois Chollet の著書『Deep Learning with Python』に戻って、5 章から 9 章までをお読みください。また、Aurelien Geron の著書『scikit-learn、Keras、TensorFlow による実践機械学習』もぜひお読みください。この書籍では、ML と、TensorFlow 2.0 を使用したディープ ラーニングが紹介されています。
このステップを完了すると、ニーズに合わせたプラットフォームの拡張など、ML に関する初歩的な知識が身に付きます。
この本では複数の具体例、最小限の理論、本番環境で使用できる 2 つの Python フレームワーク(Scikit-Learn および TensorFlow)が紹介されており、インテリジェントなシステムを構築するための概念とツールを直感的に理解できます。