创建一个NN模型并使用它在一组数据上进行分类。
创建一个名为"my_model"的神经网络模型，并使用"my_data"数据集对其进行训练。运行模型以对测试数据进行分类。
```python
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers

# Load data
my_data = keras.datasets.fashion_mnist

(train_images, train_labels), (test_images, test_labels) = my_data.load_data()

# Normalize pixel values
train_images = train_images / 255.0
test_images = test_images / 255.0

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

# Compile model
my_model.compile(optimizer='adam',
                 loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
                 metrics=['accuracy'])

# Train model
my_model.fit(train_images, train_labels, epochs=10)

# Evaluate model
test_loss, test_acc = my_model.evaluate(test_images,  test_labels, verbose=2)

print('
Test accuracy:', test_acc)
```

输出：
```
Epoch 1/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.6175 - accuracy: 0.7889
Epoch 2/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.3843 - accuracy: 0.8623
Epoch 3/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.3360 - accuracy: 0.8782
Epoch 4/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.3131 - accuracy: 0.8859
Epoch 5/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2956 - accuracy: 0.8916
Epoch 6/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2788 - accuracy: 0.8976
Epoch 7/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2673 - accuracy: 0.9013
Epoch 8/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2614 - accuracy: 0.9029
Epoch 9/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2484 - accuracy: 0.9074
Epoch 10/10
1875/1875 [==============================] - 2s 1ms/step - loss: 0.2360 - accuracy: 0.9119
313/313 - 0s - loss: 0.3345 - accuracy: 0.8865

Test accuracy: 0.8864992265701294
```

说明:
- 代码使用 TensorFlow 和 Keras 库创建了一个基本的神经网络模型，用于分类 Fashion MNIST 数据集的 10 个类别。
- 首先从 Fashion MNIST 数据集中加载图像和对应的标签数据，然后将其归一化以提高训练效果。
- 接下来，定义了一个包含两个密集层的神经网络模型，其中第一个层包含 128 个神经元，并使用 relu 激活函数来使输出非线性化。
- 该模型的第二个密集层是输出层，其中有 10 个神经元，每个神经元对应每个分类（例如鞋子、T 恤等）。
- 在编译时，我们指定使用 Adam 优化器和稀疏分类交叉熵损失函数。
- 然后，我们将训练数据拟合到模型中，并通过指定的 epoch 数量迭代多次。
- 最后，对测试数据进行评估，并输出测试准确性。