当我们在学习深度学习的时候,往往会看到Sklearn、Pytorch、Tensorfloiw、Keras等各种各样的框架平台,看得我们眼花缭乱,这些框架平台究竟是干什么用的呢?🤔
一、数据科学基础框架
Numpy | 所有数据科学工程的基础,内容主要是存储Numpy矩阵 |
Pandas | 建立于Numpy基础之上,提供了表格容器DataFrame,主要内容为数据分析,包括数据汇总、数据清理、数据转换、数据重塑 |
SciPy | 建立于Numpy基础之上,内容主要是数学计算,包括统计、优化、整合、线性代数、傅里叶变换、信号和图像处理、常微分方程求解器 |
Matplotlib | 绘图工具,用于数据可视化 |
Searbon | 基于Matplotlib的扩展绘图工具,绘制出来的图表样式更多 |
二、机器学习+深度学习框架
Pytorch | 深度学习框架,内容主要是构建神经网络模型,由FaceBook公司研发,框架较为灵活以及拥有动态计算图,调试非常方便。适合科研领域 |
Tensorflow | 深度学习框架,内容主要是构建神经网络模型,由Google公司研发,发展的时间最久,因此具有非常完备的模型和教程。此外它自带服务框架,因此更容易将其部署到生产环境中。适合行业应用领域 |
Keras | 深度学习框架,内容主要是构建神经网络模型,其建立于Tensorflow之上,提供了非常多可以快速使用的API,使用起来是最快捷方便的,适合快速构建调试的工作 |
Caffe | 深度学习框架,内容主要面向图像处理,其处理和学习图像的速度非常的快 |
Sklearn (Scikit-learn) |
机器学习框架,很多模型开箱即用,内容主要是6大功能模块:分类任务、回归任务、聚类任务、降维任务、数据预处理任务,他是建立在Numpy、Scipy、Matplotlib,非常适合机器学习初学者。 |