机器学习算法-线性回归

机器学习算法-线性回归

1.K-近邻算法

(略)

2.线性回归

2.1线性回归简介
1.线性回归应用场景
  • 房价预测
  • 销售额度预测
  • 贷款额度预测
2.什么是线性回归
2.1定义与公式

线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方法.

特点:只有一个自变量的情况称为单变量回归,多于一个自变量情况叫做多元回归

通用公式:
h(w)=w1x1+w2x2+w3x3...+b=wTx+b h(w)=w_1x_1+w_2x_2+w_3x_3...+b=w^Tx+b h(w)=w1x1+w2x2+w3x3...+b=wTx+b
其中w,x可以理解为矩阵:
w=(bw1w2),x=(1x1x2) w=\bigg( \begin{smallmatrix} b\\w_1\\w_2 \end{smallmatrix} \bigg),x=\bigg( \begin{smallmatrix} 1\\x_1\\x_2 \end{smallmatrix} \bigg) w=(bw1w2),x=(1x1x2)

  • 线性回归用矩阵表示举例
    { 1×x1+x2=20×x1+x2=22×x1+x2=3 \left\{ \begin{matrix} 1 \times x_1 + x_2=2\\ 0 \times x_1 + x_2=2\\ 2 \times x_1 + x_2=3 \end{matrix} \right. 1×x1+x2=20×x1+x2=22×x1+x2=3

  • 写成矩阵形式:
    [110121][x1x2]=[223]↑↑↑A×x=b \left[\begin{matrix}1&1\\0&1\\2&1\end{matrix}\right] \left[\begin{matrix}x_1\\x_2\end{matrix}\right] =\left[\begin{matrix}2\\2\\3\end{matrix}\right]\\ \uparrow \quad \quad \quad \uparrow \quad \quad \quad \uparrow\\ A \quad \times \quad x\quad = \quad b 102111 [x1x2]= 223 A×x=b

2.2线性回归api初步使用
code
from sklearn.linear_model import LinearRegression

# 1.获取数据
X = [[80, 86],
     [82, 80],
     [90, 90],
     [85, 78],
     [86, 82],
     [82, 90],
     [78, 80],
     [92, 94]
     ]
y = [84.2, 80.6, 80.1, 90, 83.2, 86.6, 79.4, 93.4]

# 2.模型训练
# 2.1实例化一个估计器
estimator = LinearRegression()
# 2.2使用fit方法进行训练
estimator.fit(X, y)
# 打印对应的系数
print("线性回归的系数是:\n", estimator.coef_)
# 打印预测结果
print("输出预测结果:\n", estimator.predict([[100, 80]]))

# D:\Python\Python311\python.exe D:\work\pyprj\ml\linser_demo.py
# 线性回归的系数是:
#  [0.41212411 0.13044053]
# 输出预测结果:
#  [90.47473664]

2.3数学:求导
1、常见的函数导数

n公式例子1(常数)′=0(5)′=0(10)′=02(xa)′=axa−1(x3)′=3x23(ax)′=axlna(2x)′=2xln24(ex)′=ex(ex)′=ex5(logax)′=1xlna(log10x)′=1xln106(lnx)′=1x(lnx)′=1x7(sinx)′=cosx(sinx)′=cosx8(cosx)′=−sinx(cosx)′=−sinx \begin{array} {|c|l|l|} \hline n & \text{公式} & \text{例子} \\ \hline 1 & (常数)'=0 & (5)'=0 (10)'=0 \\ \hline 2 & (x^a)'=ax^{a-1} & (x^3)'=3x^2 \\ \hline 3 & (a^x)'=a^xlna & (2^x)'=2^xln2 \\ \hline 4 & (e^x)'=e^x & (e^x)'=e^x\\ \hline 5 & (log_ax)'= \frac{1}{xlna} & (log_{10}x)'= \frac{1}{xln10}\\ \hline 6 & (lnx)'= \frac{1}{x} & (lnx)'= \frac{1}{x}\\ \hline 7 & (sinx)'= cosx & (sinx)'= cosx \\ \hline 8 & (cosx)'= -sinx & (cosx)'= -sinx\\ \hline \end{array} n12345678公式(常数)=0(xa)=axa1(ax)=axlna(ex)=ex(logax)=xlna1(lnx)=x1(sinx)=cosx(cosx)=sinx例子(5)=0(10)=0(x3)=3x

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值