机器学习笔记(4):多变量线性回归

目录

1)Multiple Features

2)Gradient descent for multiple variables

3)Gradient descent in practice 1: Feature Scaling

4)Gradient descent in pratice2: Learning rate

5)Features and polynomial regression

6)Normal equation


前面我们探讨了单变量的回归模型,现在我们对房价预测模型增加更多的特征,构成一个多变量的模型。

1)Multiple Features

下面是我们增加后的新的特征,有面积大小,卧室数量,楼层数,房子年龄。

增加了新的特征后,我们解释一下我们后面用到的符号,分别是:

  1. 特征数量 n;
  2. 训练集输入样例 x(i);
  3. 以及每个输入样例对应的第 j 个特征;

此时,我们要重新定义我们对多个特征的预测模型:

为了方便向量表示,我们定义X0=1,此时预测模型可以写成两个向量相乘,这就是多变量线性回归。

2)Gradient descent for multiple variables

与单变量线性回归类似,我们也构建一个代价函数,这个代价函数是所有误差的平方和,于是我们得到的梯队下降算法如下,还是要 同时更新每个参数。

我们把之前的单变量线性回归梯度下降和多变量梯队下降进行比较,如下:

3)Gradient descent in practice 1:Feature Scaling

我们希望的是所有特征都具有相近的尺度,这能帮助梯度下降算法更快收敛,下面左边这幅图显示了特征数值范围不一致的时候,收敛速度很慢,而右边这幅图进行缩放之后,收敛速度更快。

解决办法是尝试使所有特征的尺度都收敛到-1到1之间,如下图所示:

最简单的办法就是均值化,特征减去它的均值再除以标准差

4)Gradient descent in pratice2:Learning rate

先回顾我们之前的梯度下降算法求参数的公式,我们要决定的是如何选择学习率以及判断我们的梯度下降算法是正确的:

我们可以绘制迭代次数和代价函数的图来观测算法何时收敛,如下图示所示,每次迭代,代价函数都下降:

下图显示了,梯度下降算法是否正常工作,这和学习率有很大关系,如果学习率较大的话,很可能会越过代价函数局部最小点,变得发散:

学习率太大或太小都不合适,一般的选择是这样选择的,每次递增三倍:

5)Features and polynomial regression

再来看之前我们的房价预测的例子,预测模型与长宽有关,但其实也跟面积有关,我们可以得到一个新的预测模型,这里进行了特征的重新整合。

下面两次图显示了如果我们的模型不是一次的,可以把非线性转换成线性模型来表示:

6)Normal equation

前面我们使用梯度下降算法求参数,但我们也可以使用正规方程来求参数。下面显示了我们可以直接令偏导数为零来求参数这类似与求极值点。

下面是正规方程的求解公式:

下面来比较一下梯度下降和正规方程之间的优缺点,这和特征数量大小有很强的的关系。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/440127.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【POJ - 2942】Knights of the Round Table(点双连通分量,二分图判断奇环奇圈)

题干: Being a knight is a very attractive career: searching for the Holy Grail, saving damsels in distress, and drinking with the other knights are fun things to do. Therefore, it is not very surprising that in recent years the kingdom of King …

zookeeper单节点部署

hadoop 安装 在/install-package目录下查看zookeeper的安装包 本文中安装的是zookeeper-3.4.12.tar.gz 下方为百度云链接 链接:https://pan.baidu.com/s/1bzq4ILH41owtS__3tBCcRQ 提取码:6q4r 把下载好的zookeeper-3.4.12.tar.gz 放到/install-packa…

机器学习笔记(五):逻辑回归

目录 1)Classification 2)Hypothesis Representation 3)Decision boundary 4)Cost function 5)Simplified cost function and gradient descent 6)Multi-class classification:One-vs-all 7&#xf…

xrdp完美实现Windows远程访问Ubuntu 16.04

前言: 在很多场景下,我们需要远程连接到Linux服务器(本文是Ubuntu),传统的连接主要分为两种。 第一种:通过SSH服务(使用xshell等工具)来远程访问,编写终端命令,不过这个是无界面的&a…

【HDU - 6203】ping ping ping(lca+贪心思想,对lca排序,树状数组差分)

题干: 给出一个n1个点的树,以及p个点对,需要断开一些点,使得这p个点对路径不连通。输出应该断开的最少点数。 解题报告: 从那p个点对入手的话:首先考虑只有一对点的话,肯定是这条路径上的随便…

机器学习笔记(六):正则化

