from tensorflow.python.keras.preprocessing.image import load_img,img_to_array
from tensorflow.python.keras.models import Sequential,Model
from tensorflow.python.keras.layers import Dense,Flatten,Input
import tensorflow as tf
from tensorflow.python.keras.losses import sparse_categorical_crossentropy
from tensorflow.python import keras
class SingleNN(object):
#建立神经网络模型
model=keras.Sequential([
keras.layers.Flatten(input_shape=(28,28)),#将输入数据进行修改展平
keras.layers.Dense(128,activation=tf.nn.relu),
keras.layers.Dense(10,activation=tf.nn.softmax)
])
def _init_(self):
(x_train,y_train),(x_test,y_test)=keras.datasets.fashion_mnist.load_data()
#编译模型优化器、损失、准确率
def singlenn_compile(self):
singlenn_compile(optimizer=keras.optimizer.adam(le=0.001),
loss=tf.keras.losses.sparse_categorical_crossentropy,
metrics=['accuracy'])
return None
#模型训练
def singlenn_fit(self):
singleNN.model.fit(self.x_train,self.y_train,epochs=10)
return None
def single_evalute(self):
test_loss,test_acc=singleNN.model.evalute(self.x_tesy,self.y_test)
print(test_loss,test_acc)
return None
if name =='main' :
snn=singleNN()
snn.singlenn_compile()
snn.singlenn_fit()
snn.single_evalute()
if name=='main'