首先需要理解基于最小二乘法求解参数。
矩阵表达,几何意义,从概率角度看最小二乘法等价于noise为高斯分布的MLE(极大似然概率)。
正则化,L1Lasso
L2 Ridage岭回归。
其中涉及到了 损失函数,最大似然估计等内容,
损失函数为

需要做的便是求出该值得最小值,对该损失函数求导,求出倒数为零时即为损失函数最小值,经过一系列计算后得到的结果就是(需要注意的是,由于下面的计算方法需要X为可逆的,这边需要自变量间不能存在多重共线性)
所以用python实现最小二乘法估计的方法如下所示
# 引入所需要的全部包
from sklearn.model_selection import train_test_split
import numpy as np
import matplotlib as mpl
import matplotlib.pyplot as plt
import pandas as pd
from pandas import DataFrame
### 设置字符集,防止中文乱码
mpl.rcParams['font.sans-serif']=[u'simHei']
mpl.rcParams['axes.unicode_minus']=False
#导入数据集,看看数据的形式
path1='datas/household_power_consumption_1000.txt'
df = pd.read_csv(path1, sep=';', low_memory=False)#没有混合类型的时候可以通过low_memory=F调用更多内存,加快效率)
print(df.head())
print(df.columns)
#看一下数据

最低0.47元/天 解锁文章
1815

被折叠的 条评论
为什么被折叠?



