人工智能:软件选项

  • 了解如何将机器学习模型集成到应用程序中
  • 开始编写应用程序集成代码

这些是本课的活动:

整合您的模型

现在,希望您的团队已经 

  • 训练的其人工智能模型使用健康数据集进行训练。
  • 测试用各种新数据对模型进行了测试

但你不能就这样放着不管! 

您希望您的模型采取 行动根据预测结果采取行动。

您需要 在应用程序中实现您的模型使其发挥作用。

brain hovering over a computer chip

选择平台

您使用哪个平台来编写应用程序取决于该平台:

  1. 您的移动应用程序编码平台偏好是什么
  2. 您使用哪个平台来训练模型

下面是第 5 单元讨论的机器学习平台。点击每个平台,查看将模型集成到应用程序中的一些选项。 

Teachable Machine 是一个非常通用的平台。您可以将模型保存到云端或保存为文件,因此您有很多与编码平台集成的选择。

视频介绍如何导出模型。

  • App Inventor 提供了一个由 Fabiano Oliveira 开发的 Teachable Machine 图像分类扩展,可下载并导入至扩展抽屉中。
  • Teachable Machine 提供与机器学习库 Tensorflow 集成的代码片段。它提供 3 种代码片段选项:
    • Tensorflow.js - Javascript语言可让您创建网页或网络应用程序。
    • Tensorflow -用于创建网络应用程序的Python语言。
    • Tensorflow Lite -用于创建移动应用程序的Java语言。 

所有 3 个代码片段都为您提供了一个模型文件和可供复制的代码。根据语言的不同,您可能需要安装库和代码编辑器。代码片段中提供了说明链接。 

以下是使用 Tensorflow.js 选项的步骤:

    1. 复制代码并粘贴到计算机上的一个新的空白文本文件中。
      teachable machine code snippet
    2. 将其保存为 index.html(或其他扩展名为 .html 的文件)。 
    3. 在网页浏览器中打开该文件。它将提供一个基础界面,您可在此根据模型对网络摄像头拍摄的图像进行分类。
    4. 若需上传图片进行分类(而非使用网络摄像头),此代码可实现该功能。(由Chris Hoyean Song提供)只需将原始代码片段中的模型URL复制到此文件中即可。 

Tensorflow 和 Tensorflow Lite 选项需要安装不同的软件和编码库。详情请查看github网站。

Technovation 集成: Python、App Inventor

目前,"儿童机器学习 "的唯一集成是 Python,它完全适用于初级和高级部门。 

要了解将儿童机器学习模型集成到 Python 的更多信息,请尝试本页的工作表。从制作类型下拉菜单中选择 Python。 

麻省理工学院的 App Inventor 是一个集成选项,但并非所有数据集类型都能完全工作。请访问儿童机器学习网站,确保您的数据集与 App Inventor 兼容。 

扩展App Inventor 中的扩展是为应用程序添加功能的外部组件,但不属于 App Inventor 核心组件。

在使用App Inventor的分类器网站(图像声音)训练好图像或声音模型后,您将通过App Inventor中的扩展功能,将模型应用到移动应用中使其生效。 

您可以按照以下步骤了解如何使用 App Inventor 的人工智能扩展。

此处提供了所有 App Inventor 扩展,可下载并导入 App Inventor 使用。为您的模型选择合适的扩展。

  1. 单击 "设计器 "面板中的 "扩展"。
  2. 点击导入扩展名
  3. 单击 "选择文件",然后选择从上述扩展页面下载的扩展文件。
  4. 单击 "导入"按钮导入扩展及其模块。
import window

您还需要在项目中添加一个 WebViewer 组件。它可以在用户界面抽屉中找到。

在下面的示例中,我们将演示如何配置图像分类器,但若您的模型涉及声音,音频分类器的配置方式也基本相同。

