机器学习入门-线性回归算法(原理)

news/2024/7/6 3:51:17 标签: 人工智能, 数据结构与算法

数据:工资和年龄(2个特征)

目标:预测银行会贷款多少钱(标签)

考虑: 工资和年龄影响银行贷款,它们各自的影响大小(参数)

 

x1, x2 表示的是两个特征(年龄, 工资)

y 是银行最终会借我们多少钱

找到一条最合适线(一些高维点)来最好拟合我们的数据点

假设theta1是年龄的参数, theta2是工资的参数

h0 = theta0 + theta1 * x1 + theta2 * x2  # 目标函数np.dot(X, theta.T)

y = h0 + error  # 真实值与预测值的误差

error = y - h0 

由于大多数误差概率都符合高斯分布

p(error) = 1/(sqrt(2pi)*mean) * exp(-(y-h0)^2/2*mean^2)

计算所有x的误差,也就是似然函数

L(theta) =p(error)***

化解为对数似然

loglL(theta) = p(error) ++ 

化简为了使得对数似然的值越大,即

J(theta) = 0.5sum(y - h0) / len(h0)  最小, 这就是最小二乘法

对J(theta) 依据 theta进行求导操作

最后解得:

求最小值使得偏导等于0, 线性回归是唯一一个可以直接求解的函数

theta = np.dot(x.T * x) ^-1 * x.T * y 

 

转载于:https://www.cnblogs.com/my-love-is-python/p/10260236.html


http://www.niftyadmin.cn/n/835741.html

相关文章

Tornado写简易服务器

文章来源:http://blog.csdn.net/ACdreamers/article/details/24668551 我们都知道在Web开发中,都需要服务器,比如Java Web开发的Tomcat,WebLogic,WebSphere,现在来看利 用Tornado Web Server框架如何写一个…

C++ 转型

1、const_static的使用场景:接收一个const对象,但是想改变对象内容,使用const_static去除对象的常量性,然后可以修改对象。 2、dynamic_static的使用场景:从子类向父类转化符合里氏代换,总是安全的。因此dy…

python字符串反转 高阶函数 @property与sorted(八)

(1)字符串反转 1倒序输出 s abcde print(s[::-1]) #输出: edcba 2 列表reverse()操作 s abcde lt list(s) lt.reverse() print(.join(lt)) #输出: edcba 3 二分法交换位置 s abcde lt list(s) for i in range(len(l) // 2):lt[i], lt[-(i1)] lt[-(i1)], lt[i] print(.joi…

《黑马头条》SpringBoot+SpringCloud+ Nacos等企业级微服务架构项目

环境搭建、SpringCloud微服务(注册发现、服务调用、网关) 1)课程对比 2)项目概述 2.1)能让你收获什么 2.2)项目课程大纲 2.3)项目概述 随着智能手机的普及,人们更加习惯于通过手机来看新闻。由于生活节奏的加快,很多人只能利用碎片时间来获取信息&#x…

通过maven-shade-plugin 解决Elasticsearch与hbase的jar包冲突问题

http://blog.csdn.net/sunshine920103/article/details/51659936 今天在项目中集成hbase1.0.0-cdh5.5.2和ElasticSearch2.2.0时出现了问题,原先在集成Hbase时,引入了架包com.google.guava(16.0版本),后来在集成ES时发现es中也用到了guava的18.0版本。这时…

Hive 安装操作

本篇为安装篇较简单:前提:1: 安装了hadoop-1.0.4(1.0.3也可以)正常运行2:安装了hbase-0.94.3, 正常运行接下来,安装Hive,基于已经安装好的hadoop,步骤如下:1:下载从http:…

Tomcat服务器 Tomcat应用案例 、 Varnish代理服务器

案例1:安装部署Tomcat服务器案例2:使用Tomcat部署虚拟主机案例3:使用Varnish加速Web1 案例1:安装部署Tomcat服务器1.1 问题 本案例要求部署Tomcat服务器,具体要求如下:安装部署JDK基础环境安装部署Tomcat服…

5、依赖倒转原则

一、基础知识 1、依赖倒转原则(依赖置换原则): A、高层模块不应该依赖低层模块。两个都应该依赖抽象。 B、抽象不应该依赖细节。细节应该依赖抽象。 2、只有当子类可以替换掉父类,软件单位的功能不受到影响时,父类…