sigmoid函数
import tensorflow as tf
from tensorflow.keras import layers
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv(r'c:\Users\Administrator\Desktop\credit-a.csv',header=None)
print(data.iloc[:,-1].value_counts())
value_counts()是一种查看表格某列中有多少个不同值的快捷方法,并计算每个不同值有在该列中有多少重复值。
python value_counts()的基础及进阶用法(超详细)
python中pandas库中DataFrame对行和列的操作使用方法
print(history.history.keys()) #查看keras 训练模型 history.history的关键字
import tensorflow as tf
from tensorflow.keras import layers
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
data = pd.read_csv(r'c:\Users\Administrator\Desktop\credit-a.csv',header=None)
# print(data.iloc[:,-1].value_counts())
# print(data)
# fig = plt.figure()
# plt.scatter(data.TV, data.sales)
# plt.show()
x = data.iloc[:,:-1]
y = data.iloc[:,-1].replace(-1,0)
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'))
#一个输出层,激活函数用sigmoid,逻辑回归,使最后返回的是从0-1的概率值
model.add(tf.keras.layers.Dense(1,activation='sigmoid'))
model.compile(optimizer='adam',loss='binary_crossentropy',metrics=['acc'])
history=model.fit(x,y,epochs=100)
# history.history是个字典
print(history.history.keys()) # dict_keys(['loss', 'acc'])取出 loss 和 acc 绘图
#loss和acc画图
fig = plt.figure()
plt.subplot(121)
plt.plot(history.epoch,history.history.get('loss'))
plt.title('loss',color='r')
plt.subplot(122)
plt.plot(history.epoch,history.history.get('acc'))
plt.title('acc',color='b')
plt.show()