唯品会深度学习在 APP 的实践和测试应用

2020-11-23 16:31:50 浏览数 (1)

本文来自携程技术沙龙上《深度学习在唯品会的实践和测试应用》,已授权发布。

我们在做的事

境外美妆

本次演讲内容:

人脸检测

传统的人脸检测

基于深度学习的人脸检测

识别效率高

当网络的构造设计完成之后,深度神经的网络能够自发去分类、提取需要使用的特征,这就大大节省了人工获取特点以及设计分类装置的不必要程序。深度神经网络的学习方式使得识别器不会进入到常见的多层次网络,避免局部选择。并且深度神经网络在训练时不需要监督,同时也不需要标签,节省了标本取样的时间。在表达复杂函数时,深度神经网络由于不需要过多的神经元,因此,识别效率得到了极大提升。

识别效果好

深度模型通过逐层抽象的方式获得人脸的高层特征,具备更强的表达能力,能够充分发挥大数据的优势,准确率比传统方式有着质的飞跃。当调整神经网络权值时,权值就会自动接近最优点,最终获取一个完美的数据。

Tensorflow

Why Tensorflow?

可用性

灵活性

效率

  • 功能强大的可视化组件TensorBoard
  • 相比其他的深度学习框架,文档最全,资源最多
  • 部署容易
  • 性能、SDK大小、模型大小都满足移动端App的需求

Tensorflow

Caffe

Keras

CNTK

mxnet

Github star

96k

23k

28k

14k

13k

Github fork

61k

14k

10k

3k

5k

Owner

Google

BVLC

fchollet

Microsoft

DMLC

Language

Python/C /...

C /Python

Python

C

Python/C /...

iOS Support

YES

YES

YES

NO

YES

Android Support

YES

YES

YES

NO

YES

Update

Very High

Very High

High

High

Middle

移动端部署

  • Tensorflow 的部署
  • 从Tensorflow到Tensorflow lite
  • 可替换组件化的部署
  • 模型/SDK大小的优化

性能优化

人脸检测

AR绘制

系统占用

总体时间消耗

测试

功能测试

普通常规功能测试,不再介绍

性能测试

数据对比如下

自动化测试

为什么要做自动化测试?

  • 避免人工测试产生的错误
  • 记录每一次测试的原始数据,确保测试结果可以重现,以便追踪问题
  • 提供更多的原始数据进行分析为下一步优化提供更多参考
  • 效率提升

测试工具

Farseer

修改

Template Loader 动态参数更新

Macarons

自动化流程测试

性能参数分析

对比历史

异常测试结论提醒

张凯通 |唯品会研究院资深开发工程师,

负责深度学习在移动端的应用,以及自动化测试等工作。曾参与"唯品会"、"学霸君"、"imo云办公室"等多款千万级用户的手机应用开发和架构设。

END

0 人点赞