import tensorflow as tf
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline
csv数据读取
1
| data = pd.read_csv('./credit-a.csv',header=None)
|
数据统计
1 2 3 4
| data.iloc[:,-1].value_counts() 1 357 -1 296 Name: 15, dtype: int64
|
数据处理
1 2
| x = data.iloc[:,:-1] y = data.iloc[:,-1].replace(-1,0)
|
模型搭建
1 2 3 4
| model = tf.keras.Sequential() model.add(tf.keras.layers.Dense(4,input_shape=(15,),activation='relu'))#第一层 model.add(tf.keras.layers.Dense(4,activation='relu'))#第二层 model.add(tf.keras.layers.Dense(1,activation='sigmoid'))#输出层
|
模型情况
模型优化函数等设置
1 2 3 4
| model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['acc']#记录正确率 )
|
模型训练
1
| history = model.fit(x,y,epochs=100)
|
训练loss、acc数据获取
dict_keys(['loss', 'acc'])
绘制loss的训练变化
1
| plt.plot(history.epoch,history.history.get('loss'))
|

绘制acc的训练变化
1
| plt.plot(history.epoch,history.history.get('acc'))
|
