我正在尝试训练一个简单的神经网络,但我遇到了这个错误,我尝试了在类似问题中找到的其他一些答案,但没有成功。我想在TYPE=0或TYPE=1之间进行分类。最后的链接是我的训练数据集的一个例子。
tensorflow.python.framework.errors_impl.UnimplementedError: Cast string to float is not supported
[[node sequential/Cast (defined at /Users/Administrator/Desktop/New folder/ne.py:31) ]] [Op:__inference_train_function_587]
Function call stack:
train_function
这是我的NN代码
model = keras.Sequential([
keras.layers.Dense(1560, input_shape=(6,), activation='relu'),
keras.layers.Dense(1, activation='sigmoid')
])
model.compile(optimizer='adam', loss=keras.losses.BinaryCrossentropy(from_logits=True), metrics=['accuracy'])
model.fit(X_train, y_train, batch_size=1,epochs=5)
下面是我的excel格式数据集的一个例子,希望能帮助
MPF MF PSD F95 BMI PARITY TYPE
e001_1 0.0048 0.005 6 0.008 27.6 2 1
e001_2 0.0077 0.005 6 0.008 27.6 2 1
e001_3 0.004 0.005 6 0.008 27.6 2 1
e001_4 0.0024 0.004 6 0.008 27.6 2 1
e001_5 0.0025 0.004 6 0.008 27.6 2 1
e001_6 0.0034 0.004 6 0.008 27.6 2 1
e003_1o 7.52E-04 5.45E-04 6 0.001089918 34 0 0
e003_1o 5.31E-04 5.45E-04 6 0.001089918 34 0 0
e003_1o 6.49E-04 5.45E-04 6 0.001089918 34 0 0
e003_1o 9.98E-04 5.45E-04 6 0.001089918 34 0 0
e003_1o 0.001258642 5.45E-04 6 0.001089918 34 0 0
e003_1o 5.76E-04 5.45E-04 6 0.001089918 34 0 0
您没有提供如何加载csv文件,因此很难确切知道发生了什么。
我稍微修改了您的代码,并使用panda加载数据,它确实起到了作用。
这是代码
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
from tensorflow.keras.layers.experimental import preprocessing
from matplotlib import pyplot as plt
import pandas as pd
import numpy as np
import datetime
example_ds = pd.read_csv(
"Example.csv")
print(example_ds)
y_train = example_ds.loc[:, 'TYPE']
x_train = example_ds.loc[:, 'MPF': 'PARITY']
model = keras.Sequential([
keras.layers.Dense(1560, input_shape=(6,), activation='relu'),
keras.layers.Dense(1, activation='sigmoid')
])
model.compile(optimizer='adam', loss=keras.losses.BinaryCrossentropy(from_logits=True), metrics=['accuracy'])
model.fit(x_train, y_train, batch_size=1,epochs=5)