机器学习(二)逻辑回归
来源:互联网 发布:网站域名如何注销备案 编辑:程序博客网 时间:2024/04/29 18:45
逻辑回归
原文地址:http://blog.csdn.net/hjimce/article/details/45418933
作者: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];%测试数据1SIGMA = [1 0; 0 2];r1 = mvnrnd(mu,SIGMA,100);plot(r1(:,1),r1(:,2),'.');hold on;mu = [10 10];%测试数据2SIGMA = [ 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'); endend%绘制决策边界直线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 原创文章,转载请保留这两行作者信息*************
0 0
- 机器学习(二)逻辑回归
- 机器学习(二):逻辑回归
- 机器学习(二)逻辑回归
- 机器学习(二):逻辑回归_python
- 机器学习(二):逻辑回归
- 二,机器学习算法之逻辑回归(python实现)
- 机器学习算法(二)逻辑斯蒂回归
- R机器学习之二:逻辑回归
- 机器学习总结(二):逻辑回归
- 机器学习-逻辑回归
- 机器学习:逻辑回归
- 机器学习---逻辑回归
- 【机器学习】逻辑回归
- 机器学习----逻辑回归
- 机器学习 逻辑回归
- 机器学习:逻辑回归
- 机器学习--逻辑回归
- 机器学习-逻辑回归
- Caused by: java.lang.ClassNotFoundException: Could not load requested class : org.h2.Driver
- ruby 迭代器使用方法
- Matlab deep learning toolbox CNN 卷积神经网络代码改进
- 二维数组中的查找
- ruby 正則表達式 教程
- 机器学习(二)逻辑回归
- mac pro安装双系统及简单开发环境搭建
- sd 卡驱动--基于高通平台
- ruby 類常量 解析
- rudy 重載方法 詳解
- 我为什么csdn来得越来越少了
- tomcat7连接器配置,bio与nio连接器
- 比較詳細的ruby symbol 學習資料
- 分析 rudy 類