首页 > 解决方案 > 为什么我得到“AttributeError:'KerasClassifier'对象没有属性'__call__'?

问题描述

有人请澄清为什么我得到以下代码的属性错误?

from sklearn.model_selection import cross_val_score
from keras.models import Sequential
from keras.layers import Dense 

def build_classifier():   #one of the parameter for KerasClassifier
    classifier = Sequential() #initialising ANN by defining sequence of layers
    classifier.add(Dense(units=6,activation='relu',kernel_initializer='uniform',input_dim=11))
    classifier.add(Dense(units=6,activation='relu',kernel_initializer='uniform'))
    classifier.add(Dense(units=1,activation='sigmoid',kernel_initializer='uniform'))
    #compiling the ANN
    classifier.compile(optimizer = 'adam',loss = 'binary_crossentropy',
                      metrics=['accuracy'])
    return classifier

#fitting model for k-fold cross validation
classifier = KerasClassifier(buil_fn = build_classifier,nb_epochs = 100,
                            batch_size=10)  ```

标签: pythonmachine-learningkeras

解决方案


你有一个错字:buil_fn应该是build_fn

还有,nb_epochs应该nb_epoch

#fitting model for k-fold cross validation
classifier = KerasClassifier(build_fn = build_classifier,nb_epoch = 100,
                            batch_size=10) 

推荐阅读