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 ...
随机推荐
- OAuth2.0 四种授权模式
OAuth2.0简单笔记(四种授权模式) 金天:坚持写东西,不是一件容易的事,换句话说其实坚持本身都不是一件容易的事.如果学习有捷径,那就是不断实践,不断积累.写笔记,其实是给自己看的,是体现积累的一 ...
- shell脚本执行时报"bad interpreter: Text file busy"的解决方法
在执行一个shell脚本时,遇到了“-bash: ./killSession.sh: /bin/bash: bad interpreter: Text file busy”错误提示,如下所示: [or ...
- ElasticSearch大数据分布式弹性搜索引擎使用
阅读目录: 背景 安装 查找.下载rpm包 .执行rpm包安装 配置elasticsearch专属账户和组 设置elasticsearch文件所有者 切换到elasticsearch专属账户测试能否成 ...
- 聊下git merge --squash
你经常会面临着将dev分支或者很多零散的分支merge到一个公共release分支里. 但是有一种情况是需要你处理的,就是在你的dev的分支里有很多commit记录.而这些commit是无需在rele ...
- 使用FileZilla等软件搭建ftp服务器
FTP的全称是File Transfer Protocol(文件传输协议).顾名思义,就是专门用来传输文件的协议. FTP服务器,则是在互联网上提供存储空间的计算机,它们依照FTP协议提供服务.简单地 ...
- Java基础知识笔记(七:接口、变量作用域和参数传递)
一.接口 Java语言不允许一个子类拥有多个直接父类,即任何子类只能有一个直接父类.但允许一个类实现多个接口,即在定义类的接口名称列表中可以包含1个或多个接口名称,从而实现多重继承的特性.接口的定义格 ...
- WPF Tookit Chart
如何使用Chart 实例: Binding数据源中是一个KeyValuePair对象.可以是Dictionary. <charting:Chart x:Name="chtSumma ...
- MySQL命令行下执行.sql脚本详解
本文主要介绍一个在MySQL命令行下执行脚本文件的例子,通过这个例子让我们来了解一下在命令行下MySQL是怎样执行脚本的吧.现在我们开始介绍这一过程. 1.首先编写sql脚本,保存为的:book.sq ...
- flask+sqlite3+echarts3+ajax 异步更新数据
结构: /www | |-- /static |....|-- jquery-3.1.1.js |....|-- echarts.js(echarts3是单文件!!) | |-- /templates ...
- C#软件设计——小话设计模式原则之:接口隔离原则ISP
前言:有朋友问我,设计模式原则这些东西在园子里都讨论烂了,一搜一大把的资料,还花这么大力气去整这个干嘛.博主不得不承认,园子里确实很多这方面的文章,并且不乏出色的博文.博主的想法是,既然要完善知识体系 ...