机器学习技术如今那么热门,想必每一个同窗都曾尝试着,或者在实践项目中开发过具有这种能力的应用吧。例如分析用户在电商网站上的行为借此找出「羊毛党」,给公司餐厅开发那种餐盘从摄像头下扫过就自动识别菜品并计算总金额的付款机,甚至能够自动判断顾客所购商品而后自动结帐的无员工智能超市……html
在有明确需求的状况下,全新开发一个具有机器学习能力的应用程序,这固然没什么问题。可若是,你须要让现有的 Web 或移动应用程序具有机器学习能力呢?得进行多少修改?花费多少时间?git
AWS 始终坚信:机器学习技术,理应成为每一个开发者手中的利器!而一直以来,AWS 也一直努力经过计算机视觉和语言等领域的创新,为用户提供预训练的人工智能服务,帮助用户在不须要具有机器学习领域专业知识的前提下也能顺利使用。
最近,AWS 又有新服务上线了:Amplify Framework 新增预测类别!只需几行代码,就能够给任何 Web 或移动应用程序添加和配置人工智能/机器学习能力。github
AWS Amplify 由一个开发框架和多种开发人员服务组成,经过它能够很是轻松地在 AWS 上构建移动和 Web 应用程序。开源化的 Amplify Framework 提供了一组精心选择的库、用户界面(UI)组件以及一个命令行界面(CLI),可用于构建云后端并与 Web 或移动应用程序集成。
Amplify 充分利用了一系列核心 AWS 服务,分为多个类别,包括存储、身份验证与受权、API(GraphQL和REST)、分析、推送通知、聊天机器人以及AR/VR 等。
借助 Amplify Framework CLI,咱们可使用 amplify init 以交互的方式完成项目的初始化,而后完成存储(amplify add storage)和用户身份验证与受权(amplify add auth)选项。
不只如此,咱们还可使用 amplify add predictions 来配置本身的应用程序,从而执行下列任务:后端
咱们能够选择将上述各项操做仅对经过身份验证的应用程序开放,或同时也对未经受权的来宾用户开放。根据输入的不一样,Amplify 将使用 AWS Identity and Access Management(IAM)角色和 Amazon Cognito 来配置必要权限。浏览器
接下来,咱们一块儿来看看「预测」类别在 Web 应用程序中的工做原理。
举例来讲,咱们但愿直接从浏览器中使用 Amazon Rekognition 识别图像中的文本,为此可使用以下 JavaScript 句法并传送一个文件对象:框架
Predictions.identify({ text: { source: file format: "PLAIN" # "PLAIN" uses Amazon Rekognition } }).then((result) => {...})
若是图像存储在Amazon S3 中,那么能够在添加此项目的存储时将源更改成该 S3 存储桶的连接。此外还能够更改格式以使用 Amazon Textract 分析扫描的文档。如下为从 S3 中存储的文档提取表单文本的示例:机器学习
Predictions.identify({ text: { source: { key: "my/image" } format: "FORM" # "FORM" or "TABLE" use Amazon Textract } }).then((result) => {...})
如下为使用 Amazon Comprehend 的全部预训练功能来解释文本的例子:ide
Predictions.interpret({ text: { source: { text: "text to interpret", }, type: "ALL" } }).then((result) => {...})
要使用您在添加预测时选择的语言和语音,经过 Amazon Polly 将文本转换为语音,而后在浏览器中回放,则可使用以下代码:学习
Predictions.convert({ textToSpeech: { source: { text: "text to generate speech" } } }).then(result => { var audio = new Audio(); audio.src = result.speech.url; audio.play(); })
经过上述几个例子能够看到,借助 AWS Amplify 为现有 Web 或移动应用程序添加机器学习能力的方法就是这么简单。若是对该服务感兴趣,能够进一步浏览此处的入门教程,尝试着开始使用 Amplify 构建你的下一个 Web 或移动应用程序。此外,也欢迎经过 Amplify Framework GitHub存储库向咱们反馈意见。网站
最后须要提醒你们注意:Amplify Framework 的「预测」类别还有许多其余选项和功能。有关如何构建机器学习支持的应用程序的深刻示例,请参阅 AWS 移动博客上的这个演示。