机器学习/CNN系列小问题(1):逻辑回归和神经网络之间有什么关系?

原创 2016年05月31日 21:59:36

本文讨论的关键词:Logistic Regression(逻辑回归)、Neural Networks(神经网络)

之前在学习LR和NN的时候,一直对它们独立学习思考,就简单当做是机器学习中的两个不同的models,从来没有放在一起观察过,最近通过阅读网络资料,才发现,原来LR和NN之间是有一定的联系的,了解它们之间的联系后,可以更好地理解


Logistic Regression(逻辑回归)和Neural Networks(神经网络)

  • Logistic Regression:典型的二值分类器,用来处理两类分类问题,当然,也可以用来处理多类问题,但要转换为One-vs-All或者是One-vs-One问题;Andrew Ng的机器学习课程中有对此的详细介绍
    • 专门用来进行多类分类问题的多维逻辑回归器为:
      Softmax regression / multinomial Logistic Regression;
    • 虽然逻辑回归器有许多的kernelized variants,但standard model(即最原始的LR)是一个线性分类器,主要用来处理数据集为more or less线性可分的情况;
  • Neural Networks:神经网络,由多个神经元构造,可以有多个输入、多个输出

Logistic Regression(逻辑回归)和Neural Networks(神经网络)之间到底有什么关系呢?

Logistic Regression

Basically, we can think of logistic regression as a one layer neural network.

实际上,可以将Logistic Regression看做是仅含有一个神经元的单层的神经网络!

  • 下面以图例的方式给出了Logistic Regression的结构,该图清晰地展示了Logistic Regression的结构
    这里写图片描述
    图中的Activation function为sigmoid function(也称为logistic activation functions),该激活函数的示意图如下:
    这里写图片描述
  • 从该图中可以看到,LR结构图的前半部分(不包含step function的部分,如下图红框所示)其实就是一个简单的神经元模型(关于神经网络的介绍见下文)
    这里写图片描述
  • 上图中绿色框中的部分为LR的threshold function(这里使用了step function),用来对前面激活函数的输出进行相应的阈值处理,从而实现两类分类问题(例如,threshold function函数输出为0时,对应类1,threshold function函数输出为1时,对应类2)

Softmax regression

Softmax regression其实是多维的Logistic regression,它其实可以看做是单层多个神经元的神经网络!

下图给出了softmax regression的基本结构,可以看到,其实,softmax regression可以看做是含有k个神经元的一层神经网络,
这里写图片描述

这里应该注意到:

  • 如果仅仅是要进行类别的预测,那么,只需要计算到sigma即可,不需要再求后面的softmax函数(上图所示的函数,注意,它与logistic regression中用到的sigmoid函数是不同的)
  • 使用softmax函数,只是为了使输出具有概率意义,并且,有利于利用训练集去学习网络的权值;也可以这样理解,其实,softmax function只是在train的时候比较有用,利用它学习完网络参数后,在做predict的时候,其实就不需要它了(因为它是增函数)
    这里写图片描述
    这里写图片描述

神经网络的激活函数

神经元对应的激活函数
在神经网络中,神经元的激活函数多用sigmoid function,上面提到的logistic regression也用到了该函数,但实际上,另外一个激活函数:tanh函数的效果要比sigmoid函数好些,因为tanh函数并不会将神经元的输出局限于大于0,tanh的函数输出值区间为[-1,1]
tanh = the hyperbolic tangent

这里写图片描述

仍考虑具有sigmoid fucntion的神经元:logistic regression的一个优点是logistic cost fucntion (or max-entropy) 是一个凸函数,可以求得全局最小值。

关于神经网络的代价函数

但是,对于神经网络而言,由于它将多个sigmoid function连接在一起了,这种凸函数的性质将不存在了。对于仅含有一个权值的多层神经网络(认为其他权值都为已知),它的cost function也具有非常崎岖的性质,如下图所示,可以看到,该cost function具有多个局部最小值
这里写图片描述

实际应用中,对于仅含有一个或者两个隐藏层的神经网络而言,它的cost function虽然是非凸的,但是利用误差反向传播算法,可以得到还不错的效果,虽然可能得到的是个局部极小值(a local minima),但分类效果还是不错的。

