1 样本的表示形式
2 由线性模型产生的样本
3 逆矩阵的意义html
在数据挖掘过程当中,样本以特征值矩阵X和目标值向量Y的形式表示。容量为n,有m个特征的样本,其特征值矩阵X由n个维度为m的列向量组成,第j个列向量为样本中第j个个体的特征值向量;目标值向量Y的第j个份量为样本中第j个个体的目标值:算法
已知样本的特征值矩阵X,由线性模型生成样本的目标值向量的方式由如下公式定义:机器学习
权值向量W是维度为m的行向量,偏差向量e为维度为n的行向量,其份量独立同分布,服从均值为0的正态分布。之因此说这样的样本是由线性模型生成,是由于知足:学习
也就是说,从指望的角度来讲,目标值和特征值存在线性关系!在假设样本是由线性模型产生的前提下,咱们一般使用基于线性模型的机器学习算法来解决回归问题,例如:最小均方法(LMS),最小二乘法,回归支持向量机法等。可是,假设让一个彻底没有机器学习背景的人来解决回归问题,他该如何入手呢?测试
解决回归问题,归根结底是要预测新个体的目标值。一个最直观的方式就是,让新个体(测试样本中的个体)与已知个体(训练样本中的个体)比较类似性(特征向量类似),类似度越高意味着新个体的目标值与该已知个体的目标值更接近。这样一来,计算新个体与已知个体的类似性成为预测工做的关键之处。3d
余弦类似性与欧式距离是衡量向量类似的最基本的两个方法。暂且让咱们简化一下模型:假设样本只有2个特征,权值向量为[1, 2],在指望状况下,特征值和目标值构成三维空间中的平面,权值向量为该平面的法平面。经过如下两例,咱们能够得知余弦类似性和欧式距离在线性模型中没法使用。htm
例1、余弦类似性blog
在本例中,已知个体(红色)的特征值向量为[1, 1],未知个体(绿色)的特征向量为[2, 2],经过计算余弦类似度,可得未知个体与该已知个体一致类似,其目标值也应当为1 + 2 * 1 = 3。但实际上,若样本是经过线性模型生成的话,其目标值应当约为2 + 2 * 2 = 6。由该例咱们能够看到,余弦类似度只考虑了特征值向量的方向性,过于片面。get
例2、欧式距离数据挖掘
在本例中,有两个已知个体(红色与紫色),其特征值向量与未知个体的特征值向量的欧式距离都等于1。在这种状况下,该未知个体的目标值应当与哪一个已知个体更接近呢?若是样本是由线性模型产生的,该未知个体的目标值应当约为2 + 2 * 2 = 6。因此,以紫色的已知个体的目标值做为未知个体的目标值相对来讲合适一点。经过该例可知,欧式距离也不适合在线性模型中使用。
那到底怎么才能准确地描述未知个体与已知个体的类似性呢?在此,咱们不妨再次假设样本容量n=m,且特征值矩阵X是可逆的,也就是说样本中的个体是线性无关的。咱们知道逆矩阵有这样的性质:
这对咱们有什么启发呢?假设未知个体的特征值向量为x,x能够用X的m个线性无关列向量(已知个体的特征值向量)表示:
此时将X的逆矩阵乘以未知个体x,可得:
根据上式咱们能够看到,在已知个体是线性无关的前提下,若未知个体能包含ai份第i个已知个体的特征,则其与第i个已知个体的近似度就为ai。显然。这样的近似表示方法,在线性模型中才是准确的。
若是样本的容量n大于m,咱们该如何处理呢?假设X的秩仍然等于m,但因为X不是方阵,没法求解逆矩阵。此时咱们能够将原线性模型改写成:
此时,X乘以X的转置则变成了m维的方阵,因为X的秩为m,X与X转置的乘积的秩也为m,便可逆。此时咱们须要将Y与X的转置的乘以当作新的目标值向量,X与X转置的乘积当作新的已知个体的特征值矩阵,e与X转置的乘积当作新的偏差向量。不难看到,原始问题与新问题的解(回归问题的解一般是求权值向量)是“等价”的。在新问题中,特征值矩阵是方阵且可逆,这样即可经过求解新问题来解决原始问题了。