美文网首页
线性模型

线性模型

作者: Tsukinousag | 来源:发表于2021-02-04 23:19 被阅读0次
  • 1. 基本形式

即已知x,y通过机器学习的算法求得w与b


  • 2.线性回归

  • 2.1 问题描述

  • 2.2 一元线性回归

  • 2.2.1 问题描述

只有一个属性,即d=1
w,b为单个的数

  • 2.2.2 目标函数

均方误差对应了常用的欧几里得距离简称“欧氏距离”,基于均方误差最小化来进行模型求解的方法称为“最小二乘法”

  • 2.2.3 目标函数求解与证明
  • 2.2.4 模拟实验
  • 方法一

随机生成一些先行数据集

import numpy as np
from matplotlib import pyplot as plt
x=2*np.random.rand(100,1)
y=4 + 3*x + np.random.rand(100,1)
plt.scatter(x,y,s=10,color='g',marker='*',alpha=0.4)
y=range(0,16,2)
plt.yticks(y)
plt.xlabel('X1')
plt.ylabel('y')
plt.show()

使用标准方程来计算θ^,使用numpy的线性代数模块(np.linalg)中的inv()函数来对矩阵求逆,并用dot()方法计算矩阵的内积:

import numpy as np
from matplotlib import pyplot as plt
X=2*np.random.rand(100,1)
X=np.matrix(X)
y=4 + 3*X + np.random.rand(100,1)
y=np.matrix(y)
X_b=np.c_[np.ones((100, 1)), X]
theta_best=np.linalg.inv(X_b.T.dot(X_b)).dot(X_b.T).dot(y)
print(theta_best)

实际用来生成数据的函数是y=4+3*x1+高斯噪声
实验的公式结果

[[4.49764198]
 [2.95571874]]

非常接近,噪声的存在,其不可能完全还原为原本的函数
现在用θ^做出预测

X_new=np.array([[0],[2]])
X_new_b=np.c_[np.ones((2,1)),X_new]

y_predict=X_new_b.dot(theta_best)

plt.plot(X_new,y_predict,'r-')
plt.plot(X,y,'b.')
plt.axis([0,2,0,15])
plt.show()
  • 方法二

使用Scikit-Learn执行线性回归

lin_reg=LinearRegression()
lin_reg.fit(X,y)
#[4.49079138] [[3.01587697]]
X_new=np.array([[0],[2]])
X_new_b=np.c_[np.ones((2,1)),X_new]
lin_reg.predict(X_new)
#[[ 4.51503205]
#[10.45564916]]
  • 方法三

LinearRegression类基于scipy.linalg.lstsq()函数(名称代表“最小二乘”)

X_b=np.c_[np.ones((100, 1)), X]

theta_best_svd,residuals,rank,s=np.linalg.lstsq(X_b,y,rcond=1e-6)
#[[4.4350753]
#[3.0726514]]
  • 方法四(★★★)

使用np.linalg.pinv()来计算这个伪逆,这种方法比计算标准方程更有效,再加上它可以很好地处理边界情况:的确,如果矩阵XтX是不可逆的,标准方程可能没有解,例如m<n或者某些特征是多余的,但伪逆总是有定义的

X_b=np.c_[np.ones((100, 1)), X]

np.linalg.pinv(X_b).dot(y)
#[[4.51562244]
 #[2.98318706]]

相关文章

  • logistics回归分类

    logistics回归分类模型和线性模型的关系非常密切;区分下线性回归模型和线性模型;线性模型:自变量和因变量之间...

  • Day 3 -- 线性模型(上篇)

    第三章线性模型 本节文章主要讨论线性模型的回归,属于线性模型上篇,主要介绍线性模型的基本形式,线性模型的回归原理以...

  • 2019-02-21

    ML——线性模型 基本形式 线性模型就是用于预测的模型是线性的,模型形式如下: ...

  • Linear mixed effects models

    提到线性模型可能会联想到三大类: 一般线性模型 广义线性模型 混合线性模型 一般线性模型比较简单,模拟线性关系,求...

  • 西瓜书 第3章 线性模型 学习笔记

    第3章 线性模型 3.1 基本形式 线性模型:向量形式表示线性模型: 3.2 线性回归 线性回归试图学得:均方误差...

  • 【机器学习实践】有监督学习:线性分类、回归模型

    线性模型 为线性模型 分类和回归的区别 分类:离散回归:连续本文主要关注线性回归模型 常用线性回归模型类型 OLS...

  • 线性模型-线性回归

    线性模型 线性模型利用输入特征的线性函数(linear function)进行预测。 线性模型预测的一般公式如下:...

  • 数学与统计虐我千百遍……

    被数学和统计虐惨的我 广义线性模型 广义可加模型 广义估计方程 线性混合模型 线性相加模型 广义线性混合模型 一般...

  • Python机器学习之线性模型

    一、线性模型基本概念  线性模型不是指某一个模型,而是一类模型。在机器学习领域,常用的线性模型包括,线性回归、岭回...

  • 西瓜书-线性模型

    线性模型 西瓜书第二章,线性模型;

网友评论

      本文标题:线性模型

      本文链接:https://www.haomeiwen.com/subject/pzebtltx.html