端智能入门介绍

1,894 阅读4分钟

从端智能是什么、为什么要做端智能、端智能的发展历程带大家认识端智能技术。

端智能是什么

端智能(On-Device Machine Learning)是指把机器/深度学习算法模型应用和部署到端设备上,这里“端设备”是相对于云服务而言的,可以是手机,也可以是物联网IoT设备。

  • 机器学习已进入生活中各个方面,在移动端上也有着非常多的应用场景:

    • 视觉:扫码、人脸手势识别、肢体姿态估计、目标检测跟踪、图像分割、OCR文字识别提取、图片视频实时超分等
    • 语音:语音分类识别等
    • 文本:翻译、对话系统、文本分类、智能回复等
    • 其他:推荐精排、无人驾驶、运动检测、智能预加载、AR、VR等

为什么要做端智能

  • 低延迟、实时性高:特征收集、模型推理、业务逻辑均在端侧完成,无需网络交互,端侧也更能够实时感应用户状态。
  • 保护隐私:数据只在端侧使用,无需上传云端,可更好地保护用户隐私数据。
  • 算力:移动端设备越来越强大,算力越来越高。
  • 可离线:可以离线使用。
  • 低成本:在端侧计算,利用端侧算力和存储空间,可节省大量的云端计算和存储资源。

  • 端云协同: 端智能并不是云智能的替代,是云端机器学习的延伸,是要结合云和端各自的优势,在云端之间合理分配任务以获取问题最优解。

    • 端设备上算力、内存、存储和功耗受限,运行的模型大小有限制;云端有海量数据和充足算力资源,两者配合协同可以发挥各自优势;典型的场景如移动端上的智能精排场景。

端智能的发展历程

  • 2006年,深度学习被提出,又得益于大数据的发展和硬件算力提升,深度学习算法和框架也不断演进,人工智能领域迎来了一次大发展。
  • 与此同时,端侧设备在算力、算法和框架上同样有突飞猛进的发展,各类端侧框架和案例层出不穷。

    • 2015年Tensorflow 推出Mobile版SDK,随后2017年开源,腾讯NCNN开源,各大互联网公司相继推出自己的移动端机器学习框架,开启了移动端计算框架开源潮。

端智能入门学习资料