线性建模:最小二乘法(机器学习基础教程)

栏目: 数据库 · 发布时间: 7年前

内容简介:问题转化为求 最小时, 的值,即求偏导然后联立求解令:

问题转化为求 最小时, 的值,即

求偏导然后联立求解

令:

求得:

更复杂的线性关系模型

利用矩阵推导更一般的模型

令:

得到:

平均损失函数可以表示为:

求偏导:

得到:

即:

简单线性模型拟合实现

推导出来结果后,代码比较简单了,我是用js写的

// 模型
// y = w0 + w1*x
export class Liner {
  constructor(public inputs: number[] = [], public outputs: number[] = []) {}
//   求w1
  getW1(): number {
    const xt = this.inputs.map((item: number, index: number) => {
      return item * this.outputs[index];
    });
    const xx = this.inputs.map(item => item * item);
    const xtMean = Liner.mean(xt);
    const _x = Liner.mean(this.inputs);
    const _y = Liner.mean(this.outputs);
    return (xtMean - _x * _y) / (Liner.mean(xx) - _x * _x);
  }
  // 求w0
  getW0() {
    return Liner.mean(this.outputs) - this.getW1() * Liner.mean(this.inputs);
  }
  // 预测值
  get(input: number) {
    return this.getW0() + this.getW1() * input;
  }
  // 求平均值
  static mean(arr: number[]): number {
    return arr.reduce((a, b) => a + b, 0) / arr.length;
  }
}
复制代码

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Computers and Intractability

Computers and Intractability

M R Garey、D S Johnson / W. H. Freeman / 1979-4-26 / GBP 53.99

This book's introduction features a humorous story of a man with a line of people behind him, who explains to his boss, "I can't find an efficient algorithm, but neither can all these famous people." ......一起来看看 《Computers and Intractability》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具