Lambda einsum().求值调和平均值

Lambda einsum().求值调和平均值,lambda,tensorflow,mean,Lambda,Tensorflow,Mean,我花了一整晚的时间试图建立谐波方程 平均使用张量流。 这里没有我需要使用的东西,这是一个挑战 我自己我没有放弃,只是在一个超出我能力范围的点上 数学方面的摸索能力。 如果您想知道谐波的含义是什么: 这能行吗???? 如果是这样,我应该从这里走到哪里 import tensorflow as tf tf.reset_default_graph() i = tf.constant(0) b = lambda i: tf.add(i, 1) c = lambda i: tf.constant(1

我花了一整晚的时间试图建立谐波方程 平均使用张量流。 这里没有我需要使用的东西,这是一个挑战 我自己我没有放弃,只是在一个超出我能力范围的点上 数学方面的摸索能力。 如果您想知道谐波的含义是什么:

这能行吗???? 如果是这样,我应该从这里走到哪里

import tensorflow as tf

tf.reset_default_graph()

i = tf.constant(0)
b = lambda i: tf.add(i, 1)
c = lambda i: tf.constant(1)
d = lambda c: tf.mul(c, 3)
v1 = lambda b: tf.divide(1, b, name="v1")
v2 = lambda d: tf.divide(1, d, name='v2')

tf.mul(1000, tf.reciprocal(tf.einsum('i,i->1001', v1 * v2).eval()))
顺便说一句,我不太知道如何使用这个网站。任何批评
会有帮助的/

你把问题复杂化了

给定一组样本
VAL
,可以使用以下公式计算调和平均值:

h = 1./tf.reduce_mean(1/vals)
例如:

import tensorflow as tf
vals = tf.constant([1,5,8,10.])
h = 1./tf.reduce_mean(1/vals)
with tf.Session() as sess:
    print(sess.run(h))

我懂了。但它将是4./tf.reduce_平均值(1/vals)。公式为n/(和(1/x(I)…1/x(n))因此,对于大型数据集,您可能会被困在手动输入值的陷阱中。我想用最小的直接输入值乘以两个向量。或者更好的方法是计算输入值,对列表进行排序,然后输入一个值文件。我想您可能正处在这条路径上nessuno…很抱歉评论两次并编辑过多。python问题提供了一个基本事实:len(a)但是我们需要未知数和张量……我的公式是完全正确的。n/(sum(1/x(I)…1/x(n))=1/(sum(1/x(I)…1/x(n))/n。reduce_mean(1/vals)=sum(1/x(I)…1/x(n))/n。因此,1/reduce_mean(1/vals)=n/(sum(1/x(I)…1/x(n))向量如何变成常数?