Zephyrnet-logo

Contentmoderatie verbeteren met Amazon Rekognition Bulkanalyse en aangepaste moderatie | Amazon-webservices

Datum:

Amazon Rekognition maakt het eenvoudig om beeld- en videoanalyse aan uw toepassingen toe te voegen. Het is gebaseerd op dezelfde bewezen, zeer schaalbare deep learning-technologie die is ontwikkeld door de computervisiewetenschappers van Amazon om dagelijks miljarden afbeeldingen en video's te analyseren. Er is geen expertise op het gebied van machine learning (ML) voor nodig en we voegen voortdurend nieuwe computer vision-functies aan de service toe. Amazon Rekognition bevat een eenvoudige, gebruiksvriendelijke API die snel elk afbeeldings- of videobestand kan analyseren dat is opgeslagen in Amazon eenvoudige opslagservice (Amazone S3).

Klanten in verschillende sectoren, zoals reclame- en marketingtechnologie, gaming, media en detailhandel en e-commerce, vertrouwen op afbeeldingen die door hun eindgebruikers zijn geüpload (door gebruikers gegenereerde inhoud of UGC) als een cruciaal onderdeel om de betrokkenheid op hun platform te stimuleren. Ze gebruiken Contentmoderatie van Amazon Rekognition om ongepaste, ongewenste en aanstootgevende inhoud te detecteren om hun merkreputatie te beschermen en veilige gebruikersgemeenschappen te bevorderen.

In dit bericht bespreken we het volgende:

  • Contentmoderatiemodel versie 7.0 en mogelijkheden
  • Hoe werkt Amazon Rekognition Bulk Analysis voor inhoudsmoderatie
  • Hoe u de voorspelling van inhoudsmoderatie kunt verbeteren met bulkanalyse en aangepaste moderatie

Model voor inhoudsmoderatie versie 7.0 en mogelijkheden

Amazon Rekognition Content Moderation versie 7.0 voegt 26 nieuwe moderatielabels toe en breidt de taxonomie van moderatielabels uit van een labelcategorie met twee naar een labelcategorie met drie niveaus. Met deze nieuwe labels en de uitgebreide taxonomie kunnen klanten fijnmazige concepten ontdekken over de inhoud die ze willen modereren. Bovendien introduceert het bijgewerkte model een nieuwe mogelijkheid om twee nieuwe inhoudstypen te identificeren: geanimeerde en geïllustreerde inhoud. Hierdoor kunnen klanten gedetailleerde regels maken voor het opnemen of uitsluiten van dergelijke inhoudstypen in hun moderatieworkflow. Met deze nieuwe updates kunnen klanten inhoud met grotere nauwkeurigheid modereren in overeenstemming met hun inhoudsbeleid.

Laten we eens kijken naar een voorbeeld van een moderatielabeldetectie voor de volgende afbeelding.

De volgende tabel toont de moderatielabels, het inhoudstype en de betrouwbaarheidsscores die in het API-antwoord worden geretourneerd.

Moderatielabels Taxonomie niveau Vertrouwen scoort
Geweld L1 92.6%
Grafisch geweld L2 92.6%
Explosies en ontploffingen L3 92.6%
Inhoudstypen Vertrouwen scoort
Geïllustreerd 93.9%

Om de volledige taxonomie voor Content Moderation versie 7.0 te verkrijgen, bezoek onze ontwikkelaarshandleiding.

Bulkanalyse voor inhoudsmoderatie

Amazon Rekognition Content Moderation biedt naast realtime moderatie ook batch-beeldmoderatie Bulkanalyse van Amazon-herkenning. Hiermee kunt u grote afbeeldingscollecties asynchroon analyseren om ongepaste inhoud te detecteren en inzicht te krijgen in de moderatiecategorieën die aan de afbeeldingen zijn toegewezen. Het elimineert ook de noodzaak voor het bouwen van een oplossing voor batch-beeldmoderatie voor klanten.

