機械学習・深層学習モデルの開発を始めましょう。ここでは、簡単な例として、手書き数字認識(MNISTデータセット)を使って深層学習モデルを開発し、保存する方法を説明します。以下はTensorFlowとKerasを使った例です。
ステップ1: 環境のセットアップ
まず、必要なライブラリをインストールします。以下のコマンドを使用してください:
pip install tensorflow
ステップ2: データセットの準備
MNISTデータセットをロードして、トレーニングとテストデータに分けます。
import tensorflow as tf
from tensorflow.keras.datasets import mnist
from tensorflow.keras.utils import to_categorical
# MNISTデータセットをロード
(x_train, y_train), (x_test, y_test) = mnist.load_data()
# データを正規化
x_train = x_train.astype('float32') / 255
x_test = x_test.astype('float32') / 255
# ラベルをカテゴリカルデータに変換
y_train = to_categorical(y_train, 10)
y_test = to_categorical(y_test, 10)
# データの形状を調整
x_train = x_train.reshape((x_train.shape[0], 28, 28, 1))
x_test = x_test.reshape((x_test.shape[0], 28, 28, 1))
ステップ3: モデルの構築
次に、CNN(畳み込みニューラルネットワーク)モデルを構築します。
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense
model = Sequential([
Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
MaxPooling2D((2, 2)),
Conv2D(64, (3, 3), activation='relu'),
MaxPooling2D((2, 2)),
Flatten(),
Dense(64, activation='relu'),
Dense(10, activation='softmax')
])
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])
model.summary()
ステップ4: モデルのトレーニング
データセットを使ってモデルをトレーニングします。
model.fit(x_train, y_train, epochs=5, batch_size=64, validation_split=0.2)
ステップ5: モデルの評価
トレーニングしたモデルをテストデータで評価します。
test_loss, test_acc = model.evaluate(x_test, y_test)
print(f"Test accuracy: {test_acc}")
ステップ6: モデルの保存
トレーニング済みモデルを保存します。
model.save('mnist_model.h5')
これで、基本的な深層学習モデルの開発と保存が完了しました。
スポンサーリンク