Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何确定用于回归或分类的特征?_Python_Machine Learning_Scikit Learn - Fatal编程技术网

Python 如何确定用于回归或分类的特征?

Python 如何确定用于回归或分类的特征?,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,我正在处理CSV文件,它有12列。十列为特征,两列表示结果。我用Python的scikit学习库制作了两个回归和分类模型 我发现精度取决于我使用的功能和使用的参数数量 有没有办法确定回归或分类使用的特征,有没有办法找出我的模型的最佳参数 这是我写的简单代码,它有3个特性和一个结果,如何确定最好使用哪些特性(最好使用'par_1'和'par_2',或者只是'par_2','par_1'和'par_3','par u 2',有没有办法获得最佳功能列表 import pandas as pd from

我正在处理CSV文件,它有12列。十列为特征,两列表示结果。我用Python的scikit学习库制作了两个回归和分类模型

我发现精度取决于我使用的功能和使用的参数数量

有没有办法确定回归或分类使用的特征,有没有办法找出我的模型的最佳参数

这是我写的简单代码,它有3个特性和一个结果,如何确定最好使用哪些特性(最好使用
'par_1'
'par_2'
,或者只是
'par_2'
'par_1'
'par_3'
'par u 2
',有没有办法获得最佳功能列表

import pandas as pd
from sklearn.linear_model import LinearRegression


dic = {'par_1': [10, 30, 11, 19, 28, 33, 23],
       'par_2': [1, 3, 1, 2, 3, 3, 2],
       'par_3': [15, 3, 16, 65, 24, 56, 13],
       'outcome': [101, 905, 182, 268, 646, 624, 465]}

df = pd.DataFrame(dic)

variables = df.iloc[:,:-1]
results = df.iloc[:,-1]

print(variables.shape)
print(results.shape)


reg = LinearRegression()
reg.fit(variables, results)

x = reg.predict([[18, 2, 21]])[0]
print(x)

这是一种获取我应该使用的功能列表的方法吗?

如果按参数,您指的是有很多选项的功能

  • 功能消除:Sklearn有几种方法可以实现这一点。模型会自动删除不提供相关信息的要素。有几种方法,因此选择最适合您需要的方法

  • 特征约简:在这种情况下,可以使用PCA或SVD,从特征中提取重要信息,并对特征进行约简。在PCA中,您将丢失原始特征

  • 特征选择/相关性测试:这是一种手动测试方法,您可以使用各种相关性测试将特征与输出列关联,并相应地选择特征


  • 如果“参数”指的是模型超参数,那么请在sklearn的文档中搜索
    GridSearchCV

    您缺少的搜索词是“主成分分析”,或者简单地说是“PCA”。scikit learn还有一页关于这一点:不应轻率地建议PCA进行特征缩减;不能保证顶级主成分比低方差主成分具有更大的预测能力——请参见我所做的研究中的答案,但我找不到答案。有没有办法得到最适合我的模型的功能名称?