0
オプティマイザ機能としてジニ係数を持つ単純なNNモデルを計算したいと思います。 、誰も私に何を伝えることができます:「なし値はサポートされません。ValueErrorを」:Pythonでケラを持つジニ係数
def gini(actual, pred):
nT = K.shape(actual)[-1]
n = K.cast(nT, dtype='int32')
inds = K.reverse(tf.nn.top_k(pred, n)[1], axes=[0])
a_s = K.gather(actual, inds)
a_c = K.cumsum(a_s)
n = K.cast(nT, dtype=K.floatx())
giniSum = K.cast(K.sum(a_c)/K.sum(a_s), dtype=K.floatx()) - (n + 1)/2.0
return giniSum/n
def gini_normalized(a, p):
return gini(a, p)/gini(a, a)
そして、これは私が私のモデルをコンパイルする方法である:
model = Sequential()
model.add(Dense(32, input_shape=(60,)))
model.add(Activation('relu'))
model.add(Dense(2, activation='softmax'))
sgd = optimizers.SGD(lr=0.01, decay=1e-6, momentum=0.9, nesterov=True)
model.compile(loss=gini_normalized, optimizer=sgd)
return model
私はいつもこのエラーが取得ここに私のジニ機能です私の間違いですか?