本案例使用Python的tensorflow、jupyternotebook、pandas进行训练学习
1.使用Pandas读取数据
import pandas as pd
import tensorflow as tf
df=pd.read_csv("./datas/heart/heart.csv")
df.head()

df.dtypes

#把thal列变成数字编码
df['thal']=pd.Categorical(df['thal'])
df['thal']=df['thal'].cat.codes
df.head()

2.将数据加载到tf.data.Dataset
#要预测的目标,这是一个二分类问题
target=df.pop('target')
df.head()

target.head()

df.head().values

df.shape
target.head().values
#构建dataset,其实是把pandas数据转换成numpy数组进行转换的
dataset=tf.data.Dataset.from_tensor_slices((df.values,target.values))
for features,label in dataset.take(5):
print('Features:{},Label:{}'.format(features,label))

#Shuffle and batch the dataset
train_dataset=dataset.shuffle(len(df)).batch(1)
3.创建并训练模型
model=tf.keras.Sequential([
tf.keras.layers.Dense(10,input_shape=(df.shape[1],)),
tf.keras.layers.Dense(10,activation='relu'),
tf.keras.layers.Dense(1)
])
model.compile(optimizer='adam',
loss=tf.keras.losses.BinaryCrossentropy(from_logits=True),
metrics=['accuracy'])
model.summary()

model.fit(train_dataset,epochs=15)

该文展示了如何利用Python的TensorFlow库和Pandas数据处理库对心脏病数据集进行预处理,包括数据读取、类别编码,然后将数据转化为tf.data.Dataset。接着,构建了一个包含输入层、隐藏层和输出层的神经网络模型,用Adam优化器和二元交叉熵损失函数进行编译,并进行了15轮的训练。
1065

被折叠的 条评论
为什么被折叠?



