Python 3.x 对于给定的数据集,我无法编译和匹配占位符。这会导致一个错误

Python 3.x 对于给定的数据集,我无法编译和匹配占位符。这会导致一个错误,python-3.x,conv-neural-network,data-science,Python 3.x,Conv Neural Network,Data Science,我被要求为给定的数据集生成CNN输出。 错误是 ValueError:无法为具有形状“(?,60,11,1)”的张量“占位符_4:0”输入形状(16,10)的值 数据集包括在下面 Att1 Att2 Att3 Att4 Att5 Att6 Att7 Att8 Att9 Att10 Att11 1 0 1 0.9471 C 0 S 0.8561 0.002 0.004 1.8091 1 0 1

我被要求为给定的数据集生成CNN输出。 错误是
ValueError:无法为具有形状“(?,60,11,1)”的张量“占位符_4:0”输入形状(16,10)的值
数据集包括在下面

Att1    Att2    Att3    Att4    Att5    Att6    Att7    Att8    Att9    Att10   Att11
1   0   1   0.9471  C   0   S   0.8561  0.002   0.004   1.8091
1   0   1   0.992   C   0   S   0.8648  0.002   0.003   1.861
1   0   1   1.0722  C   0   S   2.009   0.002   0.003   3.0876
1   0   1   0.994   C   0   S   0.8754  0.002   0.003   1.8744
1   0   1   1.0121  C   0   S   0.9275  0.002   0.003   1.9447
1   0   1   0.9825  C   0   S   0.9579  0.002   0.003   1.9455
1   0   1   0.7372  C   0   S   0.8699  0.002   0.003   1.6122
1   0   1   0.9533  C   0   S   0.8377  0.002   0.004   1.797
1   0   1   0.9813  C   0   S   0.8647  0.002   0.003   1.8511
1   0   1   0.9693  C   0   S   0.8664  0.001   0.003   1.8402
1   0.0005  1   0.9652  C   0   S   0.8625  0.002   0.003   1.8317
1   0   1   1.0564  C   0   S   0.8796  0.002   0.003   1.941
1   0   1   0.9562  C   0   S   0.8503  0.002   0.003   1.8115
1   0   1   0.9581  C   0   S   0.8491  0.002   0.003   1.8113
1   0   1   0.9919  C   0   S   0.9162  0.0015  0.025   1.9121
1   0   1   0.9443  C   0   S   0.8479  0.002   0.003   1.7973
1   0   1   0.7454  C   0   S   0.8722  0.002   0.003   1.6225
1   0   1   0.9979  C   0   S   1.0774  0.002   0.003   2.0803
1   0   1   0.7275  C   0   S   0.9696  0.0014  0.0025  1.7012
1   0   1   1.089   C   0   S   1.9643  0.0015  0.0025  3.0573
2   0.0005  1   0.9699  C   0   S   0   0.002   0.004   1.8268
2   0   1   0.7045  C   0   S   0   0.0015  0.0029  1.5466
2   0   1   0.9584  C   0   S   0   0.002   0.00298 1.8052
22  0   1   0.744   C   0   S   0   0.0015  0.0025  1.598
2   0   1   0.744   C   0   S   0   0.0015  0.0025  1.598
2   0   1   0.7379  C   0   S   0   0.0019  0.003   1.5926
2   0   1   0.756   C   0   S   0   0.0019  0.003   1.6523
2   0   1   0.737   C   0   S   0   0.002   0.0029  1.7028
2   0   1   0.707   C   0   S   0   0.0015  0.0025  4.249
2   0   1   0.7127  C   0   S   0   0.001   0.003   1.5867
2   0   1   0.7177  C   0   S   0   0.002   0.003   1.5921
2   0   1   0.7299  C   0   S   0   0.002   0.003   1.5706
2   0   1   0.7549  C   0   S   0   0.0014  0.003   1.5835
2   0   1   0.6954  C   0   S   0   0.0019  0.003   1.5239
2   0   1   0.7131  C   0   S   0   0.0019  0.003   1.5401
2   0   1   0.712   C   0   S   0   0.0014  0.0025  1.525
2   0   1   0.7074  C   0   S   0   0.002   0.003   1.5304
2   0   1   0.7382  C   0   S   0   0.002   0.0029  1.5704
2   0   1   0.7052  C   0   S   0   0.0019  0.003   1.5693
2   0   1   0.7178  C   0   S   0   0.002   0.003   1.5438
3   0   1   0.9599  C   0   S   1.2939  0.0015  0.003   2.2583
3   0   1   0.957   C   0   S   0   0.0019  0.003   0.9619
3   0   1   1.0089  C   0   S   0.9696  0.0015  0.0025  1.9825
3   0   1   0.7337  C   0   S   0.99    0.002   0.003   1.7287
3   0   1   0.7238  C   0   S   0.9761  0.001   0.003   1.7042
3   0   1   0.9554  C   0   S   0.9685  0.0019  0.003   1.9299
3   0   1   0.7128  C   0   S   0.821   0.002   0.003   1.539
3   0   1   0.7562  C   0   S   1.0262  0.0019  0.003   1.7875
3   0   1   0.7617  C   0   S   0.9947  0.002   0.004   1.7625
3   0   1   0.7543  C   0   S   0.9934  0.002   0.003   1.7527
3   0   1   0.7243  C   0   S   0.9709  0.002   0.003   1.7003
3   0   1   0.7157  C   0   S   1   0.002   0.003   1.7208
3   0   1   0.7075  C   0   S   0.9861  0.0015  0.0025  1.6977
3   0   1   0.7418  C   0   S   0.9477  0.0019  0.003   1.6946
3   0   1   0.701   C   0   S   0.9645  0.0015  0.0025  1.6695
3   0   1   0.7443  C   0   S   1.0016  0.002   0.003   1.751
3   0   1   0.7101  C   0   S   0.9661  0.002   0.003   1.6813
3   0   1   0.706   C   0   S   0.9734  0.002   0.003   1.6845
3   0   1   0.713   C   0   S   0.9791  0.0015  0.0025  1.6962
3   0   1   0.7085  C   0   S   0.9968  0.0015  0.0025  1.7104

