scikit-learn ライブラリを継承した自作クラスのオブジェクト生成時にエラー : TypeError: ‘module’ object is not callable が発生してしまう。又、自身のオブジェクトを表す self が 意図に反して None となってしまう。

最終更新日:

自作クラスのオブジェクト作成時の挙動と、自身のオブジェクトを表す self の挙動に関して、
以下の2つの不明点があり解決出来ません。
解決方法を教えて頂きたいですm(__)m
1. 1つ目の不明点(自作クラスのオブジェクト生成時の挙動)
scikit-learn ライブラリの推定器 estimator の基本クラス sklearn.base.BaseEstimator,sklearn.base.ClassifierMixin を多重継承した、
自作クラス class EnsembleLearningClassifier( BaseEstimator, ClassifierMixin ): を生成する際に、以下のような記述をすると、コンパイルエラーが出てしまう。
エラー内容は、TypeError: ‘module’ object is not callable
import EnsembleLearningClassifier
ensemble_clf1 = EnsembleLearningClassifier(
classifiers = [ pipe1, pipe2, pipe3 ],
class_labels = [ “Logistic Regression”, “Decision Tree”, “k-NN” ] )
以下のようにすると、コンパイルエラーにならない。
import EnsembleLearningClassifier
ensemble_clf1 = EnsembleLearningClassifier.EnsembleLearningClassifier(
classifiers = [ pipe1, pipe2, pipe3 ],
class_labels = [ “Logistic Regression”, “Decision Tree”, “k-NN” ] )
2. 2つ目の不明点(自身のオブジェクトを表す self の挙動)
自作クラス EnsembleLearningClassifier のオブジェクト作成後、自身のオブジェクトを表す self の 属性値が classifiers=None になってしまう。
以下、オブジェクトの生成コード
ensemble_clf1 = EnsembleLearningCla

サイト名: スタック・オーバーフロー
2017年8月27日

無料メールマガジン登録

週1回、注目のAIニュースやイベント情報を
編集部がピックアップしてお届けしています。

こちらの規約にご同意のうえチェックしてください。

規約に同意する