
206
|
第
11
章
示例中,你必须手动将原始图像转换为
Data
以将其表示为张量,并且你必须读取转换
为数组的输出内存以获得结果。因此,如果你正在构建图像分类器,我强烈建议你尽可
能使用 ML Kit 来防止这种情况发生。如果你不能,我希望介绍的这两种方法对你有用!
你可以在图 11-6 中看到更新后的应用程序的屏幕截图。在这里,我使用了雏菊的图片,
而 ML Kit 的引擎使用我的自定义模型,报告了 0.96 的概率推断该图像是雏菊!
图
11-6
:具有自定义花卉模型的基于
ML Kit
的应用程序
当构建在移动设备上运行的基于 ML 的模型时,了解底层数据结构始终是一项有用的练
习。我们将探索使用自然语言处理的应用程序的另一个场景,以便你可以更深入地了解
如何在 Swift 中使用模型。我们将再次使用原始数据方法,就像我们在图像示例中使用
的那样,但这次我们将探索一个旨在识别文本和文本中的情绪的模型!
11.4
在
Swift
中构建用于自然语言处理的应用程序
在着手构建应用程序之前,最好先了解自然语言处理模型的工作原理,这样你就可以了
解设备上的文本字符串与模型内张量之间的数据交换是如何进行的。
首先,当你在一组称为语料库的文本上训练模型时,你会将模型理解的词汇限制为最多
该语料库中的单词。因此,例如,你在此应用程序中使用的模型是第 8 章中使用数千条
推文的文本训练的。该模型只会识别该组推文中使用的单词。因此,如果你想在应用程
正文.indd 206正文.indd 206 2023-4-30 9:09:59 ...