keras第二课
import keras import numpy as np import matplotlib.pyplot as plt from keras import layers %matplotlib inline x = np.linspace(0,100,30) y = 3*x + 7 + np.random.randn(30) plt.scatter(x,y) model = keras.Sequential() model.add(layers.Dense(1,input_dim=1)) model.summary() #显示 模型的参数 model.compile(optimizer='adam',loss="mse") #model.fit(x,y,epochs=3000) model.predict(x) # 预测 plt.scatter(x,y,c='r') # 画图 plt.plot(x,model.predict(x)) model.predict([150]) # 给出x 预测y import pandas as pd import os print(os.path.abspath(".")) data = pd.read_csv("./data/Advertising.csv") data.head() # 前三列为特征值,sales 为预测值 x = data[data.columns[0:-1]] # 取出前三列 y = data.iloc[:,-1] # 建立模型, model = keras.Sequential() # Dense 实现的是: y_predit = w1 * x1 + w2*x2 + w3*x3 + b model.add(layers.Dense(1,input_dim=3))# 添层输入三个数据 输出1个数据 model.summary() # 编译模型 model.compile(optimizer='adam',loss='mse') # 训练 model.fit(x, y, epochs=2000) model.predict(pd.DataFrame([[300,0,0]]))
'''
手写数据,
第一步:导入数据
第二步:加载训练数据和测试数据
第三步:初始化model,添加Flatten层,展平
第四步:添加层全连接层 输出64个单元,使用relu 激活
第五步:添加输出层
第六步: 编译模型
第七步: 训练模型
第八步: 检测模型 查看得分
第九步: 预测数据,输入测试的数据,查看预测结果和测试数据label值
'''
import keras import numpy as np import matplotlib.pyplot as plt from keras import layers %matplotlib inline import keras.datasets.mnist as mnist (train_image,train_label),(test_image,test_label) = mnist.load_data() train_image.shape plt.imshow(train_image[1000]) train_label.shape train_label[1000] test_image.shape,test_label.shape model = keras.Sequential() model.add(layers.Flatten()) model.add(layers.Dense(64,activation='relu')) model.add(layers.Dense(10,activation='softmax')) model.compile(optimizer='adam',loss='sparse_categorical_crossentropy',metrics=['acc']) model.fit(train_image,train_label,epochs=50,batch_size=512,validation_data=(test_image,test_label)) model.evaluate(train_image,train_label) model.predict(test_image[:10])[0] import numpy as np ll = np.argmax(model.predict(test_image[:10]),axis=1) print(ll) print(test_label[:10])