机器学习中简易方法----线性建模:最小二乘法
来源:互联网 发布:徒有琴 知乎 编辑:程序博客网 时间:2024/06/05 20:18
在机器学习中,学习或者推断 属性 变量与相应 响应 变量或 目标 变量之间的 函数 关系,使得对于一个给定的属性(特征)集合,可以进行相应的预测。
例如,建立一个用户对物品的喜好预测模型。已知的数据中有用户信息(年龄,性别等),物品信息(种类,颜色等) ,以及用户对物品的喜好关系(例如 A用户喜好B物品)。在给定的用户和物品间(喜好关系未知),希望预测出用户对这个物品的喜好。
在此种情况下,建立一个 关于某个顾客以前买过物品的描述(属性) 和 该顾客最终是否喜好该产品(响应) 的模型。这个模型可以帮助我们预测顾客可能喜好的物品,并因此进行推荐。
一 线性建模
在属性与响应之间建立 线性 关系。
较为简单的线性关系,参数w0 和 w1是需要不断学习和训练的。
在这个直线中,w0为截距,w1为梯度。
1.1 例子,在MATLAB中以交互形式画出这个线性模型 (直线)
% %% PlotLine.m% %% 定义x 输入x = [-1 1 3]; %% figure(1);hold offfprintf('\n 按 (ctrl-c) 退出\n');while 1 intercept = str2num(input('Enter intercept:','s')); gradient = str2num(input('Enter gradient:','s'));plot(x,intercept + gradient.*x);hold all fprintf('\n 直线: y = %g + %g x\n\n',intercept,gradient);end
1.2 模型的评价方式
由w0 和 w1的一些值组成,这些值可以产生一条能尽可能与所有 (训练)数据点 接近 的直线。T为x下的真实值,t为x下的预测值。
平方差定义:
平方差越小,说明预测值和真实值的误差越小
这个表达称为 平方损失函数 (squard loss function)
考虑整个数据集上的 平均损失
w0和w1的最小值,及求上式的最小值
1.3 最小二乘法
将上式展开并求偏导
注: 字母上的横线为平均值的含义
1.4 向量与矩阵的引入
当多个属性集时,可能需要多个参数
例如,C1,C2,C3,C4
当属性与参数较多时,使用向量和矩阵来描述。
x为输入值(属性)的矩阵,为参数向量
1.5 matlab例子,画出几个点的线性建模直线
<span style="color:#ff0000;">%% fitlinear.m% From A First Course in Machine Learning, Chapter 1.% Simon Rogers, 31/10/11 [simon.rogers@glasgow.ac.uk]</span>clear all;close all; %% Define the data (Table 1.1)% Change these to use a different datasetx = [1;3;5];t = [4.8;11.1;17.2];N = length(x); % 3%% Compute the various averages required% m_x = sum(x)/N;%%%%m_t = sum(t)/N;%%% m_xt = sum(t.*x)/N;%%% m_xx = sum(x.*x)/N; %% Compute w1 (gradient) (Equation 1.10)w_1 = (m_xt - m_x*m_t)/(m_xx - m_x^2);%% Compute w0 (intercept) (Equation 1.8)w_0 = m_t - w_1*m_x; %% Plot the data and linear fitfigure(1);hold offplot(x,t,'bo','markersize',10,'linewidth',2)xplot = [0 6];xlim(xplot)hold onplot(xplot,w_0+w_1*xplot,'r','linewidth',2)xlabel('x');ylabel('t');
以上代码的结果图:
参考文献:
First course in machine learning
机器学习(中文版)
- 机器学习中简易方法----线性建模:最小二乘法
- 机器学习笔记(一) : 线性建模——最小二乘法
- 机器学习线性回归中,用矩阵求导方法求最小二乘法的方法
- 机器学习--线性回归 最小二乘法
- 机器学习-线性回归-最小二乘法
- 机器学习:线性回归 最小二乘法 方差
- 机器学习--最小二乘法和加权线性回归
- 机器学习【2】线性回归——最小二乘法
- 机器学习笔记二:线性回归与最小二乘法
- 机器学习_最小二乘法,线性回归与逻辑回归
- 机器学习笔记(VI)线性模型(II)多维最小二乘法
- 机器学习之线性回归的最小二乘法求解
- 机器学习:Python中如何使用最小二乘法
- 机器学习:Python中如何使用最小二乘法
- 机器学习:Python中如何使用最小二乘法
- 关于机器学习中最小二乘法的推导
- 机器学习之最小二乘法
- 机器学习之最小二乘法
- 黑马程序员——————多态性——vptr和vtable
- hdoj1156_rownie Points II(线段树)
- esriControlsMousePointer常量
- Linux文件特殊权限
- Lua 标准库 - 基本函数(base function)
- 机器学习中简易方法----线性建模:最小二乘法
- linux常用命令
- 漠河车牌号车辆车主信息查询
- 刘汝佳--线段树模版
- mac设置一类文件的默认打开方式
- HTML(第十一章案例分析)
- 自定义View--操作动画
- pl/sql学习
- [Tomcat] classpath resource [hbm.xml] cannot be opened because it does not exist