标签: mlxtend

使用 python merf 库构建集成模型

我想merf在集成模型中使用(混合效应随机森林)库,例如通过使用mlensmlxtendpython 库。然而,由于拟合和预测方法的merf结构采用非传统方式,我无法弄清楚如何做到这一点:

from merf import MERF
merf = MERF()
merf.fit(X_train, Z_train, clusters_train, y_train)
y_hat = merf.predict(X_test, Z_test, clusters_test)
Run Code Online (Sandbox Code Playgroud)

有没有办法merf在集成模型中使用该库?问题在于,使用mlens或其他集成库构建集成模型会假定 scikit-learn 结构,其中 fit 方法将X,y作为输入,预测方法将 ,X作为输入。然而,merf显然在拟合和预测方法中都有更多的输入。这是一个简化的语法mlens

from mlens.ensemble import SuperLearner 
ensemble = SuperLearner()
ensemble.add(estimators)
ensemble.add_meta(meta_estimator)
ensemble.fit(X, y).predict(X)
Run Code Online (Sandbox Code Playgroud)

我不限于使用mlensmlxten。任何其他构建集成模型的方法merf也可以。

python ensemble-learning mlxtend

10
推荐指数
1
解决办法
411
查看次数

导入 mlxtend python 的问题

我是python的新手,如果这是一个愚蠢的问题,我很抱歉。

我正在尝试使用 mlxtend,并已使用 pip 安装它。Pip 确认它已安装(当我输入“pip install mlxtend”时,它指出要求已经满足)。但是,当我尝试使用“import mlxtend as ml”在 python 中导入 mlxtend 时,出现错误:“ModuleNotFoundError:没有名为‘mlxtend’的模块”。我使用相同的过程来安装和导入 pandas 和 numpy,它们都有效。有什么建议吗?

我应该注意到,我已经从 mlxtend(先验和关联规则)中删除了我需要的特定代码,这是有效的,但不是一个好的长期策略!

我正在使用 python 版本 3.6.5。

谢谢!

python python-import importerror mlxtend

8
推荐指数
2
解决办法
2万
查看次数

使用随机林进行特征选择时mlxtend投票回归量出错

           from mlxtend.regressor import StackingRegressor
           from sklearn.ensemble.forest import RandomForestRegressor as RFR
           from sklearn.ensemble import GradientBoostingRegressor as GBR
           import xgboost as xgb

            rfr = RFR(n_estimators=500, n_jobs=cc.ncpu, random_state=0)
            gbr = GBR(n_estimators=1000, random_state=0)
            xgr = xgb.XGBRegressor()
            mtr = RFR()  # meta regressor             
            regressors = [rfr, gbr, xgr]
            model = StackingRegressor(regressors=regressors, meta_regressor=mtr)
            param_grid = {
                'fs__threshold': ['median'],
                'fs__estimator__max_features': ['log2'],
                'clf__rfr__max_features': ['auto', 'log2'],
                'clf__gbr__learning_rate': [0.05, 0.02, 0.01],
                'clf__gbr__max_depth': [4, 5, 6, 7],
                'clf__gbr__max_features': ['auto', 'log2'],
                'clf__gbr__n_estimators': [500, 1000, 2000],
                'clf__xgr__learning_rate': [0.001, 0.05, 0.1, 0.2],
                'clf__xgr__max_depth': [2, …
Run Code Online (Sandbox Code Playgroud)

pipeline scikit-learn mlxtend

7
推荐指数
0
解决办法
393
查看次数

plot_decision_regions 错误“当 X 具有超过 2 个训练特征时,必须提供填充值。”

我正在为 SVC Bernoulli 输出绘制二维图。

转换为向量从 Avg word2vec 和标准数据拆分数据进行训练和测试。通过网格搜索找到最好的C和gamma(rbf)

clf = SVC(C=100,gamma=0.0001)

clf.fit(X_train1,y_train)

from mlxtend.plotting import plot_decision_regions



plot_decision_regions(X_train, y_train, clf=clf, legend=2)


plt.xlabel(X.columns[0], size=14)
plt.ylabel(X.columns[1], size=14)
plt.title('SVM Decision Region Boundary', size=16)
Run Code Online (Sandbox Code Playgroud)

接收错误:- ValueError: y 必须是一个 NumPy 数组。成立

还尝试将 y 转换为 numpy。然后提示错误ValueError: y must be an integer array。找到对象。尝试将数组作为 y.astype(np.integer) 传递

最后我将它转换为整数数组。现在是提示错误。ValueError:当 X 有超过 2 个训练特征时,必须提供填充值。

plot svc python-3.x mlxtend

6
推荐指数
2
解决办法
9756
查看次数

从规则冻结集中提取字符串

有以下声明:

rules = association_rules(frequent_itemsets, metric="lift", min_threshold=1.2) 
Run Code Online (Sandbox Code Playgroud)

我得到一个格式的规则数据框:

frozenset({'Co_Apples'})
Run Code Online (Sandbox Code Playgroud)

但我需要将 a 提取Co_Apples为字符串。

我怎样才能做到这一点?

python apriori market-basket-analysis frozenset mlxtend

3
推荐指数
2
解决办法
5014
查看次数