本文介绍目前主流的深度学习框架层次结构,包括TensorFlow2、PyTorch、MindSpore
TensorFlow层次结构
TensorFlow2的层次结构为:硬件层,内核层,低阶API,中阶API,高阶API。
硬件层:TensorFlow所支持的硬件如CPU,GPU,TPU。
内核层:内核是C++ 实现的,包括函数库,本地运行时,分布式运行时,OP定义及其Kernel的实现等。
低阶API:低阶API也被称为算子,封装了C++内核的低阶API,主要包括各种张量,算子,计算图,自动微分等。如tf.nn.matmul、tf.Variable、tf.GradientTape,tf.constat等。
中阶API:中阶API是对低阶API的封装,封装了以层为核心的神经网络层,TensorFlow2的中阶API是Keras的layers,实现了各种模型层、损失函数、优化器、数据管道等。如tf.keras.layers.Conv1D、tf.keras.lossed.Loss、tf.data.Dataset、tf.keras.optimizers。
高阶API:高阶API是按照面向对象方式封装的高级API,TensorFlow2的高阶API是Keras的Model,如tf.keras.models。
上图很清楚的展示了TensorFlow的层次结构。Keras和TensorFlow的关系很明显了,Keras是对TensorFlow提供的低阶API进行封装,TensorFlow属于框架(Google开源的第二代用于数字计算(numerical computation)的软件库),Keras属于深度学习编程库,两者的定位不同。框架提供了低阶API其粒度

最低0.47元/天 解锁文章
4886

被折叠的 条评论
为什么被折叠?



