ホーム » TensorFlow 2.0 » TensorFlow 2.0 : Tutorials : データのロードと前処理 :- NumPy データをロードする

TensorFlow 2.0 : Tutorials : データのロードと前処理 :- NumPy データをロードする

TensorFlow 2.0 : Beginner Tutorials : データのロードと前処理 :- NumPy データをロードする (翻訳/解説)

翻訳 : (株)クラスキャット セールスインフォメーション
作成日時 : 10/06/2019

* 本ページは、TensorFlow org サイトの TF 2.0 – Beginner Tutorials – Load and preprocess data の以下のページを
翻訳した上で適宜、補足説明したものです:

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。
* ご自由にリンクを張って頂いてかまいませんが、sales-info@classcat.com までご一報いただけると嬉しいです。

 

無料セミナー開催中 クラスキャット主催 人工知能 & ビジネス Web セミナー

人工知能とビジネスをテーマにウェビナー (WEB セミナー) を定期的に開催しています。スケジュールは弊社 公式 Web サイト でご確認頂けます。
  • お住まいの地域に関係なく Web ブラウザからご参加頂けます。事前登録 が必要ですのでご注意ください。
  • Windows PC のブラウザからご参加が可能です。スマートデバイスもご利用可能です。

お問合せ : 本件に関するお問い合わせ先は下記までお願いいたします。

株式会社クラスキャット セールス・マーケティング本部 セールス・インフォメーション
E-Mail:sales-info@classcat.com ; WebSite: https://www.classcat.com/
Facebook: https://www.facebook.com/ClassCatJP/

 

データのロードと前処理 :- NumPy データをロードする

このチュートリアルは NumPy 配列からデータを tf.data.Dataset にロードするサンプルを提供します。

このサンプルは .npz ファイルから MNIST データセットをロードします。けれども、NumPy 配列のソースは重要ではありません。

 

セットアップ

from __future__ import absolute_import, division, print_function, unicode_literals
 
import numpy as np
import tensorflow as tf

 

.npz ファイルからロードする

DATA_URL = 'https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz'

path = tf.keras.utils.get_file('mnist.npz', DATA_URL)
with np.load(path) as data:
  train_examples = data['x_train']
  train_labels = data['y_train']
  test_examples = data['x_test']
  test_labels = data['y_test']

 

tf.data.Dataset で NumPy 配列をロードする

サンプルの配列と対応するラベルの配列を持つと仮定して、tf.data.Dataset を作成するために 2 つの配列をタプルとして tf.data.Dataset.from_tensor_slices に渡します。

train_dataset = tf.data.Dataset.from_tensor_slices((train_examples, train_labels))
test_dataset = tf.data.Dataset.from_tensor_slices((test_examples, test_labels))

 

データセットを使用する

データセットをシャッフルしてバッチ処理する

BATCH_SIZE = 64
SHUFFLE_BUFFER_SIZE = 100

train_dataset = train_dataset.shuffle(SHUFFLE_BUFFER_SIZE).batch(BATCH_SIZE)
test_dataset = test_dataset.batch(BATCH_SIZE)

 

モデルを構築して訓練する

Build and train a model

model = tf.keras.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dense(10, activation='softmax')
])

model.compile(optimizer=tf.keras.optimizers.RMSprop(),
                loss=tf.keras.losses.SparseCategoricalCrossentropy(),
                metrics=[tf.keras.metrics.SparseCategoricalAccuracy()])
model.fit(train_dataset, epochs=10)
Epoch 1/10
938/938 [==============================] - 4s 4ms/step - loss: 3.5160 - sparse_categorical_accuracy: 0.8780
Epoch 2/10
938/938 [==============================] - 2s 2ms/step - loss: 0.5325 - sparse_categorical_accuracy: 0.9291
Epoch 3/10
938/938 [==============================] - 2s 2ms/step - loss: 0.3963 - sparse_categorical_accuracy: 0.9459
Epoch 4/10
938/938 [==============================] - 2s 2ms/step - loss: 0.3349 - sparse_categorical_accuracy: 0.9555
Epoch 5/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2991 - sparse_categorical_accuracy: 0.9609
Epoch 6/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2837 - sparse_categorical_accuracy: 0.9643
Epoch 7/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2512 - sparse_categorical_accuracy: 0.9675
Epoch 8/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2379 - sparse_categorical_accuracy: 0.9701
Epoch 9/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2259 - sparse_categorical_accuracy: 0.9726
Epoch 10/10
938/938 [==============================] - 2s 2ms/step - loss: 0.2051 - sparse_categorical_accuracy: 0.9743

<tensorflow.python.keras.callbacks.History at 0x7f96b4ae30b8>
model.evaluate(test_dataset)
157/157 [==============================] - 0s 2ms/step - loss: 0.4985 - sparse_categorical_accuracy: 0.9615

[0.4984860098452034, 0.9615]
 

以上



AI導入支援 #2 ウェビナー

スモールスタートを可能としたAI導入支援   Vol.2
[無料 WEB セミナー] [詳細]
「画像認識 AI PoC スターターパック」の紹介
既に AI 技術を実ビジネスで活用し、成果を上げている日本企業も多く存在しており、競争優位なビジネスを展開しております。
しかしながら AI を導入したくとも PoC (概念実証) だけでも高額な費用がかかり取組めていない企業も少なくないようです。A I導入時には欠かせない PoC を手軽にしかも短期間で認知度を確認可能とするサービの紹介と共に、AI 技術の特性と具体的な導入プロセスに加え運用時のポイントについても解説いたします。
日時:2021年10月13日(水)
会場:WEBセミナー
共催:クラスキャット、日本FLOW(株)
後援:働き方改革推進コンソーシアム
参加費: 無料 (事前登録制)
人工知能開発支援
◆ クラスキャットは 人工知能研究開発支援 サービスを提供しています :
  • テクニカルコンサルティングサービス
  • 実証実験 (プロトタイプ構築)
  • アプリケーションへの実装
  • 人工知能研修サービス
◆ お問合せ先 ◆
(株)クラスキャット
セールス・インフォメーション
E-Mail:sales-info@classcat.com