専門講座: JavaScript 開発のための TensorFlow の基本
以下の学習教材を開始する前に、次の条件を満たす必要があります。
-
HTML と JavaScript を使用したブラウザ上でのプログラミングに慣れていること
-
コマンドラインを使用して node.js スクリプトを実行する方法を熟知していること
このカリキュラムは、次のような目標を持つ方を対象としています。
-
JavaScript で ML モデルを作成する
-
既存の TensorFlow.js モデルを実行する
-
ML モデルをウェブブラウザにデプロイする
TensorFlow.js では JavaScript で ML モデルを作成し、ブラウザから直接または Node.js で ML を使用できます。TensorFlow.js の詳細と、TensorFlow.js でできることについては、Google I/O のトーク動画をご覧ください。
ステップ 1: ブラウザ上で機械学習の概要をすばやく学習する
JavaScript による ML の基本についてすばやく知りたい場合は、こちらの YouTube の動画シリーズをご覧ください。ML の第一原理から、基本的な分類を行うニューラル ネットワークの構築までを学ぶことができます。

3 部構成のシリーズでは、TensorFlow.js を使った機械学習モデルのトレーニングと実行について解説し、JavaScript を使用してブラウザ上で直接実行する機械学習モデルを作成する方法も紹介します。
ステップ 2: ディープ ラーニングに関する理解をさらに深化させる
ニューラル ネットワークの仕組みを深く理解して、幅広くさまざまな問題に応用する方法を知るためには、まず『Deep Learning with JavaScript』を読むことをおすすめします。GitHub のサンプルが多数収録されているため、JavaScript を使った機械学習を実践的に練習できます。
また、この本では畳み込みニューラル ネットワーク、再帰型ニューラル ネットワーク、強化学習などの高度なトレーニング パラダイムなど、さまざまなニューラル ネットワーク アーキテクチャの使用方法が示されています。さらに、トレーニング中のニューラル ネットワークに実際に何が起こるのかが、わかりやすく解説されています。

TensorFlow ライブラリの主要な作者によって執筆されたこの書籍では、ブラウザまたはノード上の JavaScript ディープ ラーニング アプリの興味深いユースケースと詳細な手順を解説しています。
ステップ 3 : TensorFlow.js とサンプルで練習を積む
練習を重ねることで完璧に近づきます。概念を定着させるためには、実践を積むことがなにより大切です。ニューラル ネットワークの知識があれば、TensorFlow チームが作成したオープンソースのサンプルを簡単に探せるようになります。サンプルはすべて GitHub で入手できるので、コードの仕組みを入念に調べることができます。一般的なユースケースを試すには、mnist のサンプルを使用して、畳み込みニューラル ネットワークから着手するのがよいでしょう。mnist-transfer-cnn のサンプルで転移学習に挑戦したり、addition-rnn のサンプルで再帰型ニューラル ネットワークの構成を確認するのもよいでしょう。

TensorFlow.js に実装された一連のサンプルを含む GitHub のリポジトリ。各サンプル ディレクトリはスタンドアロンであるため、ディレクトリを別のプロジェクトにコピーできます。

TensorFlow のチュートリアルは、Jupyter ノートブックとして作成され、セットアップ不要のホスト型ノートブック環境である Google の Colab で直接実行されます。[Google Colab で実行] ボタンをクリックします。
ステップ 4: 独自の開発を始める
身に着けた知識をテストし、TensorFlow.js のサンプルを使って練習を積んだら、独自プロジェクトを開発する準備は完了です。事前トレーニング済みモデルを参考に、アプリの構築を始めましょう。または、収集したデータや一般公開データセットを使用して独自モデルをトレーニングすることもできます。Kaggle や Google データセット検索で、モデルのトレーニング用にオープン データセットを探すことができます。