监督学习的Logistic回归算法

函数原型

\[h_\theta(X)=\frac{1}{1+e^{-\theta^TX}}...称h_\theta(X)为y=1的概率。\]

决策界限的定义

\(根据函数表达式可知当z>=0时y>=0.5当z<0时y<0.5...z=\theta^TX,y=h_\theta(X)\)

\(故直线z=\theta^TX为决策界限\)
## 代价函数
线性回归的代价函数为:
\[J(\theta)=2\frac{1}{m}\sum_{i=1}^{m}(h_\theta(x^i)-y(x^i))^2\]
我们另:
\[J(\theta)=\frac{1}{m}\sum_{i=1}^{m}Cost(h_\theta(x^i),y(x^i))\]
\(Cost为:\)
\[Cost(h_\theta(x^i),y(x^i))=\begin{cases} -log(h_\theta (x))& \text if&y=1\\-log(1-h_\theta (x))& \text if&y=0\end{cases}\]
为什么这样选择?
#### \(-log(1-h_\theta (x))图像为:\)

其中\[h_\theta(X)=\frac{1}{1+e^{-\theta^TX}}.\]
当\(h_\theta (x)\)无限靠近与0时,代价函数为无穷大。
故\(h_\theta (x)=0表示y=1的概率为0,与条件y=1完全矛盾。故给该算法加大惩罚。\)

当\(h_\theta (x)\)无限靠近与1时,代价函数为0。
故\(h_\theta (x)=1表示y=1的概率为100\%,与条件y=1完全符合。\)

#### \(-log(1-h_\theta (x))图像为:\)

证明方式与图1类似...

合并代价函数

\[J(\theta)=\frac{1}{m}\sum_{i=1}^m(-ylog(h_{\theta}(x^i))-(1-y)log(1-h_{\theta}(x^i)))\]

使用梯度下降法迭代

公式与线性回归公式相同。
证明参考:https://blog.csdn.net/qq_29663489/article/details/87276708

多分类问题


思想:二分,归类于y=1概率的的一类。
如图,三个函数同时处理,得到\(h_\theta(X)\),故点归类于\(h_\theta(X)\)大的一类。

原文地址:https://www.cnblogs.com/Kseven77/p/12019385.html

时间: 2024-11-14 11:33:33

监督学习的Logistic回归算法的相关文章

《机器学习实战》Logistic回归算法(1)

===================================================================== <机器学习实战>系列博客是博主阅读<机器学习实战>这本书的笔记也包含一些其他python实现的机器学习算法 算法实现均采用python github 源码同步:https://github.com/Thinkgamer/Machine-Learning-With-Python ==================================

机器学习--Logistic回归算法案例

案例:从疝气病症预测病马的死亡率 准备数据时,数据中的缺失值是个非常棘手的问题.因为有时候数据相当昂贵,扔掉和重新获取都是不可取的,所以必须采用一些方法来解决这个问题. 在预处理阶段需要做两件事:第一,所有的缺失值必须用一个实数值来替换,因为我们使用的NumPy数据类型不允许包含缺失值.这里选择实数0来替换所有缺失值,恰好能适用于Logistic回归.第二,如果在测试数据集中发现了一条数据的类别标签已经缺失,那么我们可以将该条数据丢弃.因为类别标签与特征不同,很难确定采用某个合适的值来替换. 1

机器学习算法-logistic回归算法

Logistic回归算法调试 一.算法原理 Logistic回归算法是一种优化算法,主要用用于只有两种标签的分类问题.其原理为对一些数据点用一条直线去拟合,对数据集进行划分.从广义上来讲这也是一种多元线性回归方法,所不同的是这种算法需要找出的是能够最大可能地将两个类别划分开来而不是根据直线关系预测因变量的值.Logistic回归算法的核心部分是sigmoid函数: 其中,xi为数据集的第i个特征.定义损失函数损失函数: 损失函数越小表明曲线拟合的效果就越好.利用梯度向上法更新x的系数W,求出W的

logistic回归算法的损失函数:binary_crossentropy(二元交叉熵)

假设函数: 更为一般的表达式:        (1) 似然函数:              (2) 对数似然函数: 如果以上式作为目标函数,就需要最大化对数似然函数,我们这里选择最小化负的对数似然函数           (3) 对J(w)求极小值,对求导                 (4) 上述中 表示第i个样本的第j个属性的取值. 于是的更新方式为:                         (5) 将(5)式带入(4)式,得: 梯度下降GD的更新方式,使用全部样本:  (6) 当

Spark MLlib Logistic Regression逻辑回归算法

1.1 逻辑回归算法 1.1.1 基础理论 logistic回归本质上是线性回归,只是在特征到结果的映射中加入了一层函数映射,即先把特征线性求和,然后使用函数g(z)将最为假设函数来预测.g(z)可以将连续值映射到0和1上. 它与线性回归的不同点在于:为了将线性回归输出的很大范围的数,例如从负无穷到正无穷,压缩到0和1之间,这样的输出值表达为"可能性"才能说服广大民众.当然了,把大值压缩到这个范围还有个很好的好处,就是可以消除特别冒尖的变量的影响. Logistic函数(或称为Sigm

机器学习经典算法详解及Python实现---Logistic回归(LR)分类器

(一)认识Logistic回归(LR)分类器 首先,Logistic回归虽然名字里带"回归",但是它实际上是一种分类方法,主要用于两分类问题,利用Logistic函数(或称为Sigmoid函数),自变量取值范围为(-INF, INF),自变量的取值范围为(0,1),函数形式为: 由于sigmoid函数的定义域是(-INF, +INF),而值域为(0, 1).因此最基本的LR分类器适合于对两分类(类0,类1)目标进行分类.Sigmoid 函数是个很漂亮的"S"形,如下

【机器学习算法实现】logistic回归__基于Python和Numpy函数库

[机器学习算法实现]系列文章将记录个人阅读机器学习论文.书籍过程中所碰到的算法,每篇文章描述一个具体的算法.算法的编程实现.算法的具体应用实例.争取每个算法都用多种语言编程实现.所有代码共享至github:https://github.com/wepe/MachineLearning-Demo     欢迎交流指正! (2)logistic回归__基于Python和Numpy函数库 1.算法简介 本文的重点放在算法的工程实现上,关于算法的原理不具体展开,logistic回归算法很简单,可以看看A

2.2 logistic回归损失函数(非常重要,深入理解)

上一节当中,为了能够训练logistic回归模型的参数w和b,需要定义一个成本函数 使用logistic回归训练的成本函数 为了让模型通过学习来调整参数,要给出一个含有m和训练样本的训练集 很自然的,希望通过训练集找到参数w和b,来得到自己得输出 对训练集当中的值进行预测,将他写成y^(I)我们希望他会接近于训练集当中的y^(i)的数值 现在来看一下损失函数或者叫做误差函数 他们可以用来衡量算法的运行情况 可以定义损失函数为y^和y的差,或者他们差的平方的一半,结果表明你可能这样做,但是实际当中

logistic回归与手写识别例子的实现

本文主要介绍logistic回归相关知识点和一个手写识别的例子实现 一.logistic回归介绍: logistic回归算法很简单,这里简单介绍一下: 1.和线性回归做一个简单的对比 下图就是一个简单的线性回归实例,简单一点就是一个线性方程表示 (就是用来描述自变量和因变量已经偏差的方程) 2.logistic回归 可以看到下图,很难找到一条线性方程能将他们很好的分开.这里也需要用到logistic回归来处理了. logistic回归本质上是线性回归,只是在特征到结果的映射中加入了一层函数映射,