Logistic Regression - Formula Deduction
Sigmoid Function
\[ \sigma(z)=\frac{1}{1+e^{(-z)}} \]
feature:
- axial symmetry:
\[ \sigma(z)+ \sigma(-z)=1 \] - gradient:
\[ \frac{\partial\sigma(z)}{\partial z} = \sigma(z)[1-\sigma(z)] \]
由性质1 可知,
\[ \frac{\partial\sigma(z)}{\partial z} = \sigma(z) \sigma(-z) \]
Logistic Function
\[ \sigma(x;\theta)= \frac{1}{1+e^{-\theta x}} \]
首先我们考虑 \(2\) 分类问题, 所以\(f(x)\)的值域也是 \([-1,1]\)。
\[ P(y=1|x,\theta) = \sigma(x) \]
即对于给定的样本\(x\),其属于类别 \(1\) 的概率是 \(f(x)\)。则属于类别 \(-1\) 的概率是
\[P(y=-1 | x,\theta) = 1-\sigma(x)= \sigma(-x)\]
上述概率也可以写作:
\[P(y | x,\theta) = \left\{\begin{split}\sigma(x),~~~~y=1 \\ \sigma(-x),y=-1 \end{split}\right.\]
代价函数的形式是:
\[\mathcal{l}(\theta) = \frac{1}{n} \sum_{i=1}^{n} \log \sigma(y_i x_i) \]
Note
- 之所以记 \(y\in [-1,1]\) 而不是 \(y \in [0,1]\),因为前者能简化计算公式,不需要再做分类计算了。
- 如果采用 \(y \in [0,1]\), 那么我们的代价函数就变成了:
\[ \mathcal{l}(\theta) = \frac{1}{n} \sum_{i=1}^{n} y_i \log \sigma(x_i) + (1-y_i) \log (1-\sigma(x_i)) \]
详情请参见: [Logistic Regression分类器](http://www.cnblogs.com/guyj/p/3800519.html)
Logistic Regression - Formula Deduction的更多相关文章
- Logistic Regression and Gradient Descent
Logistic Regression and Gradient Descent Logistic regression is an excellent tool to know for classi ...
- ISLR系列:(2)分类 Logistic Regression & LDA & QDA & KNN
Classification 此博文是 An Introduction to Statistical Learning with Applications in R 的系列读书笔记,作为本人的一 ...
- Linear and Logistic Regression in TensorFlow
Linear and Logistic Regression in TensorFlow Graphs and sessions TF Ops: constants, variables, funct ...
- Regularized logistic regression
要解决的问题是,给出了具有2个特征的一堆训练数据集,从该数据的分布可以看出它们并不是非常线性可分的,因此很有必要用更高阶的特征来模拟.例如本程序中个就用到了特征值的6次方来求解. Data To be ...
- 逻辑回归 Logistic Regression
逻辑回归(Logistic Regression)是广义线性回归的一种.逻辑回归是用来做分类任务的常用算法.分类任务的目标是找一个函数,把观测值匹配到相关的类和标签上.比如一个人有没有病,又因为噪声的 ...
- logistic regression与SVM
Logistic模型和SVM都是用于二分类,现在大概说一下两者的区别 ① 寻找最优超平面的方法不同 形象点说,Logistic模型找的那个超平面,是尽量让所有点都远离它,而SVM寻找的那个超平面,是只 ...
- SparkMLlib之 logistic regression源码分析
最近在研究机器学习,使用的工具是spark,本文是针对spar最新的源码Spark1.6.0的MLlib中的logistic regression, linear regression进行源码分析,其 ...
- [OpenCV] Samples 06: [ML] logistic regression
logistic regression,这个算法只能解决简单的线性二分类,在众多的机器学习分类算法中并不出众,但它能被改进为多分类,并换了另外一个名字softmax, 这可是深度学习中响当当的分类算法 ...
- Stanford机器学习笔记-2.Logistic Regression
Content: 2 Logistic Regression. 2.1 Classification. 2.2 Hypothesis representation. 2.2.1 Interpretin ...
随机推荐
- C#.NET万能数据库访问封装类(ACCESS、SQLServer、Oracle)
using System; using System.Collections; using System.Collections.Specialized; using System.Data; usi ...
- WPF中,Combox的SelectedItem属性绑定成功后,未能默认显示上一次选择的结果。
问题描述: Combox中,设定了绑定对象,但是在第一次进入时却没有显示上次选中的项. 1)查看SelectedItem对应绑定的值,也是有的(启动时,读取上次设置的结果,来初始化界面). ...
- 【hive】——Hive基本操作
阅读本文章可以带着下面问题:1.与传统数据库对比,找出他们的区别2.熟练写出增删改查(面试必备) 创建表:hive> CREATE TABLE pokes (foo INT, bar STRIN ...
- native2ascii.exe 字符转码与反转码
本人最近在做OAF的二次开发,在看别人写的代码时,发现总有类似这样的语句:”\u65e0\u6548\u7684GP\u9879\u76ee\u7f16\u53f7“,这些语句其实是用Java_hom ...
- 使用 python 获取 Linux 系统信息(通过dmidecode命令)
通过 dmidecode 命令可以获取到 Linux 系统的包括 BIOS. CPU.内存等系统的硬件信息,这里使用 python 代码来通过调用 dmidecode 命令来获取 Linux 必要的系 ...
- Linux 下.desktop 桌面程序图标文件编写方式
[Desktop Entry] //每个desktop文件都以这个标签开始,说明这是一个Desktop Entry文件 Version = 1.0 //标明Desktop Entry的版本(可选) N ...
- 将Apache手动安装成Windows的服务
将Apache手动安装成Windows的服务 可以选择在安装Apache时自动将其安装为一个服务.如果选择"for all users",那么Apache将会被安装为服务. 如果选 ...
- BOM与事件
PPK谈JS学习笔记第二弹 JS的语言核心和DOM之间有一个过渡层,一般称为BOM,浏览器对象模型.是指JS的客户端实现,它不操作DOM,又不是JS的语言核心,它的主要功能是管理浏览器窗口,每个窗口都 ...
- Linux终端打印命令使用介绍
常用linux打印命令 日常使用中或shell脚本中linux终端打印命令有echo和printf. echo命令 功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--he ...
- WPF -Enum的三种绑定方法
一.使用ObjectDataProvider <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentat ...