机器学习(二)逻辑回归
2015-05-01 13:30
225 查看
逻辑回归
原文地址:/article/7649357.html
作者:hjimce
逻辑回归于线性回归的区别:
(1)线性回归的函数拟合,用于数值预测,逻辑回归是二分类算法,用于分类
(2)线性回归模型:
逻辑回归模型:
也就是说逻辑回归其实是在线性回归的基础上,加了一个激励函数映射。因为逻辑回归是二分类算法,因此对于训练数据,其只有两种取值1、0,代表两个分类,用于预测分类的时候,输入值大于0.5的,则把它归为1类,否者归为0类。因此对于训练数据需要满足一下概率公式:
我们的训练过程,就是要训练参数θ,使得以上的两个概率尽量为1
(3)线性回归常用代价函数定义为:
逻辑回归代价函数为:
其实上式可以分开来写,对于类1,总代价函数为::
对于类0,总代价函数为:
因此:
我们的目的便是要使得代价函数J(θ)的数值最小,使之尽量的趋近于0。
(4)梯度下降法求解。
代价函数简化:
OK,公式化简完毕之后,接着就要对其求偏导数了:
求导完毕,接着就是直接使用梯度下降法的公式:
接着就写一写matlab代码,训练一下,只有自己写过了代码,才能真正熟悉这个算法:
原图 分类结果
************************作者:hjimce 联系qq:1393852684更多资源请关注我的博客:http://blog.csdn.net/hjimce
原文地址:/article/7649357.html
作者:hjimce
逻辑回归于线性回归的区别:
(1)线性回归的函数拟合,用于数值预测,逻辑回归是二分类算法,用于分类
(2)线性回归模型:
逻辑回归模型:
也就是说逻辑回归其实是在线性回归的基础上,加了一个激励函数映射。因为逻辑回归是二分类算法,因此对于训练数据,其只有两种取值1、0,代表两个分类,用于预测分类的时候,输入值大于0.5的,则把它归为1类,否者归为0类。因此对于训练数据需要满足一下概率公式:
我们的训练过程,就是要训练参数θ,使得以上的两个概率尽量为1
(3)线性回归常用代价函数定义为:
逻辑回归代价函数为:
其实上式可以分开来写,对于类1,总代价函数为::
对于类0,总代价函数为:
因此:
我们的目的便是要使得代价函数J(θ)的数值最小,使之尽量的趋近于0。
(4)梯度下降法求解。
代价函数简化:
OK,公式化简完毕之后,接着就要对其求偏导数了:
求导完毕,接着就是直接使用梯度下降法的公式:
接着就写一写matlab代码,训练一下,只有自己写过了代码,才能真正熟悉这个算法:
close all; clear; clc; %生成测试数据 mu = [2 3];%测试数据1 SIGMA = [1 0; 0 2]; r1 = mvnrnd(mu,SIGMA,100); plot(r1(:,1),r1(:,2),'.'); hold on; mu = [10 10];%测试数据2 SIGMA = [ 1 0; 0 2]; r2 = mvnrnd(mu,SIGMA,100); plot(r2(:,1),r2(:,2),'.'); data(:,2:3)=[r1;r2]; data(:,1)=1; %训练数据标号 flag=[ones(100,1);zeros(100,1)]; [m,n]=size(data); w=zeros(n,1); %梯度下降法 sigma=0.05; i=1; while i<10000 for j=1:n %先计算激励函数值 pp=data*w; pp=exp(-data*w); gx=1./(1+exp(-data*w)); %计算偏导数值 r=-1/m*sum((flag-gx).*data(:,j)); w(j)=w(j)-sigma*r; end i=i+1; end %绘制分类结果 figure(2); hold on; for i=1:m if gx(i)>0.5 plot(data(i,2),data(i,3),'.b'); else plot(data(i,2),data(i,3),'.y'); end end %绘制决策边界直线 w(2)=w(2)/sqrt(w(2)*w(2)+w(3)*w(3)); w(3)=w(3)/sqrt(w(2)*w(2)+w(3)*w(3)); line([4,9],[(4*w(2)+w(1))/(-w(3)),(9*w(2)+w(1))/(-w(3))]);
原图 分类结果
************************作者:hjimce 联系qq:1393852684更多资源请关注我的博客:http://blog.csdn.net/hjimce
原创文章,转载请保留这两行作者信息*************
相关文章推荐
- 【机器学习】逻辑回归原理及其实现
- 机器学习系列(1)_逻辑回归初步
- 机器学习之核函数逻辑回归(机器学习技法)
- 【机器学习笔记】逻辑回归
- 机器学习笔记(7)逻辑回归
- 【机器学习】--逻辑回归
- Andrew Ng机器学习笔记ex5 正则化的逻辑回归、偏差和方差
- 【机器学习】对数几率回归(Logistic Regression、逻辑回归)数学证明
- 机器学习: 逻辑回归(Logistic Regression) 小项目
- 【机器学习】Logistic逻辑回归详解
- 机器学习总结5_Logistic Regression(逻辑回归)
- 机器学习之逻辑回归
- 机器学习心得(二)——逻辑回归
- 机器学习之十一:逻辑回归
- 机器学习之逻辑回归(Logistic Regression)
- 机器学习(七)线性回归、正规方程、逻辑回归的正规化
- 斯坦福大学机器学习课程--逻辑回归算法
- [机器学习入门] 李宏毅机器学习笔记-6 (Classification: Logistic Regression;逻辑回归)
- Coursera机器学习 Week3:逻辑回归、Decision Boundary、过拟合
- 机器学习系列(3)_逻辑回归应用之Kaggle泰坦尼克之灾