美文网首页
机器学习第四课_线性回归

机器学习第四课_线性回归

作者: 素心似锦 | 来源:发表于2020-03-29 22:24 被阅读0次

我们所谓的建模过程,其实就是找到一个模型,最大程度的拟合我们的数据。 在简单线回归问题中,模型就是我们的直线方程:y = ax + b 。

要想最大的拟合数据,本质上就是找到没有拟合的部分,也就是损失的部分尽量小,就是损失函数(loss function)(也有算法是衡量拟合的程度,称函数为效用函数(utility function)):

因此,推导思路为:

通过分析问题,确定问题的损失函数或者效用函数;

然后通过最优化损失函数或者效用函数,获得机器学习的模型

近乎所有参数学习算法都是这样的套路,区别是模型不同,建立的目标函数不同,优化的方式也不同。

回到简单线性回归问题,目标:

[if !vml]

[endif]

###简单线性回归算法的实现

 

import numpy as np

import matplotlib.pyplot as plt

x = np.array([1.,2.,3.,4.,5.])

y = np.array([1.,3.,2.,3.,5,])

plt.scatter(x,y)

plt.axis([0,6,0,6])

plt.show()

# 首先要计算x和y的均值

x_mean = np.mean(x)

y_mean = np.mean(y)

# a的分子num、分母d

num = 0.0

d = 0.0

for x_i,y_i in zip(x,y):   # zip函数打包成[(x_i,y_i)...]的形式

   num = num + (x_i - x_mean) * (y_i - y_mean)

    d= d + (x_i - x_mean) ** 2

a = num / d

b = y_mean - a * x_mean

y_hat = a * x + b

plt.scatter(x,y)    #绘制散点图

plt.plot(x,y_hat,color='r')    #绘制直线

plt.axis([0,6,0,6])

plt.show()

x_predict = 6

y_predict = a * x_predict + b

print(y_predict)

##向量化运算

import numpy as np

import time

a = np.random.rand(1000000)

b = np.random.rand(1000000)

tic = time.time()

c = np.dot(a, b)

toc = time.time()

print("c: %f" % c)

print("vectorized version:" +str(1000*(toc-tic)) + "ms")

c = 0

tic = time.time()

for i in range(1000000):

    c+= a[i] * b[i]

toc = time.time()

print("c: %f" % c)

print("for loop:" +str(1000*(toc-tic)) + "ms")

相关文章

  • 2019-10-29

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

  • Python编写线性回归算法

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

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

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

  • 线性回归--原理

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

  • 线性回归模型

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

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

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

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

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

  • 【机器学习快速入门教程4】线性回归

    章节4:线性回归 本章节,我们将介绍线性回归问题,机器学习中最基础的问题。 线性回归 线性回归是指在一组数据中拟合...

  • 多元线性回归

    链接:多元线性回归 NG机器学习公开课笔记:机器学习笔记

  • Task4模型调参

    学习目标 了解常用的机器学习模型,并掌握机器学习模型的建模与调参流程 内容介绍 线性回归模型:线性回归对于特征的要...

网友评论

      本文标题:机器学习第四课_线性回归

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