机器学习简介
机器学习是一种能够直接从数据中学习,而无需依赖规则编程的算法。不同于传统的程序开发方式,你不需要告诉程序应该怎么做(甚至你也不知道应该怎么做),只要提供数据来训练模型。因此机器学习能做到以传统开发模式不能或很难完成的任务。
应用场景
常见应用
- 搜索:Google 在数以亿计的网页中找到你想要的内容。
- 推荐系统:亚马逊通过机器学习来推荐可能需要的产品给用户。
- 垃圾邮件过滤:Gmail 通过机器学习分辨出垃圾邮件。
- 图像
- 光学字符识别(OCR):扫描全能王提供扫描文档的功能。
- 以图搜图:Google 提供以图搜图的功能,告别照骗。
- 人脸识别:支付宝刷脸支付,美图秀秀。
- 看图说话:Show and Tell: A Neural Image Caption Generator,自动生成图片的描述。Facebook 在图片加载失败时会显示自动生成的图片描述。
- 语音
- 语音识别:讯飞语音输入法、搜狗语音输入法。
- 智能语音交互:如苹果的 Siri、微软的 Cortana。
移动端应用场景
机器学习在移动端会有一些不同的玩法,在移动端进行深度学习计算有几个优点:
- 响应更快:由于不需要经过网络传输以及服务器对大规模数据进行计算,因此响应更快。边缘计算了解一下。
- 节省资源:手机计算能力日益强大,并且 Google 和 Apple 都在硬件层面上对机器学习进行了优化。原本在服务器进行的计算工作被转移到端上,节省了服务器资源。
- 隐私保护:不上传用户数据到服务器,最大限度保护用户隐私。
- 离线使用:在本地进行计算,不依赖网络连接。
但是相应地也有一些局限性:
- 模型滞后性:训练工作仍然不能在手机端完成,需要从服务器下发到移动端。
- 只能使用简单的模型:
已有的产品:
- 垃圾邮件/短信过滤:熊猫吃短信 app。
- 图像识别:iOS 相册中的搜索功能,支付宝形色识花。
- 推荐算法:天猫客户端基于端上实时用户操作行为的搜索推荐。
- 语音输入法:讯飞语音输入法。