テンソルフローで正規化Gini Coefficientを計算しようとしていますが、そうすることができません。私はnumpyで実行された以下のPythonコードを持っていますが、私はtensorflowを使ってそれを実装したいと思います。アイデアがあれば、助けてください。 tensorflowバージョン(ここでテンソルでの正規化ジニ係数の計算方法
def gini(actual, pred, cmpcol = 0, sortcol = 1):
assert(len(actual) == len(pred))
all = np.asarray(np.c_[ actual, pred, np.arange(len(actual)) ], dtype=np.float)
all = all[ np.lexsort((all[:,2], -1*all[:,1])) ]
totalLosses = all[:,0].sum()
giniSum = all[:,0].cumsum().sum()/totalLosses
giniSum -= (len(actual) + 1)/2.
return giniSum/len(actual)
def gini_normalized(a, p):
return gini(a, p)/gini(a, a)