赞
踩
最小二乘法进行线性拟合分为训练过程和预测过程
训练过程分为如下3步:
①导入训练数据集,得到特征值feature(即X)和标签label(即Y)
②利用最小二乘法进行训练,根据公式得到W
③将W保存
预测过程分为如下4步:
①导入测试数据集,得到测试集的特征值feature
②导入W
③根据公式得预测值predict
④将预测值保存
w = np.matmul(np.matmul(feature.T, feature).I, np.matmul(feature.T, label))
即:
predict = np.matmul(testData, w.T)
import numpy as np # 导入训练数据集data.txt def load_data(file_name): '''导入数据 input: file_path(string):训练数据 output: feature(mat):特征 label(mat):标签 ''' f = open(file_name) feature = [] label = [] for line in f.readlines(): feature_tmp = [] lines = line.strip().split("\t") # print(lines) feature_tmp.append(1) # x0 for i in range(len(lines) - 1): feature_tmp.append(float(lines[i])) feature.append(feature_tmp) label.append(float(lines[-1])) f.close() # print(np.mat(feature)) # print(np.mat(label).T) # 矩阵化 return np.mat(feature),
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。