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 ...
随机推荐
- 创建版本库-GIT
什么是版本库呢?版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改.删除,Git都能跟踪,以便任何时刻都可以追踪历史,或 ...
- mysql数据库乱码解决方法之一
在前端页面向数据库中插入带中文字符的数据,到数据库时中文都变成了"?",其中jsp页面已经是设为utf-8编码的,建数据库时选择的编码也是utf-8; 1.解决的办法是在连接数据库 ...
- mysql_建立索引的优缺点 #转自Starzm#
建立索引的优缺点: 为什么要创建索引呢? 这是因为,创建索引可以大大提高系统的性能. 第一.通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性. 第二.可以大大加 ...
- [python]爬虫学习(一)
要学习Python爬虫,我们要学习的共有以下几点(python2): Python基础知识 Python中urllib和urllib2库的用法 Python正则表达式 Python爬虫框架Scrapy ...
- [转]ASP.NET Core 中间件详解及项目实战
本文转自:http://www.cnblogs.com/savorboard/p/5586229.html 前言 在上篇文章主要介绍了DotNetCore项目状况,本篇文章是我们在开发自己的项目中实际 ...
- 用最简单的方式在C#中使用多线程加速耗时的图像处理算法的执行(多核机器)。
图像处理中,有很多算法由于其内在的复杂性是天然的耗时大户,加之图像本身蕴涵的数据量比一般的对象就大,因此,针对这类算法,执行速度的提在很大程度上依赖于硬件的性能,现在流行的CPU都是至少2核的,稍微好 ...
- Caffe源码解析3:Layer
转载请注明出处,楼燚(yì)航的blog,http://home.cnblogs.com/louyihang-loves-baiyan/ layer这个类可以说是里面最终的一个基本类了,深度网络呢就是 ...
- POJ1947 Rebuilding Roads[树形背包]
Rebuilding Roads Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 11495 Accepted: 5276 ...
- vijos P1780 【NOIP2012】 开车旅行
描述 小\(A\)和小\(B\)决定利用假期外出旅行,他们将想去的城市从\(1\)到\(N\)编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市\(i\)的海拔高度为 ...
- 原生JS实现MVVM模式
欢迎大家指导与讨论 : ) 前言 关于MVVM的原理大家可以参考这篇文章.<[翻译]Object.observe()带来的数据绑定变革 >http://www.tuicool.com/ar ...