Python3入门机器学习之3.4向量化

Python3入门机器学习 同时被 2 个专栏收录
59 篇文章 1 订阅

Python3入门机器学习

3.4 向量化

1.向量化运算:
在这里插入图片描述

在上一节中,求解参数a时,使用的for循环依次求解出分子和分母的m项都是什么,然后将它们相加在一起。而使用for循环这种方式性能相对来讲是比较低的,如果有办法将这个计算变为向量计算,那么性能就会大大的提升,这就是向量化运算的意义。
在a的式子里,仔细观察分子和分母都属于以下这样一种模式:
在这里插入图片描述
而w是一个向量,v也是一个向量。有了这样两个向量,将它们进行点乘,就是两个向量对应的项相乘再相加。这样一来就可以使用numpy中向量的运算法则,非常快速高效。
在这里插入图片描述
2.具体实现代码:
将之前的for循环做如下的替换:

num = (x_train - x_mean).dot(y_train - y_mean)    #for循环改为向量化运算
d = (x_train - x_mean).dot(x_train - x_mean)      #其中点乘的意义为相乘再相加

其中dot函数为点乘。

3.向量化实现的性能测试:
在这里插入图片描述
由此可见使用向量化运算比使用for循环的效率提高了几十倍。

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
©️2020 CSDN 皮肤主题: 1024 设计师:白松林 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值