Keras自定义矩阵:ROC曲线
我正在使用keras网站上给出的自定义矩阵:Keras自定义矩阵:ROC曲线,keras,Keras,我正在使用keras网站上给出的自定义矩阵: def compute_roc(y_true,y_pred): y_true=K.eval(y_true)#.eval(session=sess) y_pred=K.eval(y_pred)#eval(session=sess) roc=metrics.roc_曲线(y_真,y_pred,位置标签=2) roc=tf.to_float(roc,name='ToFloat') 回归中华民国 但我在“K.eval(y_true)”上出错了 Invali
def compute_roc(y_true,y_pred):
y_true=K.eval(y_true)#.eval(session=sess)
y_pred=K.eval(y_pred)#eval(session=sess)
roc=metrics.roc_曲线(y_真,y_pred,位置标签=2)
roc=tf.to_float(roc,name='ToFloat')
回归中华民国
但我在“K.eval(y_true)”上出错了
InvalidArgumentError回溯(最近一次调用上次)
在()
20#disc.load_权重(os.path.join(path,model#u name+'.h5'))
21 sgd=sgd(lr=0.001,衰变=1e-6,动量=0.9,nesterov=True)
--->22.disc.compile(loss='classifical_crossentropy',优化器=sgd,metrics=['accurity',
计算(roc])
23#plot_model(model,to_file='model.png')
24打印(“已加载光盘型号”)
编译中的/usr/local/lib/python2.7/dist-packages/keras/engine/training.pyc(self、优化器、损耗、度量、损耗权重、,
样本权重模式、加权度量、目标张量、**kwargs)
912追加度量(i,度量名称,度量结果)
913
-->914处理度量(输出度量)
915句柄度量(输出加权度量,权重=权重)
916
/usr/local/lib/python2.7/dist-packages/keras/engine/training.pyc in handle_metrics(metrics,weights)
909度量结果=加权度量fn(y_真,y_pred,
910重量=重量,
-->911面罩=面罩[i])
912追加度量(i,度量名称,度量结果)
913
/usr/local/lib/python2.7/dist-packages/keras/engine/training.pyc in weighted(y_true,y_pred,weights,mask)
424 """
425#score_数组的ndim>=2
-->426分数数组=fn(y_真,y_pred)
427如果掩码不是无:
428#将遮罩投射到floatX以避免在场景中向上投射float64
在compute_roc中(y_true,y_pred)
4.
5 def compute_roc(y_true,y_pred):
---->6 y_-true1=K.eval(y_-true)#.eval(session=sess)
7#y#u pred1=K.eval(y#u pred)#eval(session=sess)
8 roc=0#度量。roc#U曲线(y#U真,y#U pred,位置标签=2)
/usr/local/lib/python2.7/dist-packages/keras/backend/tensorflow_backend.pyc
在eval(x)中
658 ```
659 """
-->660返回到_dense(x).eval(session=get_session())
661
662
/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.pyc
评估中(自我、反馈、会话)
539
540 """
-->541使用默认会话返回评估会话(self、feed、dict、self.graph、session)
542
543
/usr/local/lib/python2.7/dist-packages/tensorflow/python/framework/ops.pyc
使用默认会话(张量、提要、图表、会话)进行评估
4083“张量图与会话图不同”
4084“图形”)
->4085返回会话。运行(张量、提要)
4086
4087
/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.pyc
运行中(自我、获取、馈送、选项、运行元数据)
893尝试:
894结果=self.\u运行(无、取数、输入、选项、,
-->895运行(元数据)
896如果运行\u元数据:
897 proto_data=tf_session.tf_GetBuffer(run_metadata_ptr)
/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.pyc
运行中(self、handle、fetches、feed\u dict、options、run\u元数据)
1122如果final_获取或final_目标或(句柄和馈送dict_张量):
1123 results=self.\u do\u run(句柄、最终目标、最终获取、,
->1124提要(dict张量、选项、运行元数据)
1125其他:
1126结果=[]
/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.pyc
在运行中(self、handle、target、fetch、feed、dict、options、,
运行(元数据)
1319如果句柄为“无”:
1320返回self.\u do\u调用(\u run\u fn,self.\u会话,提要,获取,目标,
->1321选项,运行(元数据)
1322其他:
1323返回self.\u do\u调用(\u prun\u fn,self.\u会话、句柄、提要、获取)
/usr/local/lib/python2.7/dist-packages/tensorflow/python/client/session.pyc
in_do_call(self、fn、*args)
1338键错误除外:
1339通行证
->1340提升类型(e)(节点定义、操作、消息)
1341
1342定义扩展图(自):
InvalidArgumentError:必须为占位符张量'dense_6_target'输入一个值,其中包含dtype float和shape[?,?]
[[Node:dense_6_target=Placeholder[dtype=DT_FLOAT,shape=[?,?],[u device=“/job:localhost/replica:0/task:0/gpu:0”]()]
[[Node:dense_6_target/_833=\u Recv[client_terminated=false,Recv_device=“/job:localhost/replica:0/task:0/cpu:0”,
send_device=“/job:localhost/replica:0/task:0/gpu:0”,
发送\u设备\u化身=1,张量\u name=“边缘\u 4\u密集\u 6\u目标”,
张量类型=DT浮点数,
_device=“/job:localhost/replica:0/task:0/cpu:0”]()]]
由op u'dense_6_target'引起,定义为:
文件“/usr/lib/python2.7/runpy.py”,第174行,在运行模块中作为主模块
“\uuuuu main\uuuuuuuuuuuuuuuuuuuuuuuuu”,fname,loader,pkg\u name)
文件“/usr/lib/python2.7/runpy.py”,第72行,在运行代码中
run_globals中的exec代码
文件“/usr/local/lib/python2.7/dist packages/ipykernel_launcher.py”,第行
16,在
app.launch_new_instance()
文件“/usr”/