| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 【机器学习04】岭回归 -> 正文阅读 |
|
[人工智能]【机器学习04】岭回归 |
4 岭回归4.1 简介普通线性回归模型使用基于梯度下降的最小二乘法,在最小化损失函数的前提下,寻找最优模型参数,在此过程中,包括少数异常样本在内的全部训练数据都会对最终模型参数造成程度相等的影响,异常值对模型所带来影响无法在训练过程中被识别出来
J ( θ ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) ? y ( i ) ) 2 + λ ∥ θ ∥ 2 2 = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) ? y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 J(\theta)=\frac{1}{2m}\sum\limits_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2+\lambda \left\|\theta\right\|_2^2=\frac{1}{2m}\sum\limits_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2+\lambda\sum\limits_{j=1}^n\theta_j^{2} J(θ)=2m1?i=1∑m?(hθ?(x(i))?y(i))2+λ∥θ∥22?=2m1?i=1∑m?(hθ?(x(i))?y(i))2+λj=1∑n?θj2? 说明:λ>0
4.2 梯度下降法(GD)岭回归代价函数之梯度求解: α J ( θ ) α θ j = α α θ j ( 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) ? y ( i ) ) 2 + λ ∑ j = 1 n θ j 2 ) \frac{\alpha J(\theta)}{\alpha \theta_j}=\frac{\alpha}{\alpha \theta_j}(\frac{1}{2m}\sum\limits_{i=1}^m(h_\theta(x^{(i)})-y^{(i)})^2+\lambda\sum\limits_{j=1}^n\theta_j^{2}) αθj?αJ(θ)?=αθj?α?(2m1?i=1∑m?(hθ?(x(i))?y(i))2+λj=1∑n?θj2?) = 1 m ∑ i = 1 m [ ( h θ ( x ( i ) ) ? y ( i ) ) x j ( i ) ] + λ α α θ j ( θ 1 2 + θ 2 2 + . . . + θ j 2 + . . . + θ n 2 ) =\frac{1}{m}{\sum\limits_{i=1}^m[(h_\theta(x^{(i)})-y^{(i)})}x_j^{(i)}]+\lambda\frac{\alpha}{\alpha \theta_j}(\theta_1^{2}+\theta_2^{2}+...+\theta_j^{2}+...+\theta_n^{2}) =m1?i=1∑m?[(hθ?(x(i))?y(i))xj(i)?]+λαθj?α?(θ12?+θ22?+...+θj2?+...+θn2?) = 1 m ∑ i = 1 m [ ( h θ ( x ( i ) ) ? y ( i ) ) x j ( i ) ] + 2 λ θ j =\frac{1}{m}{\sum\limits_{i=1}^m[(h_\theta(x^{(i)})-y^{(i)})}x_j^{(i)}]+2\lambda\theta_j =m1?i=1∑m?[(hθ?(x(i))?y(i))xj(i)?]+2λθj?
θ j = θ j ? α α J ( θ ) α θ j = θ j ? α ( 1 m ∑ i = 1 m [ ( h θ ( x ( i ) ) ? y ( i ) ) x j ( i ) ] + 2 λ θ j ) \theta_j=\theta_j-\alpha\frac{\alpha J(\theta)}{\alpha \theta_j}=\theta_j-\alpha(\frac{1}{m}{\sum\limits_{i=1}^m[(h_\theta(x^{(i)})-y^{(i)})}x_j^{(i)}]+2\lambda\theta_j) θj?=θj??ααθj?αJ(θ)?=θj??α(m1?i=1∑m?[(hθ?(x(i))?y(i))xj(i)?]+2λθj?) 其中, h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + . . . + θ n x n = ∑ i = 0 n θ i x i = θ T x , x 0 ( i ) = 1 h_\theta(x)=\theta_0+\theta_1x_1+\theta_2x_2+...+\theta_nx_n=\sum\limits_{i = 0}^n{{\theta_i}{x_i}}={\theta^T}x,x_0^{(i)}=1 hθ?(x)=θ0?+θ1?x1?+θ2?x2?+...+θn?xn?=i=0∑n?θi?xi?=θTx,x0(i)?=1 4.3 Sklearn之岭回归岭回归相关API:
案例:加载abnormal.txt文件中的数据,基于岭回归算法训练回归模型
4.4 数据集划分与交叉验证
在机器学习模型中,需要人工选择的参数称为 GridSearchCV(模型调参利器):包含GridSearch和CV,即网格搜索和交叉验证 GridSearch:一种调参手段,即穷举搜索:在所有候选的参数选择中,通过循环遍历,尝试每一种可能性,表现最好的参数就是最终的结果。这种方法的主要缺点是比较耗时! 所以网格搜索适用于三四个(或者更少)的超参数(当超参数的数量增长时,网格搜索的计算复杂度会呈现指数增长,这时候则使用随机搜索),用户列出一个较小的超参数值域,这些超参数值域的笛卡尔积(排列组合)为一组超参数。网格搜索算法使用每组超参数训练模型并挑选验证集误差最小的超参数组合 GridSearchCV的常用参数含义:模型调参利器(网格搜索与交叉验证)GridSearchCV参数详解
4.5 Sklearn之模型保存与加载模型训练是一个耗时的过程,一个优秀的机器学习模型是非常宝贵的 可以将模型保存到磁盘中,也可以在需要使用的时候从磁盘中重新加载模型即可,不需要重新训练,与训练好的模型具有相同的参数 模型保存与加载相关API:
案例:将训练好的模型保存到磁盘中
4.6 案例:波士顿房价预测
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:29:15- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |