吴恩达2022机器学习专项课程(一) 5.2 向量化(1)& 5.3 向量化(2)

问题预览/关键词

  1. 什么是向量化?
  2. 向量化的好处是?
  3. 如何向量化多元线性回归函数的参数?
  4. 如何在Python中向量化参数?
  5. 计算机底层是如何计算向量化的?
  6. 向量化示例

笔记

1.向量化

一种在数学和计算中广泛使用的概念,它指的是以向量的形式处理数据,而不是单个元素。

2.好处

减少代码量,简化格式,显著提高数据处理的效率。

3.向量化参数

  • 原有格式
  • 三个参数w的向量化,用w加上面一个箭头来表示。
  • 三个输入特征x的向量化。
  • 参数b是标量(一个元素)
  • 最终格式

4.Python代码向量化参数

  • 使用Numpy数组存储w和b。
  • 未向量化代码,取数据元素一个一个相乘(灰色部分)。
  • 未向量化代码,for循环,相比一个一个计算好一些,但是效率依旧不高。
  • 向量化,使用NumPy库的dot函数,一行代码就实现。

5.底层计算向量化

向量化会让计算机调用专门的硬件,并行处理显著提高效率,同时计算多个操作。

6.向量化示例

  • w和d分别有16个元素,需要计算每个w元素减去对应的d元素和0.1乘积,然后更新对应的w。
  • 未向量化,for循环。
  • 向量化,w和d都是Numpy数组,计算过程会逐个元素计算,一行代码搞定。

总结

向量化既可以减少代码量,增加代码的可读性和维护性,同时底层会调用GPU计算,提高代码运行速度和效率。在Python中,我们会经常使用Numpy库的方法,例如np.array,np.dot,避免显式的循环,直接对数组进行数学和逻辑操作,来达到向量化的效果。

相关推荐
果冻人工智能3 分钟前
AI军备竞赛:我们是不是正在造一个无法控制的神?
人工智能
暴龙胡乱写博客8 分钟前
OpenCV---图像预处理(四)
人工智能·opencv·计算机视觉
程序员辣条15 分钟前
深度测评 RAG 应用评估框架:指标最全面的 RAGas
人工智能·程序员
curdcv_po17 分钟前
字节跳动Trae:一款革命性的免费AI编程工具完全评测
人工智能·trae
程序员辣条17 分钟前
为什么需要提示词工程?什么是提示词工程(prompt engineering)?为什么需要提示词工程?收藏我这一篇就够了!
人工智能·程序员·产品经理
孔令飞21 分钟前
Go:终于有了处理未定义字段的实用方案
人工智能·云原生·go
清流君34 分钟前
【MySQL】数据库 Navicat 可视化工具与 MySQL 命令行基本操作
数据库·人工智能·笔记·mysql·ue5·数字孪生
Blossom.11841 分钟前
人工智能在智能家居中的应用与发展
人工智能·深度学习·机器学习·智能家居·vr·虚拟现实·多模态融合
biter008843 分钟前
ubuntu(28):ubuntu系统多版本conda和多版本cuda共存
linux·人工智能·ubuntu·conda
薄荷很无奈1 小时前
CuML + Cudf (RAPIDS) 加速python数据分析脚本
python·机器学习·数据分析·gpu算力