Jittor 深度学习框架入门(pytorch转换)、对比 |
您所在的位置:网站首页 › 框架和框架集有什么关系 › Jittor 深度学习框架入门(pytorch转换)、对比 |
1.PyTorch是一个开源的Python机器学习库,基于Torch,用于自然语言处理等应用程序。 中文网站:https://pytorch-cn.readthedocs.io/zh/latest/ 2.NumPy(Numerical Python)是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix)),支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。 3.tensorflow tensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief。 tensorflow和pytorch都基于caffe而来,并且日趋同化 Caffe,全称Convolutional Architecture for Fast Feature Embedding,是一个兼具表达性、速度和思维模块化的深度学习框架。由伯克利人工智能研究小组和伯克利视觉和学习中心开发。虽然其内核是用C++编写的,但Caffe有Python和Matlab 相关接口。Caffe支持多种类型的深度学习架构,面向图像分类和图像分割,还支持CNN、RCNN、LSTM和全连接神经网络设计。Caffe支持基于GPU和CPU的加速计算内核库,如NVIDIA cuDNN和Intel MKL。 对比: pytorch 轻量、灵活,使用动态图描述神经网络 动态图分为静态的子图和控制流,控制流控制宏观上调用哪些子图,静态包含Module和Function,Function包含自动微分相关管理,Module在此基础上管理权重。 控制流使用python 的控制流,在Module的forward中使用python描述控制流程。 tensorflow早期使用静态图描述神经网络,但缺乏控制流。目前是加一些控制流的op(用静态图打一些补丁把动态的部分包装成一个op,但不灵活。用户层面使用较多的是python描述控制流。 pytorch的做法是引入Torchscript,用python修饰符将用户描述控制流转为Torchscript控制流,同时转换为后端,以便部署。 4.jittor Jittor 是一个基于即时编译和元算子的高性能深度学习框架,整个框架在即时编译的同时,还集成了强大的Op编译器和调优器,为您的模型生成定制化的高性能代码。 Jittor前端语言为Python。前端使用了模块化的设计,类似于PyTorch,Keras,后端则使用高性能语言编写,如CUDA,C++。 https://cg.cs.tsinghua.edu.cn/jittor/assets/docs/jittor.html pytorch->jittor模型辅助转换工具教程 http://cg.cs.tsinghua.edu.cn/jittor/tutorial/2020-5-2-16-43-pytorchconvert/ from jittor.utils.pytorch_converter import convert pytorch_code= """ class AdaptiveAvgPool2d(nn.Module): """ jittor_code = convert(pytorch_code) print(jittor_code)在线转换: http://cg.cs.tsinghua.edu.cn/jittor/pt_converter/ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |