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

假设函数

更为一般的表达式:

       (1)

似然函数:

             (2)

对数似然函数:

如果以上式作为目标函数,就需要最大化对数似然函数,我们这里选择最小化负的对数似然函数

          (3)

对J(w)求极小值,对求导

 

              (4)

上述中 表示第i个样本的第j个属性的取值。

于是的更新方式为:

                        (5)

将(5)式带入(4)式,得:

梯度下降GD的更新方式,使用全部样本:

 (6)

当样本不多的时候,可以选择这个方法

随机梯度下降:

每次只取一个样本,则的更新方式:

                  (7)

 为这个样本的特征值,是其真实值,是这个样本的第j个属性

随机平均梯度下降法(sag,Stochasitc Average Gradient )

该算法是选取一小部分样本梯度的平均值来更新权重(其中n<m,m为样本数)

           (8)

SGD和GD算法的折中

小结:

在尝试写一些机器学习相关的笔记,先写下一篇,欢迎讨论~

原文地址:https://www.cnblogs.com/sunrise-keephungary/p/10056027.html

时间: 2024-10-12 07:33:30

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

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

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

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

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

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

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

损失函数——均方误差和交叉熵

1.MSE(均方误差) MSE是指真实值与预测值(估计值)差平方的期望,计算公式如下: MSE = 1/m (Σ(ym-y'm)2),所得结果越大,表明预测效果越差,即y和y'相差越大 y = tf.constant([1,2,3,0,2]) y = tf.one_hot(y,depth=4) y = tf.cast(y,dtype=tf.float32) out = tf.random.normal([5,4]) # MSE标准定义方式 loss1 = tf.reduce_mean(tf.sq

监督学习的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

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

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

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