1.逻辑回归(Logistic Regression)又常被成为“逻辑斯蒂回归”,实质上是一个二元分类问题。

逻辑回归代价函数:

【机器学习经典算法源码分析系列】-- 逻辑回归 

代价函数导数:

【机器学习经典算法源码分析系列】-- 逻辑回归

Matlab实现:

 【机器学习经典算法源码分析系列】-- 逻辑回归

采用matlab中自带的无约束最小化函数fminunc来代替梯度下降法(避免学习率的选择)。

fminunc高级函数的使用参考:http://blog.csdn.net/gzp444280620/article/details/49272977

 【机器学习经典算法源码分析系列】-- 逻辑回归 

自定义函数与fminunc函数之间的调用关系:

【机器学习经典算法源码分析系列】-- 逻辑回归

 

对于二维线性或者非线性问题,我们可以通过画出决策边界来可视化数据集,从而更直观判断模型的准确度。

【机器学习经典算法源码分析系列】-- 逻辑回归

 

对于可以用简单线性划分的数据集,不需要进行模型复杂度和正则化处理,应用起来往往很简单。

 

2.非线性决策边界问题:

对于边界复杂问题,简单的线性边界划分无法实现,需要增加特征变量的阶数来实现非线性划分。这样就会导致模型的复杂度增加,如何权衡模型的准确度和复杂度?——正则化处理。

 

1)非线性模型复杂度的选择:下面的代码只针对二维特征变量,单一特征变量的最高阶数可以自行试凑。

【机器学习经典算法源码分析系列】-- 逻辑回归

【机器学习经典算法源码分析系列】-- 逻辑回归

 

2)正则化参数的选择:

过小:对模型复杂度惩罚不够,过拟合

过大:模型太过简单,训练准确率下降,欠拟合

【机器学习经典算法源码分析系列】-- 逻辑回归 

【机器学习经典算法源码分析系列】-- 逻辑回归

 

正则化处理后的代价函数:

【机器学习经典算法源码分析系列】-- 逻辑回归

 

代价函数导数:

【机器学习经典算法源码分析系列】-- 逻辑回归

正则化代码:

【机器学习经典算法源码分析系列】-- 逻辑回归

 

 

PS: 应用逻辑回归模型也可以进行多类分类,处理方法是多次重复进行二分类,每次选择一个正向类,其余各类都视作负向类。

 

个人笔记:http://www.cnblogs.com/always-chang/p/5935655.html

源码分析:http://pan.baidu.com/s/1nu7rwVZ 密码:2ra2

相关文章:

  • 2022-01-08
  • 2021-06-07
  • 2021-04-29
  • 2021-07-29
  • 2022-12-23
猜你喜欢
  • 2021-10-12
  • 2021-12-24
  • 2021-07-24
  • 2021-06-25
  • 2021-08-25
  • 2021-06-12
  • 2021-09-22
相关资源
相似解决方案