3886-云风-人工智能学科-数据挖掘 扫二维码继续学习 二维码时效为半小时

(0评价)
价格: 免费

sklearn.linear_model.Ridge(岭回归:线性回归的基础上加上正则项,以处理多重共线性)

1)核心参数alpha:正则项系数,默认1,增大以消除多重共线性带来的影响,但过大会削弱模型本来已有的信息

2)通过调节alpha,模型的泛化能力可能上升。但现实生活中,很少有带有多重共线性的数据,使用岭回归和lasso模型表现一般会降低,

3)泛化能力没有直接衡量指标,只能通过R²和方差来大致判断(var()查看方差,方差反映真实值和预测值的差距)

 

[展开全文]
3077_Yuki · 2022-07-19 · 自由式学习 0

岭回归解决多重共线性

矩阵的逆存在的条件:行列式不为0

[展开全文]
3077_Yuki · 2022-07-19 · 自由式学习 0

2、衡量是否拟合了足够的信息:R²,越接近1越好

1) from sklearn.metrics import r2_score
r2_score(ytest,yhat)
2) reg.score(xtest,ytest)
3) cross_val_score(reg,x,y,cv=10,scoring="r2").mean()
R²为负说明模型拟合十分糟糕

[展开全文]
3077_Yuki · 2022-07-18 · 自由式学习 0

如何用sklearn.metrics中的roc_curve函数计算 

y_true:真实标签

y_score:decision_function返回的距离or置信度分数or正类样本的概率

pos_label:填上1,表示1为正样本

返回FPR,recall和阈值

如何计算auc?

from sklearn.metrics import roc_auc_score
roc_auc_score(y,clf.decision_function(x))

ROC曲线上如何画x=y的直线?
plt.plot([0,1],[0,1],linestyle="--",c="black")

[展开全文]
3077_Yuki · 2022-07-14 · 自由式学习 0

SVM实现概率预测:重要参数probabiity,接口decision_function

重要参数probabiity:布尔值,默认为False,是否启用概率估计,启用后可以调用predict_prob和predict_log_proba接口。该功能会减慢SVM运算速度

接口decision_function返回SVM的置信度(衡量样本有多大可能属于某一类)

对二维数据decision_function生成距离,是一维,表示每个点到决策边界的距离,predict_proba生成两列的概率,是二维

[展开全文]
3077_Yuki · 2022-07-14 · 自由式学习 0

二分类SVC中的样本不均衡问题:重要参数class_weight,接口fit中的参数sample_weight

class_weight:默认为None,可输入字典或balanced(SVM通过在C上加权重影响样本均衡)

sample_weight:数组,必须对应输入fit特征矩阵的每个样本

 

分类模型天生倾向多数的类

SVM样本总量对运算速度影响大

[展开全文]
3077_Yuki · 2022-07-14 · 自由式学习 0

在数据空间中找出一个超平面作为决策边界,利用决策边界对数据进行分类,决策边界是比数据空间小一维的空间

[展开全文]
3077_Yuki · 2022-07-14 · 自由式学习 0

重要参数C

权衡”训练样本正确分类“和”决策函数边际最大化“(边际更宽的决策边际更好)

浮点数,默认为1,必须大于等于0

调参:一般从0开始调,C越大,决策边界越小

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

边际更宽的决策边际更好

找最大边际和被分错样本之间的平衡

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

poly通常用网格搜索调,rbf 

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

与 参数

1) degree:默认3,只在poly时可选

2) gamma:默认auto,除linear都可用

3) coef0:默认0,只在poly,sigmoid有效

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

np.c_类似np.vstack的功能

ax.text为图像上放上文字

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

如何使用np.mgrid生成网格?

np.mgrid合并np.linspace和np.meshgrid

xx,yy=np.mgrid[xmin:xmax:200j,ymin:ymax:200j]

[起始值:结束值:步长]

200j表示起始值和结束值之间创建200个点,结束值包含在内

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0

三、非线性SVM与核函数

1、核变换:把数据投影到高维空间中,寻找能将数据完美分割的超平面。

2、核函数使得 高维空间的任意两个向量的点积一定可以用低维空间这两个向量的某种计算表示

3、重要参数kernel:

1)"linear":线性核函数,线性

2) "poly": 多项式核,偏线性

3) "sigmoid": 双曲正切核,非线性

4) "rbf": 高斯径向基,偏非线性

[展开全文]
3077_Yuki · 2022-07-13 · 自由式学习 0