Skip to main content

理解文本内容审查的结果

分类:  Azure认知服务 标签:  #Azure #人工智能 #内容审查 发布于: 2023-06-05 13:06:17

关于Azure认知服务的内容审查,前面几篇文章我们已经介绍了一些基本的概念和入门的Demo, 从本章开始我们来仔细的研究一下关于文本,图片以及视频内容审查的基本概念和方法论。

所谓的内容审查实质上是通过微软的机器学习以及数据训练出来的机器学习模型来对内容的预测,预测的基本目的针对不同的内容类型由不同的预测结果,本节我们来学习对于文本内容的预测。文本内容审查服务的使用本身非常简单的,你可以对照前面的文章进行回顾,对我们最为重要的是理解文本内容审查返回的结果。本节包括如下内容:

  • 对文本内容审查结果的理解。
    • 审查结果中的不文明用语。
    • 审查结果中的分级制度(仅仅支持英语)
  • 自动更正文本
  • 自定义的词语列表。

理解审查结果

文本审查的结果包括如下的信息:

  • 不文明用语审查:利用内置的不文明用于列表对文本内容进行审查,支持多种语言。
  • 文本内容分级: 利用机器学习模型对本文内容分成三个类别, 该特性目前仅仅支持英语
  • 个人信息检测。
  • 自动更正文本。
  • 原始文本
  • 语言。

下面我们对于文本审查的返回结果作更为详细的说明

不文明用语

文本审查API会根据指定的语言对文本的内容进行审查,审查出的不文明用语会被返回给客户,这些不文明用户的单词也会被包括在返回结果中,同时也会包含该不文明用户的在文本中的位置(location), 以及原始文本,同时如果你使用了自定义的不文明用语列表,那么还会返回审查出来的单词和自定义列表中对应的单词ID。
例如下面的例子就是用户使用了自定义列表的:

"Terms": [
    {
        "Index": 118,
        "OriginalIndex": 118,
        "ListId": 0,
        "Term": "crap"
    }

文本内容分级

需要明确的是这个特性目前仅仅支持英语。文本内容分级使用模型对文本内容进行分析,找出潜在的包括辱骂,歧视性等语言,目前会侦测内容,并根据内容将可疑内容分成三个分类,分别是Category1, category2, category3, 每个分类都包含一些详细信息,如下所示:

"Classification": {
    "ReviewRecommended": true,
    "Category1": {
        "Score": 1.5113095059859916E-06
    },
    "Category2": {
        "Score": 0.12747249007225037
    },
    "Category3": {
        "Score": 0.98799997568130493
    }
}

ReviewRecommanded 如果为true建议再次使用SDK生成review, 将内容提交到review tool, 邀请人工介入。
其中category1表示该文本有明显的成人内容,同时给出一个score评分值从0到1之间,这个值越大表示有明显成人内容的可能性越大。(请注意我们在这里是表示内容分级)
category2表示该文本暗示性的成人内容,也同样使用score进行打分,分值也是从0到1,分值越高表明可能性越大。
category3表示该文本攻击性的内容(包括暴力,反动等等内容), 同时有score对这部分内容打分。

注意
在使用文本审查的rest api或者SDK时,可以不指定语言,API会自动判定语言,如果想指定,请使用ISO-639-3的格式来指定需要使用的语言。

自动更正

API会自动根据支持的语言对提交的文本内容中存在的可能的语法错误进行自动更正。同时在审查结果中也会包含原始的文本内容以及更正建议。

个人信息检测(PII)

内容审查会对文本中可能存在的个人信息进行检测,并在返回的结果中体现,PII的内容包括例如电子邮件,手机号码,住址,IP地址等。

自定义词语列表(词典)

文本内容审查的API是基于词语的,默认包含一个全局的词语列表(字典),一般情况下这个全局的词语列表可以处理大多数情况,但是你可以自定义个词语列表以适应你自己的业务需要。如果你是使用了自定义的词语列表,那么在内容审查的结果中也会体现这个部分,在审查结果中会有一个ListId的参数表示对应了自定义词语列表的ID, 如下图:

"Terms": [
    {
        "Index": 118,
        "OriginalIndex": 118,
        "ListId": 231.
        "Term": "crap"
    }

注意
Azure内容审查服务对于自定义词语列表是有限制的,最多只能定义5个词语列表,每个词语列表中最多只能包含1万个词语。

图片审查API控制台

另外有一个小小的提示:

Azure提供了相应的API和工具来帮助客户定义自己的词语列表,我们下一节来讲述如何使用这些API和工具来自定义词语列表。