如何使用octave对逻辑回归实现所有列子

问题描述

如何使用octave对逻辑回归实现所有列子

我正在学习吴恩达老师的machine learing,在用octave实现逻辑回归时发现代价函数并不能对所有列子都通用,请各位帮帮忙,要实现的函数:


代码:

 function [J, grad] = costFunction(theta, X, y)
 m = length(y);    % number of training examples
 J = 0;
grad = zeros(size(theta));
predictions = 0;

for i = 1:m
    J = J + (-y(i,:) * log(sigmoid (X(i,:)*theta))) - (1-y(i,:)) * log(1-sigmoid (X(i,:)*theta));
end
predictions = sum(sigmoid (X*theta)) - y;
grad = predictions'* X / m;
J = J/m;

解决方案

http://blog.sina.com.cn/s/blog_890c6aa301015mya.html

时间: 2024-11-02 13:32:30

如何使用octave对逻辑回归实现所有列子的相关文章

机器学习之——判定边界和逻辑回归模型的代价函数

判定边界(Decision Boundary) 上一次我们讨论了一个新的模型--逻辑回归模型(Logistic Regression),在逻辑回归中,我们预测: 当hø大于等于0.5时,预测y=1 当hø小于0.5时,预测y=0 根据上面的预测,我们绘制出一条S形函数,如下: 根据函数图像,我们知道,当  z=0时,g(z)=0.5  z>0时,g(z)>0.5  z<0时,g(z)<0.5 又有: 所以 以上,为我们预知的逻辑回归的部分内容.好,现在假设我们有一个模型: 并且参数

逻辑回归原理解析

逻辑回归 逻辑回归模型 逻辑回归表达式: $$h_\theta(x) = g(\theta^Tx)$$ $$z = \theta^Tx$$ $$g(z) = {1\over 1+e^{-z}}$$ 综上,$$h_\theta(x) = {1\over 1+e^{-\theta^Tx}}$$ sigmoid函数: 选择题1: 接下来我们深入的来理解下这个sigmoid函数.通过图可以知道: 如果想要判断预测分类$\color{red}{y=1}$,则必须保证$\color{red}{h_\thet

机器学习算法的python实现之逻辑回归的实现(LogicalRegression)

1.背景知识 在刚刚结束的天猫大数据s1比赛中,逻辑回归是大家都普遍使用且效果不错的一种算法. (1)回归 先来说说什么是回归,比如说我们有两类数据,各有50十个点组成,当我门把这些点画出来,会有一条线区分这两组数据,我们拟合出这个曲线(因为很有可能是非线性),就是回归.我们通过大量的数据找出这条线,并拟合出这条线的表达式,再有数据,我们就以这条线为区分来实现分类.下图是我画的一个数据集的两组数据,中间有一条区分两组数据的线. 本栏目更多精彩内容:http://www.bianceng.cnht

机器学习基础(四)逻辑回归

从这节算是开始进入"正规"的机器学习了吧,之所以"正规"因为它开始要建立价值函数(cost function),接着优化价值函数求出权重,然后测试验证.这整套的流程是机器学习必经环节.今天要学习的 话题是逻辑回归,逻辑回归也是一种有监督学习方法(supervised machine learning).逻辑回归一般用来 做预测,也可以用来做分类,预测是某个类别^.^!线性回归想比大家都不陌生了,y=kx+b,给定一堆数据点, 拟合出k和b的值就行了,下次给定X时,就

机器学习之——逻辑回归

在讨论逻辑回归问题(Logistic Regression)之前,我们先讨论一些实际生活中的情况:判断一封电子邮件是否是垃圾邮件?判断一次交易是否是欺诈交易?判断一份文件是否是有效文件?这类问题,我们称之为分类问题(Classication Problem).在分类问题中,我们往往尝试去预测的结果是否属于某一个类(正确活错误). 我们从二元的分类问题开始讨论,即问题是正确或错误的. 我们将因变量(Dependent Variable)可能属于的两个类分别称为负向类(Negative Class)

机器学习之——归一化线性回归与归一化逻辑回归

之前的博客里,跟大家分享了归一化(Regularization)的概念:保留所有的特征,但是减小参数的大小(Magnitude). 这一次捏,跟大家讨论讨论,归一化线性回归模型和归一化逻辑回归模型. 首先跟大家明确一件事,为什么有些机器学习的模型需要用到归一化这个方法呢?答案有两条: 归一化能够加快梯度下降的步伐,也就是获得最优解的速度 归一化能够提交模型的精度 具体的分析我们可以后续来讨论,这里就不赘述了. 归一化线性回归模型(Regularized Linear Regression) 我们

逻辑回归那些事—使用牛顿法解决实际问题

更多深度文章,请关注云计算频道:https://yq.aliyun.com/cloud 前言 在本篇博客中,我们要介绍的是牛顿法的原理,并且将之应用到实际的逻辑回归问题中.逻辑回归的主要知识点包括伯努利分布的对数似然和用来平滑的sigmoid函数. 我们还要介绍Hession,这是一个二阶偏导的方阵.看完了本片博客,您就知道如何使用Hession结合梯度来实现牛顿法. 和之前的博客一样,我们这篇也将从牛顿法的整体概述.数学推导以及编程实现几个方面展开.最终将理论和实践的结合,灵活运用牛顿法解决逻

【机器学习】逻辑回归

[机器学习]逻辑回归 优点:计算代价不高,易于理解和实现: 缺点:容易欠拟合,分类精度可能不高. 我们想要的是接收所有的输入,然后预测出类别.在两个类的情况下输出0或者1.这种性质的函数,也许原来你接触过,叫做Heaviside step function,即单位阶跃函数.但是这种瞬间的跳跃实际中很难处理.所以,这里我们采用Sigmoid函数. g(z)=11+e?z 为了实现Logistic回归分类器,我们在每个特征上乘以一个回归系数,再讲所有的结果相加,将这个总和带入Sigmoid函数中,得

机器学习-逻辑回归-分类

1. 逻辑回归 监督学习中另一个问题为分类问题,常见的分类问题例子有 邮件是否是垃圾邮件,0表示垃圾邮件,1表示正常邮件 在线交易是否会欺骗用户,0表示会欺骗,1表示不会 患肿瘤患者是良性还是恶性,0表示恶性,1表示良性 这些问题,可以归之于二分类问题,y表示因变量,取值0和1,可以定义如下 其中0表示负例,1表示正例 同理,对于多分类问题来说,因变量y的值可以取{0,1,2,3 ... n} 我们先从二分类问题入手,理解什么是逻辑回归模型 逻辑回归(Logistic Regression)是一