下面给出H函数 

由这个函数生成的曲线称为Sigmoid曲线

先不从数学上说为什么这个模型中二元分类上比线性模型好,单纯从图形上看就可以得到直观的结论 
首先Y值域在[0,1],其次图形中中间陡峭而两边平缓,符合二元分类的样本点特性

确定了模型,下面要做的是fit最优的θ,仍然是采用最大似然法,即找出对训练数据可能性最大的那个θ

前面对于线性回归问题,符合高斯分布(连续回归问题往往符合高斯分布),最终我们由最大似然推导出最小二乘回归 
但是对于二元分类,符合伯努利分布(the Bernoulli distribution, 又称两点分布,0-1分布),因为二元分类的输出一定是0或1,典型的伯努利实验 
by the way,二项分布是n次独立的伯努利实验形成的概率分布,当n=1时,就是伯努利分布 
同样,如果离散输出是多个值,就是符合多项分布

看看由最大似然可以推导出什么 
首先给出伯努利分布 

是否好理解,给定x;θ,y=1的概率等于h的值,看看图中,当然是h的值越大越可能为1,越小越可能为0 
那么这个式子可以合并写成,比较tricky的写法,Y为0或1,总有一项为1 
那么θ的似然函数定义为,θ的可能性取决于模型对训练集拟合的好坏 

同样为了数学计算方便,定义log likelihood,

很显然,对于伯努利分布,这里无法推导出最小二乘
下面要做的是找到θ使得ℓ(θ)最大,由于这里是找最大值而非最小值,所以使用梯度上升(gradient ascent),道理是一样的 
首先计算梯度,计算过程参考原文 

所以最终随机梯度上升rule写成, 
这个梯度公式,奇迹般的和线性回归中的梯度公式表面上看是一样的,可以仔细比较一样的 
之所以说表面上,是因为其中的是不同的,这里是logitics函数。

Perceptron Learning Algorithm(感知机算法)

这里谈感知机,好像有些离题,但是你看下感知机的函数 

单纯从直观图形的角度,似乎是逻辑函数的简化形式 
逻辑函数是连续的在[0,1]区间上,而感知机直接非0则1,参考下图红线

同样使用梯度下降的感知机算法也是和上面相同的形式 

同样不同的仅仅是h(x) 
1960s,感知机被看作是大脑工作中独立神经元的粗糙的模型,由于简单,会用作后面介绍的学习算法的起点 
虽然直观看上去感知机和之前看到的logistic回归或最小二乘回归很像,但是其实是非常不一样的算法 
因为,对于感知机,很难赋予一种有意义的概率解释(probabilistic interpretations),或使用最大似然估计算法来推导感知机算法 
而对于最小二乘或logistic都可以给出像高斯分布或伯努利分布的概率解释,并可以使用最大似然进行推导。

机器学习-Logistic function(Sigmoid function)的更多相关文章

  1. coursera机器学习-logistic回归,正则化

    #对coursera上Andrew Ng老师开的机器学习课程的笔记和心得: #注:此笔记是我自己认为本节课里比较重要.难理解或容易忘记的内容并做了些补充,并非是课堂详细笔记和要点: #标记为<补 ...

  2. S性能 Sigmoid Function or Logistic Function

    S性能 Sigmoid Function or Logistic Function octave码 x = -10:0.1:10; y = zeros(length(x), 1); for i = 1 ...

  3. logistic function 和 sigmoid function

     简单说, 只要曲线是 “S”形的函数都是sigmoid function: 满足公式<1>的形式的函数都是logistic function. 两者的相同点是: 函数曲线都是“S”形. ...

  4. Sigmoid Function

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/51734189 Sigmodi 函数是一 ...

  5. sigmoid function的直观解释

    Sigmoid function也叫Logistic function, 在logistic regression中扮演将回归估计值h(x)从 [-inf, inf]映射到[0,1]的角色. 公式为: ...

  6. What are the advantages of ReLU over sigmoid function in deep neural network?

    The state of the art of non-linearity is to use ReLU instead of sigmoid function in deep neural netw ...

  7. Sigmoid function in NN

    X = [ones(m, ) X]; temp = X * Theta1'; t = size(temp, ); temp = [ones(t, ) temp]; h = temp * Theta2' ...

  8. sigmoid function vs softmax function

    DIFFERENCE BETWEEN SOFTMAX FUNCTION AND SIGMOID FUNCTION 二者主要的区别见于, softmax 用于多分类,sigmoid 则主要用于二分类: ...

  9. machine learning(10) -- classification:logistic regression cost function 和 使用 gradient descent to minimize cost function

    logistic regression cost function(single example) 图像分布 logistic regression cost function(m examples) ...

  10. function,new function,Function,new Function 之间的区别

    测试一: var fud01 = function()  { var temp = 100; this.temp = 200; return temp + this.temp; } alert(typ ...

随机推荐

  1. 矩阵经典题目七:Warcraft III 守望者的烦恼(矩阵加速递推)

    https://www.vijos.org/p/1067 非常easy推出递推式f[n] = f[n-1]+f[n-2]+......+f[n-k]. 构造矩阵的方法:构造一个k*k的矩阵.当中右上角 ...

  2. nhibernate实体类主键ID赋值问题

    有个同事忽然来找我,说他遇到了一个问题,在调用nhibernate 进行update数据的时候报错,说是有数据行锁定. 看代码,没啥问题. 直接在PL/SQL developer里对数据库进行插入,也 ...

  3. 交换分区 在dd命令执行期间 top 其消耗系统约14%的cpu,而mem占比约为0

    [资源不友好代码] from pyltp import * d_dir = '/usr/local/ltp_data_v3.4.0/' def gen_one_sentence_part(paragr ...

  4. manacher求最长回文子串算法

    原文:http://www.felix021.com/blog/read.php?2040 首先用一个非常巧妙的方式,将所有可能的奇数/偶数长度的回文子串都转换成了奇数长度:在每个字符的两边都插入一个 ...

  5. codeforces 686D D. Kay and Snowflake(dfs)

    题目链接: D. Kay and Snowflake time limit per test 3 seconds memory limit per test 256 megabytes input s ...

  6. [转]python的startswith()方法

    描述 Python startswith() 方法用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False.如果参数 beg 和 end 指定值,则在指定范围内检查. 语法 ...

  7. ruby gem的安装步骤

    第一步:下载安装文件 官网下载地址:http://rubyinstaller.org/downloads 第二步: 双击安装 在安装的时候,请勾选Add Ruby executables to you ...

  8. Pascal约瑟夫问题

    program Project2; {$APPTYPE CONSOLE} const n=; m=; Type peopleno= ..n] of integer; var datering:peop ...

  9. [Swift通天遁地]一、超级工具-(4)使用UIWebView(网页视图)加载HTML和Gif动画

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  10. 在gnome3.x中添加eclipse菜单

    ubuntu-gnome 16.04采用gnome3,界面和gnome2有较大区别.对于自己手动解压安装,而非用包管理器安装的程序,需要手工建立应用程序的启动快捷方式.例如,对于eclipse程序,采 ...