版权声明:本文为博主原创文章,如需转载,请注明出处:http://blog.csdn.net/tina_ttl

机器学习(Machine Learning)心得体会(3)逻辑回归&神经网络Exercise 3:One-vs-all & Neural Networks

之前我们碰到的逻辑回归问题只有两个输出,0或者1,那么如果有很多个输出呢,0,1,2,3等等,在这一节我们学习One-vs-all的思想来解决这个问题。     其实非常简单,输出为两类的情况我们已经...
  • zongzongzong2015
  • zongzongzong2015
  • 2015年12月18日 16:54
  • 1342

神经网络-逻辑回归

神经网络-逻辑回归目录神经网络-逻辑回归 目录 逻辑回归 概念 tips 梯度下降 绘制计算分析图 方法 逻辑回归中的梯度下降 简单的算法描述 矢量化 tipsnumpy广播机制引起的隐形 bug 以...
  • OkingjerryO
  • OkingjerryO
  • 2017年11月18日 14:20
  • 80

Coursera吴恩达《神经网络与深度学习》课程笔记(2)-- 神经网络基础之逻辑回归

上节课我们主要对深度学习(Deep Learning)的概念做了简要的概述。我们先从房价预测的例子出发,建立了标准的神经网络(Neural Network)模型结构。然后从监督式学习入手,介绍了Sta...
  • red_stone1
  • red_stone1
  • 2017年09月07日 18:06
  • 3843

逻辑回归(logistic regression)与核逻辑回归(kernel logistic regression)

因为工作的需要,一直用到逻辑回归(logistic regression)。虽然用了很多,但是并没有做总结和梳理,现在就写写自己的心得体会,便于以后查阅,也便于相互交流。 这里也要用到梯度下...
  • Aoulun
  • Aoulun
  • 2017年11月30日 22:49
  • 154

机器学习技法课程学习笔记5-- Kernel Logistic Regression

上节课我们主要介绍了Soft-Margin SVM,即如果允许有分类错误的点存在,那么在原来的Hard-Margin SVM中添加新的惩罚因子C,修正原来的公式,得到新的αn值。最终的到的αn有个上界...
  • gyh_420
  • gyh_420
  • 2017年10月12日 14:58
  • 63

【深度学习】1.1:简单图解逻辑回归和神经网络

根据学生的Test 和 Grades 的分数,确定一个学生是被接受还是被拒绝。 如下图1所示 图1如果样本点是这样分布的呢?一条线并不能把它们分开,需要两条线 如下图所示,就可以判断了。中间...
  • duxinyuhi
  • duxinyuhi
  • 2017年02月27日 19:32
  • 928

使用神经网络进行逻辑回归

学习内容: 使用神经网络进行逻辑回归,学习算法的总体框架,包括初始化参数、计算成本函数和梯度、使用优化算法(梯度下降) 使用到的包: numpy, matplotlib.pyplot, h5py, s...
  • wangli0519
  • wangli0519
  • 2017年11月29日 20:37
  • 78

人工神经网络(六)线性回归与分类, 解决与区别

机器学习可以解决很多问题,其中最为重要的两个是 回归与分类。 这两个问题怎么解决, 它们之间又有什么区别呢? 以下举几个简单的例子,以给大家一个概念1. 线性回归回归分析常用于分析两个变量X和Y 之间...
  • xvshu
  • xvshu
  • 2017年11月23日 16:16
  • 513

Deep learning学习笔记(1)从回归到神经网络

本文思路:机器学习基本概念->线性回归->logistic回归->神经网络1、机器学习简介赫尔伯特·西蒙曾对“学习”给出过以下定义:如果一个系统能够通过执行某个过程改进它的性能,这就是学习。按照这一观...
  • u011041342
  • u011041342
  • 2017年07月16日 13:55
  • 428

神经网络学习笔记(七):线性回归模型(上)

神经网络(Neural Networks)是受到人类大脑对于外界事物认知方式的启发建立的机器学习算法,也叫人工神经网络(ArtificialNeural Networks)。...
  • qq_18515405
  • qq_18515405
  • 2014年11月20日 16:02
  • 1579
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:机器学习/CNN系列小问题(1):逻辑回归和神经网络之间有什么关系?
举报原因:
原因补充:

(最多只允许输入30个字)