Python
 Computer >> コンピューター >  >> プログラミング >> Python

TensorFlowを使ってAuto MPGデータセットでシーケンシャルモデルを構築する方法

TensorFlowとは

TensorFlowはGoogleが提供するオープンソースの機械学習フレームワークです。Pythonと組み合わせて使用され、アルゴリズムの実装やディープラーニングアプリケーションの開発など、幅広い用途に活用されています。研究用途だけでなく、本番環境での運用にも対応しており、現在多くのAIプロジェクトで採用されている実績あるフレームワークです。

TensorFlowの中核となるのが「テンソル」と呼ばれるデータ構造です。テンソルは多次元配列(またはリスト)を指し、フロー図である「データフローグラフ」のエッジ同士を接続する役割を担います。テンソルは主に以下の3つの属性によって識別されます。

  • ランク(階数):テンソルの次元数を表します。定義されたテンソルが持つ次元の数、すなわちテンソルの階数を意味します。

  • 型(dtype):テンソルの各要素に関連付けられたデータ型を示します。1次元・2次元・n次元など、任意の次元のテンソルを扱うことができます。

  • 形状(shape):テンソルが持つ行数と列数の組み合わせを表します。

TensorFlowのインストール

Windows環境では、以下のコマンドで「tensorflow」パッケージをインストールできます。

pip install tensorflow

回帰問題とAuto MPGデータセット

回帰問題の目的は、価格や確率、「雨が降るかどうか」のような連続値または離散値の出力を予測することです。

今回使用するのは「Auto MPG」データセットです。1970年代〜1980年代の自動車の燃費データを収録したもので、重量、馬力、排気量などの属性が含まれています。これらの情報をもとに、特定の車両の燃費効率(MPG)を予測します。

シーケンシャルモデルとは、複数の層(レイヤー)を順番に積み重ねて構築される、最も基本的なニューラルネットワークの形態です。

実行環境:Google Colaboratory

以下のコードはGoogle Colaboratory(Colab)上で実行しています。Colabはブラウザ上で直接Pythonコードを実行できるサービスで、面倒な環境構築が一切不要なうえ、GPU(グラフィックス処理装置)にも無料でアクセスできます。Jupyter Notebookをベースに構築されているため、ノートブック形式でそのまま動作します。

コード例

print("1つのDense層を持つシーケンシャルモデルを構築しています")
linear_model = tf.keras.Sequential([
   normalizer,
   layers.Dense(units=1)
])

print("予測を実行しています")
linear_model.predict(train_features[:10])
linear_model.layers[1].kernel

print("モデルをコンパイルしています")
linear_model.compile(
   optimizer=tf.optimizers.Adam(learning_rate=0.1),
   loss='mean_absolute_error')

print("モデルをデータに適合させています")
history = linear_model.fit(
   train_features, train_labels,
   epochs=150,
   verbose=0,
   validation_split=0.25)

print("損失の推移をプロットしています")
plot_loss(history)

print("予測結果を評価しています")
test_results['linear_model'] = linear_model.evaluate(
   test_features, test_labels, verbose=0)

コード出典:https://www.tensorflow.org/tutorials/keras/regression

出力結果

TensorFlowを使ってAuto MPGデータセットでシーケンシャルモデルを構築する方法

コードの解説

  • Keras APIを使用して、正規化層と1つのDense層からなるシーケンシャルアーキテクチャのモデルを構築します。

  • 目的変数である「MPG(燃費)」の予測を行います。

  • 線形回帰の一般的な形式は y = mx + b です。このモデルも同じ原理に基づいています。

  • 予測を実行した後、モデルをコンパイルします。ここでは最適化アルゴリズムにAdam(学習率0.1)、損失関数に平均絶対誤差(MAE)を指定しています。

  • 続いて、fit()メソッドでモデルを訓練データに適合させます。エポック数は150、検証データの割合は25%に設定されており、過学習の防止にも役立ちます。

  • 学習過程で記録された損失の推移をプロットし、モデルがどれだけうまく収束しているかを視覚的に確認します。

  • 最後に、テストデータを使ってモデルの汎化性能を評価し、その結果をtest_resultsに保存します。

  1. TensorFlowを使ったAuto MPGデータセットのモデル評価方法をわかりやすく解説

    はじめにTensorFlowは、Googleが提供している機械学習フレームワークです。オープンソースとして公開されており、Pythonと組み合わせて使用することで、アルゴリズムの実装やディープラーニングアプリケーションの開発など、幅広い用途に活用できます。研究用途から本番環境での運用まで、多くの場面で採用されている実績あるフレームワークです。Windows環境では、以下のコマンドを実行するだけで「tensorflow」パッケージをインストールできます。pip install tensorflowテンソルとは何かテンソル(Tensor)は、TensorFlowで使われる基本的なデータ構造です。フ

  2. TensorFlowでAuto MPGデータセットを使ってモデルをデータに適合させる方法

    TensorFlowはGoogleが提供する機械学習フレームワークです。オープンソースとして公開されており、Pythonと組み合わせてアルゴリズムやディープラーニングアプリケーションなどを実装できます。研究用途から本番環境まで幅広く活用されています。 Windowsに「tensorflow」パッケージをインストールするには、以下のコマンドを実行します。 pip install tensorflow テンソル(Tensor)はTensorFlowにおける基本的なデータ構造です。フロー図の中で各ノードをつなぐ役割を担っており、このフロー図は「データフローグラフ」と呼ばれます。テンソルとは、要するに