教程地址:http://www.showmeai.tech/tutorials/33
本文地址:http://www.showmeai.tech/article-detail/141
声明:版权所有,转载请联系平台与作者并注明出处
数据分析、机器学习和深度学习领域,很多计算过程可以通过向量和矩阵进行并行化的高效处理,而NumPy可以很好地支撑向量化运算。NumPy 包是Python生态系统中科学计算的核心支撑之一,数据分析工具库 pandas,计算机视觉工具库OpenCV等库都基于NumPy。熟悉NumPy之后,知名的深度学习框架PyTorch、TensorFlow、Keras等,也可以直接迁移应用处理的方式,很多操作甚至无需更改就可以在GPU运行计算。
n维数组是NumPy的核心概念,大部分数据的操作都是基于n维数组完成的。本系列内容覆盖到1维数组操作、2维数组操作、3维数组操作方法,本篇为系列导入文章。
n维数组是NumPy中最核心的结构之一。数组与Python列表有些相似:都用来装载数据,都能够快速添加或获取元素,插入和移除元素则比较慢。
但NumPy数组因其广播特性可以直接进行算术运算,而Python列表则需要用列表推导式等操作来完成。对比示例如下(左侧为列表,右侧为NumPy数组):
其中,O(N)表示完成操作所需的时间与数组大小成正比(请见Big-O Cheat Sheet),O(1)表示操作时间与数组大小无关(详见Time Complexity)。
本教程系列的代码可以在ShowMeAI对应的github中下载,可本地python环境运行,能科学上网的宝宝也可以直接借助google colab一键运行与交互操作学习哦!