我的作业放在下面。最后一部分,即tf.Session()部分产生了一个名为“无法将字符串转换为浮点:'C'”的错误。任何关于这个错误原因的帮助都会帮助我更好地理解

先谢谢你

将tensorflow导入为tf
作为pd进口熊猫
将numpy作为np导入
将matplotlib.pyplot作为plt导入
从sklearn导入线性_模型
从sklearn.preprocessing导入OneHotEncoder
从sklearn.model\u选择导入列车\u测试\u拆分
导入操作系统
操作系统环境[“CUDA_可见设备”]=“0”
df=pd.read_excel(r“C:/Users/ggmah/Desktop/HMM Data updated.xlsx”)
tf.logging.set_详细性(tf.logging.INFO)
dff=一个热编码器(df)
dfg=pd.get_假人(df)
#df.head()
#dff
#dfg
o=列表(df.columns.values)
label_dict=dict()
对于i,枚举中的值(o):
label_dict[i]=值
#标签
#len(标签)
培训费用=220
学习率=0.002
批量大小=16
n_输入=59
n_类=11
x=tf.占位符(“float”,[None,60,11,1])
y=tf.placeholder(“float”,[None,n_类])
def conv2d(x,W,b,步幅=1):
#Conv2D包装,带有偏置和relu激活
#x:输入变量
#W:重量fn
#b:偏见
x=tf.nn.conv2d(x,W,步幅=[1,步幅,步幅,1],padding='SAME')
x=tf.nn.bias_add(x,b)
返回tf.nn.relu(x)
def maxpool2d(x,k=2):
返回tf.nn.max_pool(x,ksize=[1,k,k,1],步长=[1,k,k,1],padding='SAME')
权重={
“wc1”:tf.get_变量('W0',shape=(3,3,1,32),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“wc2”:tf.get_变量('W1',shape=(3,3,32,64),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“wc3”:tf.get_变量('W2',shape=(3,3,64128),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“wd1”:tf.get_变量('W3',shape=(4*4*128128),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
'out':tf.get_变量('W6',shape=(128,n_类),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
}
偏差={
“bc1”:tf.get_变量('B0',shape=(32),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“bc2”:tf.get_变量('B1',shape=(64),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“bc3”:tf.get_变量('B2',shape=(128),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
“bd1”:tf.get_变量('B3',shape=(128),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
'out':tf.get_变量('B4',shape=(11),初始值设定项=tf.contrib.layers.xavier_初始值设定项()),
}
#从tensorflow.examples.tutorials.mnist导入输入数据
#数据=输入数据。读取数据集('data/fashion',one\u hot=True)
X=dfg[['Att1'、'Att2'、'Att3'、'Att4',
“附件五”,
“附件6”,
“附件七”,
“附件8”、“附件9”、“附件10”]]
Y=dfg[['Att11']]
列车X、试验列车X、试验列车y、试验列车y=列车试验列车分割(X、y、列车尺寸=0.88,随机状态=5)
def conv_净值(x、重量、偏差):
#这里我们调用上面定义的conv2d函数,并传递输入图像x、权重wc1和偏差bc1。
conv1=conv2d(x,权重['wc1'],偏差['bc1'])
#最大池(下采样),从2*2矩阵窗口选择最大值并输出14*14矩阵。
conv1=maxpool2d(conv1,k=2)
#卷积层
#这里我们调用上面定义的conv2d函数,并传递输入图像x、权重wc2和偏差bc2。
conv2=conv2d(conv1,权重['wc2'],偏差['bc2'])
#最大池(下采样),从2*2矩阵窗口选择最大值并输出7*7矩阵。
conv2=maxpool2d(conv2,k=2)
conv3=conv2d(conv2,权重['wc3'],偏差['bc3'])
#最大池(下采样),从2*2矩阵窗口选择最大值并输出4*4。
conv3=maxpool2d(conv3,k=2)
#全连通层
#重塑conv2输出以适应完全连接的图层输入
fc1=tf.reforme(conv3,[-1,权重['wd1'])。get_shape()。as_list()[0]])
fc1=tf.add(tf.matmul(fc1,权重['wd1']),偏差['bd1']))
fc1=tf.nn.relu(fc1)
#输出,类预测
#最后,我们将完全连接的层与权重相乘,并添加一个偏差项。
out=tf.add(tf.matmul(fc1,权重['out']),偏差['out']))
返回
pred=转换净值(x、权重、偏差)
成本=tf.reduce\u均值(tf.nn.softmax\u交叉\u熵\u与logits(logits=pred,labels=y))
优化器=tf.train.AdamOptimizer(学习率=学习率)。最小化(成本)
#这里检查预测图像的最大值的索引是否等于实际标记图像。及
#两者都将是列向量。
正确的预测=tf.equal(tf.argmax(pred,1),tf.argmax(y,1))
#计算所有给定图像的精度,并将其平均。
准确度=tf.reduce_平均值(tf.cast(正确的预测,tf.float32))
init=tf.global_variables_initializer()
使用tf.Session()作为sess:
sess.run(初始化)
列车损失=[]
测试损耗=[]
列车精度=[]
测试精度=[]
summary_writer=tf.summary.FileWriter('./Output',sess.graph)
对于范围内的i(培训):
对于范围内的批次(len(train\u X)//批次大小):
批次x=列x[批次*批次尺寸:最小((批次+1)*批次尺寸,长度(列x))]
批次y=序列y[批次*批次大小:最小((批次+1)*批次大小,长度(序列y))]
#运行优化操作(backprop)。
#计算批次损失和准确度
opt=sess.run(优化器,feed_dict={x:batch_x,
y:批(y})
损耗,acc=sess.run([成本,精度],进料量={x:batch\u x,
y:批(y})
打印(“Iter”+str(i)+”,丢失=“+\
X = df[['Att1','Att2','Att3','Att4','Att5','Att6','Att7','Att8','Att9','Att10']]
Y = df[['Att11']]
X = dfg[['Att1','Att2','Att3','Att4',
         'Att5_C', # Note column name change
         'Att6',
         'Att7_S', # Note column name change
         'Att8','Att9','Att10']]

Y = dfg[['Att11']]