深度学习——logistic回归

一、常用标记

样本:(x, y)  x为输入,y为输出

输入x:x是一个nx维的特征向量

输出y:取值为0或1

样本数量:m

样本空间:{(x(1),y(1)),(x(2),y(2)),...,(x(m),y(m))}

矩阵X=[x(1),x(2),...,x(m)]

矩阵Y=[y(1),y(2),...,y(m)]

sigmoid函数:g(z) = 1/(1 + e-z)   z的范围为正负无穷,g(z)结果范围为(0,1)

二、logistic回归

一种学习算法,用于解决输出y为0或1的监督型学习问题。它的目标是最小化预测值与训练结果的差距

最大似然概率:http://blog.csdn.net/zengxiantao1994/article/details/72787849

已知一个样本空间和一个模型(参数已知但值未定),找出使得该模型可以最好地模拟样本空间的情况的参数值,以得到一个好的模型,可用于其它计算

输入:特征向量x,参数w和b

输出:0或1

用sigmoid函数对分类方法再处理一次,则结果?的取值为(0,1)

?=σ(wTx+b)  σ(z) = 1/(1 + e-z)

训练得到的结果?与原始的标签y比较

判断训练的效果:loss(error)函数,cost函数

loss函数是针对一个样本的:l(?-y) = -(ylog? + (1-y)log(1-?))

cost函数衡量参数x和b在整个样本空间的训练效果(损失函数和的平均值):J(w, b) = 1/m ∑l(?(i)-y(i))            这个和w、b哪里有关系???

损失函数的定义:当y和?接近时,损失函数的值越小。y的取值为0或1。当y=0时,l=xxx,若?趋近于0,l的值也趋于0。当y=1时,l=xxx,若?趋近于1,l的值趋于0

三、梯度下降法

利用梯度下降法来学习模型中的参数w和b,使得cost函数可以取到是小值

cost函数是一个凸函数(f(x1)+f(x2))/2>=f((x1+x2)/2)

梯度下降法:从某个点开始,每次朝最陡(梯度)的方向移动,最后可以到达全局最优(或相近位置)

对w求偏导以更新w:w:=w-αdJ(w,b)/dw  α是学习率

b的更新方法与w相似

四、计算图

把一个计算式分成多个步骤写成一个流程图,前向传导是一步步计算,而后向传导则可以帮助求导

五、向量化

把for的显示循环用向量的方式计算,调用一些内置的函数,可以充分利用并行的优势以加快速度

能尽量少用for循环则少用

python中的广播:一个向量和另一个向量(或一个实数)运算,则其中维数较少的向量或实数会自动扩展成与另一个向量维数相同的向量,并进行元素上的运算

一些避免因为广播导致bug的方法:

1. 不使用秩为1的向量(不是行向量也不是列向量),而使用行、列都是确定的向量。使用秩为1的向量的话,好像会自动广播,而确定的维数的话就不会了???

把向量外积定义为:

|a ×b| = |a|·|b|·sin<a,b>.

方向根据右手法则确定,就是手掌立在a、b所在平面的向量a上,掌心由a转向b的过程中,大拇指的方向就是外积的方向

2. assert(a.shape==(5,1)) 来断言一个向量的维度

3. 使用一个不确定维数的向量时使用reshape

原文地址:https://www.cnblogs.com/coolqiyu/p/8503588.html

时间: 2024-11-09 16:02:45

深度学习——logistic回归的相关文章

利用Theano理解深度学习——Multilayer Perceptron

一.多层感知机MLP 1.MLP概述 对于含有单个隐含层的多层感知机(single-hidden-layer Multi-Layer Perceptron, MLP),可以将其看成是一个特殊的Logistic回归分类器,这个特殊的Logistic回归分类器首先通过一个非线性变换Φ(non-linear transformation)对样本的输入进行非线性变换,然后将变换后的值作为Logistic回归的输入.非线性变换的目的是将输入的样本映射到一个空间,在该空间中,这些样本是线性可分的.这个中间层

2.9 logistic回归中的梯度下降法(非常重要,一定要重点理解)

怎么样计算偏导数来实现logistic回归的梯度下降法 它的核心关键点是其中的几个重要公式用来实现logistic回归的梯度下降法 接下来开始学习logistic回归的梯度下降法 logistic回归的公式 现在只考虑单个样本的情况,关于该样本的损失函数定义如上面第三个公式,其中a是logistic回归的输出,y是样本的基本真值标签值, 下面写出该样本的偏导数流程图 假设样本只有两个特征x1和x2 为了计算Z,我们需要输入参数w1和w2和b 因此在logistic回归中,我们要做的就是变换参数w

