让看不见的AI算法,助你拿下看得见的广阔市场
人工智能技术的飞速发展给各行各业都带来了深远的影响,AI已被视为企业提升运营效能、应对市场竞争的必经之路。然而对于一些企业而言,让AI真正实现落地和应用,并且创造价值,仍是一件需要努力的事情。
近日,在个推技术沙龙TechDay深圳站,来自华为、个推、SheIn的技术大拿们在现场,对AI核心技术进行了深入的探讨。
常越峰 《浅谈AI工具链》
个推大数据研发高级主管
AI在生产环境落地的整个过程中,通常会遇到三个挑战:
第一,业务场景复杂。简单的一个算法也许只能优化某个环节,但整个业务场景的优化可能需要许多算法的相互配合。
第二,数据问题。数据是AI的重要支撑之一,许多企业都欠缺获取高质量、有标注数据的能力。
第三,技术问题。在AI落地的过程所遇到的技术问题,有四个核心:1)CPU / GPU环境的调度和管理复杂。2)AI业务的开发人员们需要一个低门槛的实验平台,使其能够进行快速的探索实验。3)拥有大规模数据的企业,需要工业级大规模分布式训练,来保证算法能够应用于全量数据中。4)企业需要提供低延迟的在线服务。
人工智能最核心的是数据,而数据可以分为两个部分,实时数据和离线数据。个推使用Hive方案进行离线数据的存储,注重数据的容量和扩展性;而在线用户对延时非常在意,所以个推会使用高性能KV库,保证在线特征能够及时地被访问到。
在解决了基础的数据存储和使用问题之后,对于AI落地过程中的技术问题,个推内部支持端到端的服务,能够使用标准化流程快速进行实践探索。个推也自研了一些插件和产品包,简化流程步骤和复杂度,帮助经验较少的开发者也可以在较短的时间内搭建系统。最后,个推还支持了部署发布的工具,让训练的成果能够通过标准化的方式导出到线上,进行服务部署,真正地在线上产生价值。
在小微企业AI落地实践的过程中,可以使用Kubeflow等开源技术栈。首先,环境的管理与调度可以使用Kubernates作为分布式环境标准;Jupyter +开源数据分析工具包+ AI框架可以进行低门槛的快速探索实验;Kubeflow + Tensorflow / PyTorch / MXNet可以快速地部署大规模的分布式训练;最后,借助Kubernates提供的快速部署、上线、扩缩容的能力,可以提供高可用的在线服务。
而在AI实际落地时,企业则需要注意以下三点:
第一,快与高效。企业可以借助开源工具快速落地业务,同时也要注意沉淀流程和垂直领域。
第二,集成打通。Kubernates方案并不是唯一的选择,企业需要考虑自身情况,与已有系统进行对接,选择适合自身的方案。
第三,团队建设。各个技术部门之间需要进行高效的配合,企业也可以引导研发工程师逐渐地融入AI领域。
马兴国 《个性化推荐闲聊》
SheIn 产品研发中心 副总经理
对于企业来说,如果想要做好AI个性化产品的业务,只有算法工程师是不够的,还需要工程、数据分析人员的支持,以及产品、运营人员的助力。
当企业涉及到的业务较多时,也可以将业务进行通用处理,即建设偏向系统层面的推荐平台。该推荐平台需要数据、算法和系统的共同配合。推荐平台的接入,可以带来三点功能:第一,企业在进行物料同步时,可以做到格式统一,并且同步增量和全量;第二,平台在处理用户的服务请求时,可以做到标准化、高性能和智能化;第三,平台可以格式统一、实时、离线地上报用户行为。
简单的机器学习过程是搭建环境、收集数据、分析数据、准备数据、训练算法、测试算法和使用算法。在这个过程中也隐藏着许多问题,比如如何解决冷启动问题,如何解决假曝光问题,如何清洗异常数据,如何选择正负样本,如何解决数据稀疏问题,如何从亿级特征中选择显著特征等。
在机器学习的过程中,数据是基础,理想的状态是数据的数量大且特征完备。收集数据有“推”和“拉”两种方式,“拉”即是爬虫,“推”就是上报。而分析数据则是分析目标分布、特征分布、目标特征关系、特征间的关系和完整性等。分析数据的方式有离线分析、实时分析和融合分析,分析工具则可以在Excle、Shell(awk)、Python、Mysql、Hadoop、Spark、Matlab…当中进行选择。清洗数据需要清洗系统脏数据、业务脏数据和目标外数据。格式化数据则需要进行数据变换、采样和稀疏处理。
而机器学习可以选择的算法模型较多,如热度、贝叶斯、关联规则、LR、GBDT、AR、CF(ALS)等等。
在算法模型中,特征工程也是非常重要的一部分。其中,特征对象有物料、用户和上下文;特征类型有静态特征、动态特征、表征特征、枚举特征、实数特征等;特征维度则有一阶独立特征、二阶交叉特征和多阶交叉特征。特征的选择也是一件需要注意的事情,企业可以在过滤型、包裹型和嵌入型三种特征进行选择,同时,企业还需要在前向、后向和StepWise三种特征过程类型中进行选择。
算法的最后还需要进行效果评估、多维度评估、实时评估和离线评估。企业还需要注意到,没有一劳永逸的模型,算法需要进行持续的关注和运营。
合适环境的搭建也是算法能够正常运行的保障之一。算法的环境需要标准化、配置化、可扩展、高性能,同时支持立体监控和效果提升,保证用户体验。
聂鹏鹤 《AI识别,从图像到人脸》
华为算法工程师
在计算机领域,上世纪90年代就有人尝试,将图像的特征和识别的过程,通过人类的规则同步给计算机,让计算机进行“图像识别”。一直到了2012、13年,人们发现,对传统神经网络的结构方式做一些小的变化,能够大幅度地提升计算机进行图像识别的可操作性,这个改善后的神经网络被称为卷积神经网络(CNN)。CNN进行图像处理的本质是信息提取,也被称为自动的特征工程,即通过巨大的神经网络一步步地抽取到关键的图像特征,从而达到图像识别的目的。
而人脸识别则是一种基于人的脸部特征信息,进行身份识别的生物识别技术。现如今,人脸识别已经可以有效地对用户身份进行识别,并且被广泛地应用于支付、安检、考勤等场景。而随着人脸数据系统的建设,人脸识别也将成为反欺诈、风控等的有效手段之一,能够极大地缩短身份审核的确认时间。
人脸识别最大的优点是非接触性,可以隐蔽操作,这使得它能够适用于安全问题、罪犯监控与抓逃应用。同时,非接触性的信息采集没有侵犯性,容易被大众接受。而人脸识别方便、快捷、强大的事后追踪能力,也符合人类的识别习惯。人脸识别的不足之处,在于不同人脸的相似性小,同时识别性能受外界条件的影响大。
人脸识别的步骤主要包括人脸检测、人脸对齐校准、人脸特征提取、人脸特征模型建立、人脸特征匹配以及人脸识别结果的输出。
其中,人脸检测的目标是找出图像中,人脸所对应的位置,算法输出的则是人脸外接矩形在图像中的坐标,可能还包括姿态,如倾斜角度等信息。
人脸识别的第二步是人脸对齐,它需要在保证人脸的特征等要素没有发生扭曲和变化的前提下进行使用,在这样的情况下,输出的人脸距离才能与后期的模型进行有效对比。
人脸识别的最后一步是人脸匹配,在网络足够大,样本足够丰富的情况下,人脸匹配的准确率会非常高。
在人脸识别的领域,深度学习网络的发展会越来越好。深度学习有其相应的优势,它强调了数据的抽象和特征的自动学习,并且它的自主学习特征更为可靠。