Je hebt toegang tot de bulkanalysefunctie via de Amazon Rekognition-console of door de API's rechtstreeks aan te roepen met behulp van de AWS CLI en de AWS SDK's. Op de Amazon Rekognition-console kunt u de afbeeldingen uploaden die u wilt analyseren en met een paar klikken resultaten krijgen. Zodra de bulkanalysetaak is voltooid, kunt u de moderatielabelvoorspellingen identificeren en bekijken, zoals expliciete, niet-expliciete naaktheid van intieme delen en kussen, geweld, drugs en tabak, en meer. Voor elke labelcategorie ontvangt u ook een betrouwbaarheidsscore.

Maak een bulkanalysetaak op de Amazon Rekognition-console

Voer de volgende stappen uit om Amazon Rekognition Bulk Analysis te proberen:

  1. Kies op de Amazon Rekognition-console Bulkanalyse in het navigatievenster.
  2. Kies Bulkanalyse starten.
  3. Voer een taaknaam in en specificeer de afbeeldingen die u wilt analyseren, door een S3-bucketlocatie in te voeren of door afbeeldingen vanaf uw computer te uploaden.
  4. Optioneel kunt u een adapter om afbeeldingen te analyseren met behulp van de aangepaste adapter die u hebt getraind met aangepaste moderatie.
  5. Kies Start analyse om de baan uit te voeren.

Wanneer het proces is voltooid, kunt u de resultaten bekijken op de Amazon Rekognition-console. Er wordt ook een JSON-kopie van de analyseresultaten opgeslagen op de Amazon S3-uitvoerlocatie.

Amazon Rekognition Bulk Analysis API-verzoek

In dit gedeelte begeleiden we u bij het maken van een bulkanalysetaak voor beeldmoderatie met behulp van programmeerinterfaces. Als uw afbeeldingsbestanden nog niet in een S3-bucket staan, upload ze dan om toegang door Amazon Rekognition te garanderen. Vergelijkbaar met het maken van een bulkanalysetaak op de Amazon Rekognition-console, bij het aanroepen van de StartMediaAnalyseJob API, moet u de volgende parameters opgeven:

  • OperationsConfig – Dit zijn de configuratieopties voor de media-analysetaak die moet worden gemaakt:
    • Min Vertrouwen – Het minimale betrouwbaarheidsniveau met een geldig bereik van 0–100 voor het retourneren van de moderatielabels. Amazon Rekognition retourneert geen labels met een betrouwbaarheidsniveau lager dan deze opgegeven waarde.
  • Invoer – Dit omvat het volgende:
    • S3Object – De S3-objectinformatie voor het invoermanifestbestand, inclusief de bucket en de naam van het bestand. invoerbestand bevat JSON-regels voor elke afbeelding die is opgeslagen in de S3-bucket. Bijvoorbeeld: {"source-ref": "s3://MY-INPUT-BUCKET/1.jpg"}
  • Uitvoerconfiguratie – Dit omvat het volgende:
    • S3Emmer – De S3-bucketnaam voor de uitvoerbestanden.
    • S3KeyPrefix – Het sleutelvoorvoegsel voor de uitvoerbestanden.

Zie de volgende code:

import boto3
import os
import datetime
import time
import json
import uuid

region = boto3.session.Session().region_name
s3=boto3.client('s3')
rekognition_client=boto3.client('rekognition', region_name=region)

min_confidence = 50
input_bucket = "MY-INPUT-BUCKET"

input_file = "input_file.jsonl"
output_bucket = "MY-OUTPUT-BUCKET"
key_prefix = "moderation-results"
job_name = "bulk-analysis-demo"

job_start_response = rekognition_client.start_media_analysis_job(
    OperationsConfig={"DetectModerationLabels": {"MinConfidence": min_confidence}},
    JobName = job_name,
    Input={"S3Object": {"Bucket": input_bucket, "Name": input_file}},
    OutputConfig={"S3Bucket": output_bucket, "S3KeyPrefix": key_prefix},
)

