1. 人工智能

本模块将人工智能深度学习为主题,基于Python,让读者在鲁班猫RK系列板卡上进行人工智能开发。 侧重于各种深度学习框架在鲁班猫上部署,关于框架模型的训练,优化等有简单描述,更详细系统的学习请参考各深度学习的书籍以及RKNN文档

1.1. 简介

1、 人工智能 (Artificial Intelligence,AI),不同学者和机构可能有不同的定义理解,常见的定义是: 人工智能是一门用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 而到具体实现,人工智能存在的诸多方法和分支,我们常听的机器学习、深度学习就是当前比较有效的实现方式。

2、 机器学习 (Machine Learning,ML)是人工智能的一个重要分支,它主要研究如何让计算机通过数据或经验来自动改进性能,通过模仿人学习能力,从样本数据中学习获取经验(模型),然后进行预测。 机器学习的常用算法包括监督学习、无监督学习、半监督学习和强化学习等。

3、 深度学习 (Deep Learning,DL)是机器学习算法中最热门的一个分支,近些年取得了显著的进展,并替代了大多数传统机器学习算法。简单的说就是一种基于人工神经网络的机器学习算法。 深度学习在机器视觉,语音识别,自然语言处理等领域有广泛的应用,特别适合解决感知类问题。

人工智能、机器学习、深度学习之间的关系,可以简单参考下:

broken

4、 深度学习框架 是一种软件库,可以帮助您构建、训练和部署深度学习模型,它通常提供了高级的抽象、预定义的层和优化器,以及自动微分等功能,使得编写深度学习代码更加简单和高效。 有很多深度学习框架可供选择,例如:

  • TensorFlow:谷歌开源的最受欢迎的深度学习框架之一,基于数据流图的计算方式,支持多种平台和语言。

  • PyTorch:Facebook开源的最新的深度学习框架之一,基于Torch库,使用Python语言编写,支持动态图和自动微分。

  • PaddlePaddle:百度开源的产业级深度学习平台,集深度学习核心训练和推理框架、基础模型库、端到端开发套件、丰富的工具组件于一体。

上面列举一些框架,其实还有很多其他的深度学习框架如Caffe、keras等等。

1.2. 人工智能和鲁班猫RK系列板卡

鲁班猫RK系列板卡,使用瑞芯微rk356X处理器, rk3568和rk3566的NPU模块,专门用于神经网络的处理单元,加速人工智能领域的神经网络算法,最高可达1TOPS, 并且支持整数8、整数16卷积运算,支持深度学习框架:TensorFlow、TF-lite、Pytorch、Caffe、ONNX等等。