要从分类器链接模型,首先要从分类器网站下载模型,然后、 

  1. 选择 个人图像分类器 组件。
  2. 在 "属性 "面板中,单击 "模型 "下的 "无",然后上传下载的 model.mdl 文件。(文件可以任意重命名,但名称中必须有 .mdl 扩展名)。
  3. 点击 网络浏览器并选择 WebViewer组件。
screenshot of webviewer in app inventor

注意“InputMode”属性,其取值可为Video或Image。若选择视频模式,系统将持续尝试对WebViewer中显示的视频流进行分类;若选择图像模式,则需添加相机或ImagePicker组件以获取待分类图像。需注意的是,图像分类功能仍需依赖WebViewer组件才能正常运行。

inputmode for webviewer

在以下视频中,您将看到如何将第 5 单元中的健康水果和病害水果模型添加到 App Inventor 中,以创建一个可以使用手机摄像头识别健康水果和病害水果的移动应用程序。

在第二部分中,您将为分类器编写代码块。

所有 App Inventor 扩展都可在 这里下载并导入 App Inventor 中使用。为您的模型选择合适的扩展。

  1. 单击 "设计器 "面板中的 "扩展"。
  2. 点击导入扩展名
  3. 单击 "选择文件",然后选择从上述扩展页面下载的扩展文件。
  4. 单击 "导入"按钮导入扩展及其模块。

您还需要在项目中添加一个 WebViewer 组件。它可以在用户界面抽屉中找到。

在下面的示例中,我们将演示如何配置图像分类器,但若您的模型涉及声音,音频分类器的配置方式也基本相同。

要从分类器链接模型,首先要从分类器网站下载模型,然后、 

  1. 选择个人图像分类器组件。
  2. 在 "属性 "面板中,单击 "模型 "下的 "无",然后上传下载的 model.mdl 文件。(文件可以任意重命名,但名称中必须有 .mdl 扩展名)。
  3. 单击 WebViewer 下的 "无",然后选择刚刚添加到项目中的 WebViewer 组件。

screenshot of webviewer in app inventor

请注意“InputMode”属性,其取值可为Video或Image。若选择视频模式,系统将持续尝试对WebViewer中显示的视频流进行分类;若选择图像模式,则需添加相机或ImagePicker组件以获取待分类图像。需注意的是,图像分类功能仍需依赖WebViewer组件才能正常运行。

inputmode for webviewer

在以下视频中,您将看到如何将第 5 周中的健康水果和病害水果模型添加到 App Inventor 中,以创建一个可以使用手机摄像头识别健康水果和病害水果的移动应用程序。

在第二部分中,您将为分类器编写代码块。

使用 Ximilar 制作的模型可与 API 配合使用,将其集成到应用程序中。 你可以使用 Thunkable 中的 Web API 组件将 Ximilar 等平台的外部模型集成到应用程序中。注:我们将在下一单元介绍Thunkable 中的 API 观看 Pratham 视频的第二部分,将第五单元中的珊瑚人工智能模型集成到 Thunkable 移动应用程序中。

活动:整合您的人工智能模型

预计时间:60 分钟以上

根据您选择的平台进行整合

  1. 查看将训练好的人工智能模型添加到项目中所需的特定平台。
  2. 在选定的平台上创建一个新项目,然后添加模型。具体方法取决于特定平台的流程。
  3. 采取行动!向平台添加组件和代码,让您的项目根据模型预测结果采取行动。

反思

您已经开始编写人工智能应用程序的动作部分代码!在这里,您可以看到模型的结果以及它真正能做什么!

现在是检查项目计划/画布的好时机,看看项目进展如何。您可能需要根据所使用的平台以及实现项目目标所需的步骤来调整时间表和任务。

一旦你的代码可以正常工作,也是时候向你的用户了解情况了。找一些人来测试您的应用程序并提供反馈。

checklist

关键术语回顾

  • 软件- 指在计算机或设备上运行的程序或应用程序
  • 扩展- 为现有程序添加功能的软件捆绑包

其他资源

使用 Teachable Machine 和 Coral 分拣棉花糖。

查看这些视频,了解更先进的人工智能工具!