Scikit-learn模型参数不可用?如果是这样,有什么替代的机器学习工作台?

我按照这个问题的推荐,使用scikit-learn进行机器学习。令我惊讶的是,它似乎并不提供访问它训练的实际模型的途径。例如,如果我创建一个SVM、线性分类器甚至是决策树,它似乎没有提供查看实际训练模型所选参数的方法。

查看实际模型是有用的,如果模型的创建部分是为了更清楚地了解它使用了哪些特征(例如,决策树)。如果有人想用Python训练模型,然后用其他代码实际实现它,那么查看模型也是一个重要的问题。

我在scikit-learn中遗漏了什么,还是有办法在scikit-learn中获取这些信息?如果没有,哪个免费的机器学习工作台是好的选择,不一定是Python的,其中模型是透明可用的


回答:

拟合模型的参数直接存储在模型实例的属性中。这些拟合参数有一个特定的命名约定:它们都以尾随下划线结束,而用户提供的构造函数参数(即超参数)则没有。

拟合属性的类型取决于算法。例如,对于核支持向量机,你将拥有支持向量、双重系数和截距的数组,而对于随机森林和极端随机树,你将拥有一组二叉树(在内存中以连续的numpy数组形式内部表示,以提高性能:数组结构表示)。

有关更多详细信息,请查看每个模型的文档字符串中的属性部分,例如SVC:

http://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html#sklearn.svm.SVC

对于基于树的模型,你还可以使用一个辅助函数来生成学习树的graphivz_export:

http://scikit-learn.org/stable/modules/tree.html#classification

要找出森林模型中特征的重要性,你还应该查看compute_importances参数,参见以下示例:

http://scikit-learn.org/stable/auto_examples/ensemble/plot_forest_importances.html#example-ensemble-plot-forest-importances-py

http://scikit-learn.org/stable/auto_examples/ensemble/plot_forest_importances_faces.html#example-ensemble-plot-forest-importances-faces-py

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注