美文网首页
机器学习代码实现 线性回归

机器学习代码实现 线性回归

作者: lmem | 来源:发表于2017-07-02 21:07 被阅读58次

线性回归的求解方法是最小二乘法,具体原理:
保证所有数据偏差的平方和最小

Paste_Image.png Paste_Image.png Paste_Image.png

证明步骤

损失函数:

Paste_Image.png

化简

Paste_Image.png Paste_Image.png Paste_Image.png

对L求偏导数

Paste_Image.png Paste_Image.png Paste_Image.png
from numpy import *
import matplotlib.pyplot as plt

#1. Get data from file
def load_data_set(filename):
    num_feat = len(open(filename).readline().split('\t')) -1
    data_mat = []
    label_mat = []
    fr = open(filename)
    for line in fr.readlines():
        line_arr = []
        cur_line = line.strip().split('\t')
        for i in range(num_feat):
            line_arr.append(float(cur_line[i]))
        data_mat.append(line_arr)
        label_mat.append(line_arr[-1])
    return data_mat, label_mat

# 2. Get w of function coefficient
def stand_regres(x_arr, y_arr):
    x_mat = mat(x_arr)
    y_mat = mat(y_arr)
    xTx = x_mat.T*x_mat
    # is can inverse
    if linalg.det(xTx) == 0.0:
        print "this matrix is singular, cannot do inverse!!!"
        return
    ws = xTx.I * (x_mat.T*y_mat)
    return ws

xArr, yArr = load_data_set('ext0.txt')
ws = stand_regres(xArr, xArr)
print ws
xMat = mat(xArr)
yMat = mat(yArr)
xCopy = xMat.copy()
xCopy.sort(0)
yHat = xCopy*ws

fig = plt.figure()
# 1 row 1 col the 1 block
ax = fig.add_subplot(111)
# must array
ax.scatter(xMat[:, 1].flatten().A[0], yMat.T[:, 0].flatten().A[0])

ax.plot(xCopy[:, 1], yHat)
plt.show()

```

相关文章

  • 线性回归--原理

    线性回归--原理 线性回归--python实现(不使用框架) 线性回归--sklearn框架实现 通常我们学习机器...

  • 机器学习代码实现 线性回归

    线性回归的求解方法是最小二乘法,具体原理:保证所有数据偏差的平方和最小 证明步骤 损失函数: 化简 对L求偏导数

  • 机器学习——线性回归及代码实现

    一、基本形式: 给定由 d 个属性描述的实例,其中 是 在第 个属性上的取值,线性模型(linear mod...

  • 机器学习第2天:线性回归(理论篇)

    来自专题:【机器学习100天】 1. 前言 在上篇文章(线性回归-代码篇)中我们实现了用线性归回模型预测鸢尾花的花...

  • 2019-10-29

    Day2 简单线性回归模型 机器学习入门--简单线性回归机器学习算法之线性回归算法 导入库matplotlib 绘...

  • Python编写线性回归算法

    Python编写线性回归算法 前言 线性回归(Linear Regression)是机器学习的基础,作为机器学习算...

  • 《机器学习》线性模型公式推导与算法实现

    线性回归 参考西瓜书《机器学习》线性回归 给定训练集,其中,.线性回归(linear regression)试图学...

  • 线性回归模型

    参考:1.使用Python进行线性回归2.python机器学习:多元线性回归3.线性回归概念 线性回归模型是线性模...

  • 2018-09-09学习计划

    1.机器学习的课程两个章节, 把书里面的线性回归代码还有逻辑回归代码写一下下载机器学习实战的代码还有吴恩达的课程的...

  • Python 机器学习算法一之线性回归的推导及实战

    线性回归是机器学习中最基本的算法了,一般要学习机器学习都要从线性回归开始讲起,本节就对线性回归做一个详细的解释。 ...

网友评论

      本文标题:机器学习代码实现 线性回归

      本文链接:https://www.haomeiwen.com/subject/gbjocxtx.html