如何在tensorflow中使用numpy创建自定义成本函数

时间:2019-01-08 20:40:20

标签: python numpy tensorflow

我对tensorflow还是很陌生,我想使用numpy为我描述的项目here

定义自己的成本函数

这是我复制的代码:

# Backward propagation
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(labels=y, logits=yhat))
updates = tf.train.GradientDescentOptimizer(0.01).minimize(cost)

# Run SGD
sess = tf.Session()
init = tf.global_variables_initializer()

sess.run(updates, feed_dict={X: train_X, y: train_y})

我想将此成本函数更改为我已经使用numpy定义的另一个函数。有没有一种方法可以将y张量转换为numpy数组,然后再返回张量。

cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(labels=y, logits=yhat))

使用transpose()eval()并没有成功,因为有必要在tf.session期间运行。

这是numpy中的损失函数:

def loss_perunage(ones_array,votearray):
    results = countresults(ones_array,votearray)
    return 1 - results[0]/int(len(a))

该函数使用另一个数据集来计算结果的好坏。 我希望这笔费用是费用。

希望你们能给我一些提示,如果有不清楚的地方随时询问。

编辑:对不起,我的英语,我不是母语

0 个答案:

没有答案