七,专著研读(Logistic回归)
七,专著研读(Logistic回归)
- 分类:k-近邻算法,决策树,朴素贝叶斯,Logistic回归,支持向量机,AdaBoost算法。
- 运用
- k-近邻算法,使用距离计算来实现分类
- 决策树,构建直观的树来分类
- 朴素贝叶斯,使用概率论构建分类器
- Logistic回归,主要是通过寻找最优参数来正确分类原始数据
- 逻辑回归(Logistic Regression):虽然名字中有“回归”两个字,但是它擅长处理分类问题。LR分类器适用于各项广义上的分类任务,例如:评论信息的正负情感分析,用户点击率,用户违约信息预测,垃圾邮件检测疾病预测,用户等级分类(二分类)。
- 逻辑回归和线性回归本质都是得到一条直线,不同的是线性回归的直线是尽可能去拟合输入变量x的分布,使得训练集中所有样本点到直线的距离最短;而逻辑回归的直线尽可能去拟合决策边界,使得训练集中的样本点尽可能的分开。两者目的不同。
- 二分类情况下:单位阶跃函数(海威赛德阶跃函数)。sigmoid函数较为容易处理。
- sigmoid函数公式
$ f(x)=\frac{1}{1+e^{-x}}$
- sigmoid函数公式
- 逻辑回归:通过将线性模型和sigmoid函数结合,可以得到逻辑回归公式:
$ y=\frac{1}{1+e^{-(\omega x+b)}}$
y就是(0,1)的取值。
进行变换(左右乘log),可得
$ log\frac{y}{1-y}=\omega x+b$
这是一个对数几率的公式。 - 二项Logistic回归
\(P(y=0|x)=\frac{1}{1+e^{\omega x}}\)
$ P(y=1|x)=\frac{e^{\omega x}}{1+e^{\omega x}}$ - 多项Logistic回归
\(P(y=k|x)=\frac{e^{\omega x}}{1+\sum_{k-1}^{K-1}e^{\omega _{k} x}}\)
$ P(y=K|x)=\frac{1}{1+\sum_{k-1}^{K-1}e^{\omega _{k} x}}$ - LR与线性回归的区别
- 逻辑回归和线性回归是两类模型,逻辑回归是分类模型,线性回归是回归模型。
- LR损失函数:使用损失函数预测模型的好坏,衡量真实值和预测值之间差距的函数,损失函数越小,模型就越好,最小损失0。
$ -log(x),y=1$
\(-log(1-x),y=0\) 把上边两个损失函数综合起来:
\(-[ylog(x)+(1-ylog(1-x)]\)
y是标签,分别取0,1。对于m个样本,总的损失函数为:
\(J(\Theta )=-\frac{1}{m}\sum_{i=1}^{m}[y_{i}log(p(x_{i})+(1-y_{i})log(1-p(x_{i}))]\)
这个式子中,m是样本数,y是标签,取值0或1,i表示第i个样本,p(x)表示预测的输出。- 当损失过于小的时候,模型能拟合绝大部分的数据,这时候容易出现过拟合。防止过拟合引入正则化。
- 梯度下降:在最小化损失函数时,可以通过梯度下降法迭代求解,得到最小化的损失函数和模型参数值。
- 梯度下降的种类
- 批量梯度下降算法BGD
- 随机梯度下降算法SGD
七,专著研读(Logistic回归)的更多相关文章
- 吴恩达《机器学习》课程笔记——第七章:Logistic回归
上一篇 ※※※※※※※※ [回到目录] ※※※※※※※※ 下一篇 7.1 分类问题 本节内容:什么是分类 之前的章节介绍的都是回归问题,接下来是分类问题.所谓的分类问题是指输出变量为有限个离散 ...
- 第七篇:Logistic回归分类算法原理分析与代码实现
前言 本文将介绍机器学习分类算法中的Logistic回归分类算法并给出伪代码,Python代码实现. (说明:从本文开始,将接触到最优化算法相关的学习.旨在将这些最优化的算法用于训练出一个非线性的函数 ...
- 机器学习算法( 五、Logistic回归算法)
一.概述 这会是激动人心的一章,因为我们将首次接触到最优化算法.仔细想想就会发现,其实我们日常生活中遇到过很多最优化问题,比如如何在最短时间内从A点到达B点?如何投入最少工作量却获得最大的效益?如何设 ...
- 吴恩达机器学习笔记(二) —— Logistic回归
主要内容: 一.回归与分类 二.Logistic模型即sigmoid function 三.decision boundary 决策边界 四.cost function 代价函数 五.梯度下降 六.自 ...
- logistic回归介绍以及原理分析
1.什么是logistic回归? logistic回归虽然说是回归,但确是为了解决分类问题,是二分类任务的首选方法,简单来说,输出结果不是0就是1 举个简单的例子: 癌症检测:这种算法输入病理图片并且 ...
- 十一,专著研读(CART算法)
十一,专著研读(CART算法) CART称为分类回归树,既能用于分类也能用于回归.使用二元切分方法处理连续型变量,给定特定值,如果特征值大于给定值就走左子树,否则走右子树. CART算法步骤 决策树生 ...
- 四,专著研读(K-近邻算法)
四,专著研读(K-近邻算法) K-近邻算法有监督学习距离类模型, k-近邻算法步骤 计算已知类别数据集中的点与当前点之间的距离 按照距离递增的次序进行排序 选取与当前点距离最小的K个点 确定前k个点出 ...
- 神经网络、logistic回归等分类算法简单实现
最近在github上看到一个很有趣的项目,通过文本训练可以让计算机写出特定风格的文章,有人就专门写了一个小项目生成汪峰风格的歌词.看完后有一些自己的小想法,也想做一个玩儿一玩儿.用到的原理是深度学习里 ...
- 机器学习——Logistic回归
1.基于Logistic回归和Sigmoid函数的分类 2.基于最优化方法的最佳回归系数确定 2.1 梯度上升法 参考:机器学习--梯度下降算法 2.2 训练算法:使用梯度上升找到最佳参数 Logis ...
随机推荐
- Python语法速查: 1. 数据类型与内置函数
返回目录 (1)常用内置数据类型 分类 类型名称 描述 数字 int 整数 float 浮点数 complex 复数 bool 布尔值 序列 str 字符串(不可变序列) list 列表 tuple ...
- HttpClient之用CloseableHttpClient发送post请求
使用HttpClient发送请求的一般步骤(1) 创建HttpClient对象.(2)创建请求方法的实例,并指定请求URL.如果需要发送GET请求,创建HttpGet对象:如果需要发送POST请求,创 ...
- 新书上线:《Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统》,欢迎大家买回去垫椅子垫桌脚
新书上线 大家好,笔者的新书<Spring Boot+Spring Cloud+Vue+Element项目实战:手把手教你开发权限管理系统>已上线,此书内容充实.材质优良,乃家中必备垫桌脚 ...
- Mac下vim安装taglist
1 安装taglist taglist 的安装非常简单.从vim官网的这个链接 http://www.vim.org/scripts/script.php?script_id=273,就可以下载到ta ...
- Java数组拷贝的五种方法
在Java中有多种方法可以拷贝一个数组,到另外一个数组. 1.循环拷贝 在循环拷贝方法中,只需要利用i,移动指针即可复制所有数组到arrayB中. for(int i=0;i<arrayA.le ...
- Unity AI 感知侦探
游戏中AI的感知用的最多的是看到或者听到,也就是: 1.视觉感知 2.听觉感知 视觉感知: 视觉感知一般会有一个视野范围,这个范围与角色的朝向有关,只有在视觉范围内角色才有可能感知得到,这个范围与一个 ...
- Protractor - 怎样运行
前一篇设置好了Protractor基本运行环境,那怎样运行Protractor呢? 要运行我们的测试脚本,至少需要配置好两个文件: ---Package.json ---conf.js Package ...
- [转]使用IConfigureNamedOptions和ConfigureAll配置命名选项
这是我上一篇关于在ASP.NET Core 2.x中使用多个强类型设置实例的后续文章.在文章的结尾,我介绍了命名选项的概念,该选项已添加到ASP.NET Core 2.0中.在本文中,我将详细介绍如何 ...
- [算法]LeetCode 152:乘积最大子序列
题目描述: 给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数). 示例 1: 输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6.示 ...
- vue拖拽组件开发
vue拖拽组件开发 创建临时vue项目 先查看node和npm版本,怎么安装就不多多bb了 再安装vue-cli npm install vue-cli -g //全局安装 vue-cli 检测是否安 ...