我在X_sample中有许多样本矩阵(mxn)。每个矩阵具有相同的行数(相同的m),但具有不同的特征数(diff n)。X 样本中的矩阵示例为:1000x40、1000x35、1000x30、1000x25。我有以下(简化得多的)关于我的问题的代码示例:
Y_train =
Y_test =
clf = ExtraTreesClassifier(n_estimators=500, max_depth=None,max_features="auto",
min_samples_split=1, random_state=0)
for X_data in X_samples:
X_train = X_data[0]
X_test = X_data[1]
clf.fit(X_train,Y_train)
pred_res = clf.predict(X_test)
.....
我在循环外创建了一个参数 max_features="auto"
的分类器。我使用具有不同数量特征的样本矩阵在循环内执行不同的分类。我的问题是,每次循环执行拟合操作时,分类器是否会根据X_train的实际大小(实际特征数)调整max_features
的值。值为"auto"的参数max_features
应获得等于要素数平方根的实际值。也就是说,我应该在循环外部还是循环内创建分类器?有没有办法读取参数max_features
的实际值?
是的。fit
函数不会更改估计器。请参阅文档。