job_id = job_start_response["JobId"]
max_tries = 60
while max_tries > 0:
    max_tries -= 1
    job = rekognition_client.get_media_analysis_job(JobId=job_id)
    job_status = job["Status"]
    if job_status in ["SUCCEEDED", "FAILED"]:
        print(f"Job {job_name} is {job_status}.")
        if job_status == "SUCCEEDED":
            print(
                f"Bulk Analysis output file copied to:n"
                f"tBucket: {job['Results']['S3Object']['Bucket']}n"
                f"tObject: {job['Results']['S3Object']['Name']}."
            )
        break
    else:
        print(f"Waiting for {job_name}. Current status is {job_status}.")
    time.sleep(10)

U kunt dezelfde media-analyse oproepen met behulp van de volgende AWS CLI-opdracht:

aws rekognition start-media-analysis-job 
--operations-config "DetectModerationLabels={MinConfidence='50'}" 
--input "S3Object={Bucket=input_bucket,Name=input_file.jsonl}" 
--output-config "S3Bucket=output_bucket,S3KeyPrefix=moderation-results"

Amazon Rekognition Bulk Analysis API-resultaten

Om een ​​lijst met bulkanalysetaken te krijgen, kunt u gebruiken ListMediaAnalysisJobs. Het antwoord bevat alle details over de invoer- en uitvoerbestanden van de analysetaak en de status van de taak:

