利用Azure内容审查器审查违规内容

首先来解释下什么是内容审查器:Azure 内容审查器 API 是一项认知服务,用于检查文本、图像和视频中是否存在可能的冒犯性内容、危险内容或其他令人不适的内容。 找到此类内容时,此服务会将相应的标签(标记)应用到该内容。然后,应用会处理标记的内容,使之符合法规的要求,或者为用户维持一个理想的环境。

根据这些特性,我们可想而知,它的应用是十分广泛的,可以应用到社交通讯平台的内容审查,媒体公司的内容审查,游戏公司的聊天室审查等等。

clip_image002

如图所示,内容审查器服务包含多个可以通过 REST 调用和 .NET SDK 使用的 Web 服务 API。 它还包括人工审阅工具,让审核人员来协助服务改进或优化其审查功能。

那下面我们就使用C#调用内容审查服务的API接口来分析内容是否有【18禁】或是【冒犯性】的内容。

首先我们需要在Azure平台上创建内容审查服务,获取API连接信息。

clip_image004

输入名称,选择位置和定价层,然就点击创建

clip_image006

等待创建完成。

clip_image008

接下来我们需要编写一段C#代码,来调用Content Moderator API接口。

打开Visual Studio,然后再Visual Studio中创建新的控制台应用(.NET Framework) 项目并将其命名为 ImageModeration。

然后使用NuGet安装以下包:

Microsoft.Azure.CognitiveServices.ContentModerator
Microsoft.Rest.ClientRuntime
Newtonsoft.Json
创建Content Moderator 客户端 ,注意这里只需要更新你的API所在的区域和APIkey

  1. public static class Clients
  2. {
  3. private static readonly string AzureRegion = “YOUR API REGION”;
  4. private static readonly string AzureBaseURL =$“https://{AzureRegion}.api.cognitive.microsoft.com”;
  5. private static readonly string CMSubscriptionKey = “YOUR API KEY”;
  6. public static ContentModeratorClient NewClient()
  7. { 
    
  8.     ContentModeratorClient client = new ContentModeratorClient(new ApiKeyServiceClientCredentials(CMSubscriptionKey)); 
    
  9.     client.Endpoint = AzureBaseURL; 
    
  10. return client;
  11. } 
    
  12. }
    然后我们需要定义分析的源和输出的结果

这里我把分析的图片URL放入txt文档中

https://moderatorsampleimages.blob.core.windows.net/samples/sample2.jpg

https://moderatorsampleimages.blob.core.windows.net/samples/sample5.png

http://pic.pimg.tw/k110107632/1387547248-3785354604.jpg

代码如下:

  1. //The name of the file that contains the image URLs to evaluate.
  2. private static string ImageUrlFile = “ImageFiles.txt”;
  3. ///The name of the file to contain the output from the evaluation.
  4. private static string OutputFile = “ModerationOutput.json”;
    接下来我们需要定义图像评估方法,这里我们定义三种(图像审查、文本分析和人脸识别)
  5. // Evaluates an image using the Image Moderation APIs.
  6. private static EvaluationData EvaluateImage(
  7. ContentModeratorClient client, string imageUrl)
  8. {
  9. var url = new BodyModel("URL", imageUrl.Trim()); 
    
  10. var imageData = new EvaluationData(); 
    
  11. imageData.ImageUrl = url.Value; 
    
  12. // Evaluate for adult and racy content.
  13. imageData.ImageModeration = 
    
  14.     client.ImageModeration.EvaluateUrlInput("application/json", url, true); 
    
  15. Thread.Sleep(1000); 
    
  16. // Detect and extract text.
  17. imageData.TextDetection = 
    
  18.     client.ImageModeration.OCRUrlInput("eng", "application/json", url, true); 
    
  19. Thread.Sleep(1000); 
    
  20. // Detect faces.
  21. imageData.FaceDetection = 
    
  22.     client.ImageModeration.FindFacesUrlInput("application/json", url, true); 
    
  23. Thread.Sleep(1000); 
    
  24. return imageData;
  25. }
    设定完成后我们就可以使用内容审查器分析图片内容了。最后会把结果输出到json文件中。www.lekaowang.com.cn/jjcy/jjbk/red/
使用优化算法,以优化VMD算法的惩罚因子惩罚因子 (α) 和分解层数 (K)。 1、将量子粒子群优化(QPSO)算法与变分模态分解(VMD)算法结合 VMD算法背景: VMD算法是一种自适应信号分解算法,主要用于分解信号为不同频率带宽的模态。 VMD的关键参数包括: 惩罚因子 α:控制带宽的限制。 分解层数 K:决定分解出的模态数。 QPSO算法背景: 量子粒子群优化(QPSO)是一种基于粒子群优化(PSO)的一种改进算法,通过量子行为模型增强全局搜索能力。 QPSO通过粒子的量子行为使其在搜索空间中不受位置限制,从而提高算法的收敛速度与全局优化能力。 任务: 使用QPSO优化VMD中的惩罚因子 α 和分解层数 K,以获得信号分解的最佳效果。 计划: 定义适应度函数:适应度函数根据VMD分解的效果来定义,通常使用重构信号的误差(例如均方误差、交叉熵等)来衡量分解的质量。 初始化QPSO粒子:定义粒子的位置和速度,表示 α 和 K 两个参数。初始化时需要在一个合理的范围内为每个粒子分配初始位置。 执行VMD分解:对每一组 α 和 K 参数,运行VMD算法分解信号。 更新QPSO粒子:使用QPSO算法更新粒子的状态,根据适应度函数调整粒子的搜索方向和位置。 迭代求解:重复QPSO的粒子更新步骤,直到满足终止条件(如适应度函数达到设定阈值,或最大迭代次数)。 输出优化结果:最终,QPSO算法会返回一个优化的 α 和 K,从而使VMD分解效果最佳。 2、将极光粒子(PLO)算法与变分模态分解(VMD)算法结合 PLO的优点与适用性 强大的全局搜索能力:PLO通过模拟极光粒子的运动,能够更高效地探索复杂的多峰优化问题,避免陷入局部最优。 鲁棒性强:PLO在面对高维、多模态问题时有较好的适应性,因此适合海上风电时间序列这种非线性、多噪声的数据。 应用场景:PLO适合用于优化VMD参数(α 和 K),并将其用于风电时间序列的预测任务。 进一步优化的建议 a. 实现更细致的PLO更新策略,优化极光粒子的运动模型。 b. 将PLO优化后的VMD应用于真实的海上风电数据,结合LSTM或XGBoost等模型进行风电功率预测。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值