目录 1)The problem of overfitting 2)Cost function 3)Regularized linear regression 4)Regularized logistic regression 我们已经学习了线性回归和逻辑回归算法,已经可以有效解决很多问题,但是在实…

Hbase单节点安装

zookeeper单节点部署 实验环境 操作系统:Ubuntu 16.04 Hadoop:Hadoop 2.7.5 Zookeeper:zookeeper 3.4.12 Java:java version 1.8.0 到/install-package目录下查看hbase安装包 #>ls /install-package本文中用的是hbase-1…

ROS 常用命令字典

版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5761448.html 该博文适合已经具备一定的ROS编程基础的人,快速查看ROS相关指令。 本文持续更新中,望关注收藏,一起改进... 创建 ROS 工作…

【HDU - 3966】Aragorn's Story(树链剖分,模板题)

题干: Our protagonist is the handsome human prince Aragorn comes from The Lord of the Rings. One day Aragorn finds a lot of enemies who want to invade his kingdom. As Aragorn knows, the enemy has N camps out of his kingdom and M edges connect t…

机器学习笔记(七):神经网络:表示

目录 1)Non-linear hypotheses 2)Model representation 1 3)Model representation 2 4)Examples and intuitions 1 5)Examples and intuitions 2 6)Multi-class classification 1)Non-lin…

ROS入门_1.10 理解ROS服务和参数

目录 ROS Services使用rosservice rosservice listrosservice typerosservice call Using rosparam rosparam listrosparam set and rosparam getrosparam dump and rosparam load 本教程假设从前一教程启动的turtlesim_node仍在运行,现在我们来看看turtlesim提供了…

1.Introduction and Evaluation

感谢七月在线罗老师和吴同学! 最近报了七月在线的《推荐系统实战》班,根据上课资料和思维导图整理了这篇笔记! 1)推荐系统介绍 思维导图如下,其中需要掌握的是推荐系统存在的前提:信息过载和用户需求不明…

【ZOJ - 2968 】Difference Game (贪心,思维模拟)

题干: Now you are going to play an interesting game. In this game, you are given two groups of distinct integers and C coins. The two groups, named Ga and Gbrespectively, are not empty and contain the same number of integers at first. Each time…

使用 rqt_console 和 roslaunch

Description:本教程介绍如何使用 rqt_console 和 rqt_logger_level 进行调试,以及如何使用 roslaunch 同时运行多个节点。早期版本中的 rqt 工具并不完善,因此,如果你使用的是“ROS fuerte”或更早期的版本,请同时参考 这个页面 学…

机器学习必备宝典-《统计学习方法》的python代码实现、电子书及课件

本文转自微信公众号:机器学习初学者 原创: 机器学习初学者 机器学习初学者 6天前 《统计学习方法》可以说是机器学习的入门宝典,许多机器学习培训班、互联网企业的面试、笔试题目,很多都参考这本书。本站根据网上资料用python复现…

【2019牛客暑期多校训练营(第一场) - H】XOR(线性基,期望的线性性)

题干: 链接:https://ac.nowcoder.com/acm/contest/881/H 来源:牛客网 Bobo has a set A of n integers a1,a2,…,ana1,a2,…,an. He wants to know the sum of sizes for all subsets of A whose xor sum is zero modulo (1097)(1097). F…

机器学习入门必备的13张“小抄”(附下载)

目录 1)TensorFlow 2)Keras 3)Neural Networks 4)Numpy 5)Scipy 6)Pandas 7)Scikit-learn 8)Matplotlib 9)PythonForDataScience 最近在github上发现了很有用的…

ROS launch文档介绍

本文章转自:https://charlyhuangrostutorial.wordpress.com/2015/08/12/20/ 前面已经提过关于launch 档的角色,很类似bash 档,基本上就是把所有为了执行某个特定功能所需要的指令都写在一张纸上,交给ROS 一次执行开来。举例来说&a…

【2019牛客暑期多校训练营(第一场) - A】Equivalent Prefixes(单调栈,tricks)

题干: 链接:https://ac.nowcoder.com/acm/contest/881/A 来源:牛客网 Two arrays u and v each with m distinct elements are called equivalent if and only if RMQ(u,l,r)RMQ(v,l,r) for all 1≤l≤r≤m where RMQ(w,l,r) denotes th…

吴恩达机器学习作业(1):线性回归

目录 1)导入相关库和数据 2)代价函数 3)批量梯度下降 4)绘制线性模型 前阵子在网易云课堂学习了吴恩达老师的机器学习课程,今天结合网上资料,用Python实现了线性回归作业,共勉。建议大家使…