# get the latest 10 media analysis jobs
moderation_job_list = rekognition_client.list_media_analysis_jobs(MaxResults=10, NextToken="")
for job_result in moderation_job_list["MediaAnalysisJobs"]:
 print(f'JobId: {job_result["JobId"]} ,Status: {job_result["Status"]},n
Summary: {job_result["ManifestSummary"]["S3Object"]["Name"]}, n
Result: {job_result["Results"]["S3Object"]["Name"]}n')

U kunt ook een beroep doen op de list-media-analysis-jobs commando via de AWS CLI:

aws rekognition list-media-analysis-jobs --max-results 10

Amazon Rekognition Bulk Analysis genereert twee uitvoerbestanden in de uitvoerbucket. Het eerste bestand is manifest-summary.json, inclusief taakstatistieken voor bulkanalyse en een lijst met fouten:

{
    "version": "1.0",
    "statistics": {
      "total-json-lines": 2,
      "valid-json-lines": 2,
      "invalid-json-lines": 0
    },
    "errors": []
 }

Het tweede bestand is results.json, dat één JSON-regel per geanalyseerde afbeelding bevat in de volgende indeling. Elk resultaat omvat de categorie op het hoogste niveau (L1) van een gedetecteerd label en de categorie van het tweede niveau van het label (L2), met een betrouwbaarheidsscore tussen 1–100. Sommige labels van taxonomieniveau 2 kunnen labels van taxonomieniveau 3 (L3) hebben. Dit maakt een hiërarchische classificatie van de inhoud mogelijk.

{
  "source-ref": "s3://MY-INPUT-BUCKET/1.jpg",
    "detect-moderation-labels": {
    "ModerationLabels": [
      {
        "ParentName": "Products",
        "TaxonomyLevel": 3,
        "Confidence": 91.9385,
        "Name": "Pills"
      },
      {
        "ParentName": "Drugs & Tobacco",
        "TaxonomyLevel": 2,
        "Confidence": 91.9385,
        "Name": "Products"
      },
      {
        "ParentName": "",
        "TaxonomyLevel": 1,
        "Confidence": 91.9385,
        "Name": "Drugs & Tobacco"
      }
    ],
    "ModerationModelVersion": "7.0",
    "ContentTypes": [
      
    ]
  }
}

Verbetering van de modelvoorspelling voor inhoudsmoderatie met behulp van bulkanalyse en aangepaste moderatie

U kunt de nauwkeurigheid van het basismodel voor inhoudsmoderatie verbeteren met de Aangepaste moderatie functie. Met aangepaste moderatie kunt u een Aangepaste moderatieadapter door uw afbeeldingen te uploaden en deze afbeeldingen te annoteren. Adapters zijn modulaire componenten die de mogelijkheden van het deep learning-model van Amazon Rekognition kunnen uitbreiden en verbeteren. Om eenvoudig uw afbeeldingen te annoteren, kunt u eenvoudigweg de voorspellingen van uw bulkanalysetaak verifiëren om een ​​aangepaste adapter te trainen. Volg de onderstaande stappen om de voorspellingsresultaten te verifiëren:

  1. Kies op de Amazon Rekognition-console Bulkanalyse in het navigatievenster.
  2. Kies de bulkanalysetaak en kies vervolgens Controleer voorspellingen.

Op de Controleer de voorspelling Op de pagina kunt u alle afbeeldingen zien die in deze taak zijn geëvalueerd en de voorspelde labels.

  1. Selecteer het aanwezige label van elke afbeelding (vinkje) om een ​​True Positive te valideren; of markeer als niet-aanwezig (X-markering) om elk toegewezen label ongeldig te maken (dwz de labelvoorspelling is vals-positief).
  2. Als het juiste label niet aan de afbeelding is toegewezen (dat wil zeggen Vals-negatief), kunt u ook de juiste labels aan de afbeelding selecteren en toewijzen.

Op basis van uw verificatie worden False Positives en False Negatives bijgewerkt in de verificatiestatistieken. U kunt deze verificaties gebruiken om een ​​aangepaste moderatieadapter te trainen, waarmee u de nauwkeurigheid van de voorspellingen voor inhoudsmoderatie kunt verbeteren.

  1. Als voorwaarde voor het trainen van een aangepaste moderatieadapter is het vereist dat u ten minste 20 valse positieven of 50 valse negatieven verifieert voor elk moderatielabel dat u wilt verbeteren. Zodra u 20 valse positieven of 50 valse negatieven heeft geverifieerd, kunt u kiezen Train een adapter.

Je kunt gebruiken Aangepaste moderatieadapters om uw afbeeldingen later te analyseren door simpelweg de aangepaste adapter te selecteren terwijl u een nieuwe bulkanalysetaak maakt, of via API door de unieke adapter-ID van de aangepaste adapter door te geven.

Samengevat

In dit bericht hebben we een overzicht gegeven van inhoudsmoderatie versie 7.0, bulkanalyse voor inhoudsmoderatie, en hoe u de voorspellingen van inhoudsmoderatie kunt verbeteren met behulp van bulkanalyse en aangepaste moderatie. Om de nieuwe moderatielabels en bulkanalyse uit te proberen, logt u in op uw AWS-account en bekijkt u de Amazon Rekognition-console voor Beeldmoderatie en Bulkanalyse.


Over de auteurs

Mehdy Haghy is een Senior Solutions Architect bij het AWS WWCS-team, gespecialiseerd in AI en ML op AWS. Hij werkt met zakelijke klanten en helpt hen bij het migreren, moderniseren en optimaliseren van hun workloads voor de AWS-cloud. In zijn vrije tijd kookt hij graag Perzisch eten en sleutelt hij aan elektronica.

Shipra Kanoria is Principal Product Manager bij AWS. Ze is gepassioneerd om klanten te helpen bij het oplossen van hun meest complexe problemen met de kracht van machine learning en kunstmatige intelligentie. Voordat ze bij AWS kwam, werkte Shipra meer dan 4 jaar bij Amazon Alexa, waar ze veel productiviteitsgerelateerde functies op de Alexa-spraakassistent lanceerde.

Maria Handoko is senior productmanager bij AWS. Ze richt zich op het helpen van klanten bij het oplossen van hun zakelijke uitdagingen door middel van machine learning en computervisie. In haar vrije tijd houdt ze van wandelen, naar podcasts luisteren en verschillende keukens ontdekken.

spot_img

Laatste intelligentie

spot_img