机器学习(六)— logistic回归

最近一直在看机器学习相关的算法,今天学习logistic回归,在对算法进行了简单分析编程实现之后,通过实例进行验证. 一 logistic概述 个人理解的回归就是发现变量之间的关系,也就是求回归系数,经常用回归来预测目标值.回归和分类同属于监督学习,所不同的是回归的目标变量必须是连续数值型. 今天要学习的logistic回归的主要思想是根据现有的数据对分类边界线建立回归公式,以此进行分类.主要在流行病学中应用较多,比较常用的情形是探索某疾病的危险因素,根据危险因素预测某疾病发生的概率等等.log

专家观点碰撞:深度学习能否取代其他机器学习算法

专家观点碰撞:深度学习能否取代其他机器学习算法 摘要:深度学习在最近两年非常火爆,但深度学习能否取代其他机器学习算法?纽约大学研究生Ran Bi根据Quora上的一个讨论总结了不同的观点,CSDN编辑将其翻译如下,并加上一些国内人工智能专家的观点,供大家参考. [编者按]深度学习在最近两年非常火爆,但深度学习能否取代其他机器学习算法?纽约大学研究生Ran Bi根据Quora上的一个讨论总结了不同的观点,CSDN编辑将其翻译如下,并加上一些国内人工智能专家的观点,供大家参考. 深度学习迅速地成长起

Logistic回归,梯度上升算法的实现

机器学习实战中也详细描述了梯度上升算法,附件里是一些笔记,再贴一个还不错的帖子 转 http://blog.csdn.net/wyb_009/article/details/9205151 这个算法搞得 我晚上十点打电话给弟弟,问Ln(x),1/x的导数公式.很惭愧,大学时被我用的出神入化.化成灰我都能认出的求导公式,我今天居然忘了:这时也要说说 西市佳园的移动网络信号,真不怎么好.这次我重点学习Logistic回归,涉及到了最大似然函数最大化的优化解法. 优点:计算代价不高,易于理解和实现:

logistic回归问题自我答疑

之前在学习logistic回归的时候遇到几个问题,一直困扰着我,随着学习的深入,我终于想通了这些问题,而且我发现这些看似很难的算法,其实不难,是可以战胜的,所以不要浅尝辄止,要百折不挠,现在把几个问题和答案小结如下: Q1:woe本来是ln((Bi/BT)/(Gi/GT)),如果定义成ln((Gi/GT)/(Bi/BT))对于最后训练出来的模型(参数)会有什么影响? A1:由于ln(A/B) = - ln(B/A),所以就是等价于训练数据X取负号,结果是参数除了常数项全部取反,这个很明显,因为拟

深度学习:逻辑回归

深度学习(Deep Learning)是机器学习(Machine Learning)的一大分支,它试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法. 逻辑回归(Logistic Regression,也译作"对数几率回归")是离散选择法模型之一,属于多重变量分析范畴,是社会学.生物统计学.临床.数量心理学.计量经济学.市场营销等统计实证分析的常用方法. 符号约定 逻辑回归一般用于二分类(Binary Classification)问题中,给定一些输入,输出

深度学习之逻辑回归的实现

1 什么是逻辑回归 1.1逻辑回归与线性回归的区别: 线性回归预测的是一个连续的值,不论是单变量还是多变量(比如多层感知器),他都返回的是一个连续的值,放在图中就是条连续的曲线,他常用来表示的数学方法是Y=aX+b: 与之相对的,逻辑回归给出的值并不是连续的,而是 类似于“是” 和 “否” 的回答,这就类似于二元分类的问题. 1.2逻辑回归实现(sigmoid): 在逻辑回归算法中,我们常使用的激活函数是Sigmoid函数,他能够将数据映射到 0 到 1 之间,并且通过映射判断,如果映射到的值在

《机器学习实战》学习笔记:Logistic回归&amp;预测疝气病证的死亡率

前言: 生活中,人们经常会遇到各种最优化问题,比如如何在最短时间从一个地点到另外一个地点?如何在投入最少的资金而却能得到最高的受益?如何设计一款芯片使其功耗最低而性能最好?这一节就要学习一种最优化算法--Logistic回归,设计最优化算法的目的依然是用于分类.在这里,Logistic回归的主要思想是根据现有的数据对分类边界线建立回归公式,达到分类的目的.假设我们有一堆数据,需要划一条线(最佳直线)对其分类,这就是Logistic回归的目的. 而"Logistic回归"中的"