模型介绍

对于分类问题,其得到的结果值是离散的,所以通常情况下,不适合使用线性回归方法进行模拟。
所以提出Logistic回归模型。
其假设函数如下:
\[
h_θ(x)=g(θ^Tx)
\]
函数g定义如下:
\[
g(z)=\frac{1}{1+e^{-z}}(z∈R)
\]
所以假设函数书写如下:
\[
h_θ(x)=\frac{1}{1+e^{-θ^Tx}}
\]
图像类似如下:

根据图像我们可以看出,当g(z)中的z大于0的时候,其g(z)则大于0.5,则此状态下的可能性则更大。


决策边界

对于假设函数hθ,当确定了其中所有的系数θ,则可以将\(θ^Tx\)绘制出一个用于区分结果值0与1之间的边界。


代价函数

和线性回归相同,代价函数可以用于构造最合适的系数θ。
\[
J(θ)=\frac{1}{m}\sum_{i=1}^{m}{cost(h_θ(x)-y)}
\]
\[
cost(h_θ(x)-y)=\begin{cases}
-log(h_θ(x)) & if & y=1 \\
-log(1-h_θ(x)) & if & y=0
\end{cases}
\]

\[
J(θ)=\frac{1}{m}[\sum_{i=1}^{m}{y^{(i)}logh_θ(x^{(i)})+(1-y^{(i)})log(1-h_θ(x^{(i)}))}]
\]

分析

对于cost函数,在y=1的时候,很明显当\(h_θ(x)\)趋近于1的时候,cost函数接近于0,则代价函数\(J(θ)\)也接近于0,合理;\(h_θ(x)\)趋近于0的时候,cost函数趋近于无穷大,而代价函数\(J(θ)\)也趋于无穷大,这是不合理的。从代价函数本身的意义出发,就是寻找当代价函数\(J(θ)\)最小的时候,就得到最合理的系数θ。


梯度下降

为了获得最小的\(J(θ)\)
给出:
\[
θ_j:=θ_j-α\frac{∂}{∂θ_j}J(θ)
\]
\[
θ_j:=θ_j-α\frac{1}{m}\sum_{i=1}^{m} {(h_θ(x^{(i)})-y^{(i)})x_j^{(i)}}
\]

通过不断迭代得到最终合适的θ。


一对多问题

对于很多分类问题,不只是需要分类为两类0,1,可能需要做更多的分类。

对于解决这类问题可以采用回归分类器,见下图:

对于多个分类,可以选择将需要判断的那个分类定义为正类,其余都定义为负类,执行logistic回归得到一个假设函数\(h_θ^{(i)}\),使用时,选择最为合适的假设函数进行模拟即可。


机器学习笔记(4)Logistic回归的更多相关文章

  1. 吴恩达机器学习笔记 —— 7 Logistic回归

    http://www.cnblogs.com/xing901022/p/9332529.html 本章主要讲解了逻辑回归相关的问题,比如什么是分类?逻辑回归如何定义损失函数?逻辑回归如何求最优解?如何 ...

  2. 机器学习实战(Machine Learning in Action)学习笔记————05.Logistic回归

    机器学习实战(Machine Learning in Action)学习笔记————05.Logistic回归 关键字:Logistic回归.python.源码解析.测试作者:米仓山下时间:2018- ...

  3. 机器学习(4)之Logistic回归

    机器学习(4)之Logistic回归 1. 算法推导 与之前学过的梯度下降等不同,Logistic回归是一类分类问题,而前者是回归问题.回归问题中,尝试预测的变量y是连续的变量,而在分类问题中,y是一 ...

  4. 机器学习实战笔记5(logistic回归)

    1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid ...

  5. 机器学习实战 - 读书笔记(05) - Logistic回归

    解释 Logistic回归用于寻找最优化算法. 最优化算法可以解决最XX问题,比如如何在最短时间内从A点到达B点?如何投入最少工作量却获得最大的效益?如何设计发动机使得油耗最少而功率最大? 我们可以看 ...

  6. 机器学习实战读书笔记(五)Logistic回归

    Logistic回归的一般过程 1.收集数据:采用任意方法收集 2.准备数据:由于需要进行距离计算,因此要求数据类型为数值型.另外,结构化数据格式则最佳 3.分析数据:采用任意方法对数据进行分析 4. ...

  7. 机器学习实践之Logistic回归

        关于本文说明,本人原博客地址位于http://blog.csdn.net/qq_37608890,本文来自笔者于2017年12月17日 19:18:31所撰写内容(http://blog.cs ...

  8. 机器学习之线性回归---logistic回归---softmax回归

    在本节中,我们介绍Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值. Softmax回归模型对于诸如MNIST手写数字分类等问题 ...

  9. 机器学习(1):Logistic回归原理及其实现

    Logistic回归是机器学习中非常经典的一个方法,主要用于解决二分类问题,它是多分类问题softmax的基础,而softmax在深度学习中的网络后端做为常用的分类器,接下来我们将从原理和实现来阐述该 ...

  10. 机器学习实战之Logistic回归

    Logistic回归一.概述 1. Logistic Regression 1.1 线性回归 1.2 Sigmoid函数 1.3 逻辑回归 1.4 LR 与线性回归的区别 2. LR的损失函数 3. ...

随机推荐

  1. Linux下设置共享目录

    Linux系统的文件或目录的共享功能是非常强大,而且是非常灵活的,其对权限的控制可以做到非常的细致,当然如果你是通过命令行方式进行设置的 话,那么对于刚接触linux系统的用户来说将是一件十分头痛的事 ...

  2. VS2015调试,签名时出错: 未在路径 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\signtool.exe 找到 SignTool.exe

    1.发布项目是出现这个错误网上找了有两种方式, 一种是重新安装VS2015的ClickOnce程序 第二种是修改项目文件的签名 右击项目文件的属性,选择签名,然后把红框内去掉,保存即可.

  3. 九九乘法表,全js编写,放入table表格带入页面渲染出来

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. Windows系统Python 虚拟环境virtualenv安装

    1.我们用pip安装virtualenv >pip3 install virtualenv 2.创建工程目录 >mkdir myproject 3.进入工程目录 >cd myproj ...

  5. nodejs搭建web服务器初级

    nodejs搭建简单的web服务器 1.1简介 Node.js是基于Chrome JavaScript运行时建立的一个平台,实际上它是对Google Chrome V8引擎进行了封装,它主要用于创建快 ...

  6. python2.7入门---2.x与3​​.x版本区别

        Python的3​​.0版本,常被称为Python 3000,或简称Py3k.相对于Python的早期版本,这是一个较大的升级.为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向 ...

  7. 20155239《Java程序设计》实验一(Java开发环境的熟悉)实验报告

    实验内容及步骤 使用JDK编译.运行简单的java程序 2.使用IDEA编辑.编译.运行.调试Java程序 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发 先建立一个文件夹命名为Co ...

  8. 20155313 实验三《Java面向对象程序设计》实验报告

    一.实验内容 XP基础 XP核心实践 相关工具 二.实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器>课程 2.完成实验.撰写实验报 ...

  9. 20155334 2016-2017-2 《Java程序设计》第四周学习总结

    20155334 2016-2017-2 <Java程序设计>第四周学习总结 教材学习内容总结 第六章:继承与多态 继承:面对对象中,子类继承父类,避免重复的行为定义 extends表示会 ...

  10. 苏州Uber优步司机奖励政策(4月18日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...