簡體   English   中英

ValueError:即使使用最新的Keras / Theano,無效的參數'metric'也會傳遞給K.function

[英]ValueError: Invalid argument 'metric' passed to K.function even with newest Keras/Theano

當我在Anaconda / Python2.7 / Keras / Theano中運行以下非常簡單的神經網絡時:

import numpy as np
from keras.models import Sequential
from keras.layers import Dense, Activation

# import csv
csv = 'https://raw.githubusercontent.com/uiuc-cse/data-fa14/gh-pages/data/iris.csv'
iris = np.genfromtxt(csv, delimiter = ',', dtype = None)

# Munge data
iris = np.delete(iris, 0, 0)  # delete header row
iris[iris[:,4] == 'setosa', 4] = 1
iris[(iris[:,4] == 'versicolor') | (iris[:,4] == 'virginica'), 4] = 0
iris = iris.astype(float)

# split into data and label classes
data = iris[:,0:4]
labels = iris[:,4]
labels = np.array([labels])
labels = labels.T
labels = labels.astype(int)

# develop NN
model = Sequential()
model.add(Dense(1, input_dim = 4))
model.add(Activation('softmax'))
model.compile(optimizer = 'rmsprop', loss = 'binary_crossentropy', metric = ['accuracy'])

# fit NN
model.fit(data, labels, nb_epoch = 5, batch_size = 50)

我收到以下錯誤:

  File "C:\Users\bAXTER\Anaconda\lib\site-packages\keras\backend\theano_backend.py", line 539, in function
    raise ValueError(msg)

ValueError: Invalid argument 'metric' passed to K.function

我查看了這篇文章 ,但我已經在Anaconda(Python 2.7)上使用了Keras 1.0.5和Theano 0.9.0,並安裝了所有相關軟件包。 此外,帖子提到我可以“從函數調用中刪除metrics=['accuracy']model.compile() ”。 但我找不到'theano_backend.py'中的任何一個術語。 我無法對該用戶的回答發表評論,因為我沒有足夠的聲譽。

關於為什么keras導致此錯誤的任何想法? 我知道這是一個較少探索的python領域,所以任何幫助將不勝感激。

非常尷尬。 我在model.compile命令中拼寫了metric而不是metrics

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM