[ad_1]

Amazon Rekognition facilita la adición de análisis de imágenes y vídeos a sus aplicaciones. Se basa en la misma tecnología de aprendizaje profundo probada y altamente escalable desarrollada por los científicos de visión por computadora de Amazon para analizar miles de millones de imágenes y videos todos los días. No se requiere experiencia en aprendizaje automático (ML) para usarlo y continuamos ampliando el servicio con nuevas capacidades de visión por computadora. Amazon Rekognition incluye una API sencilla y fácil de usar que puede analizar rápidamente cualquier archivo de imagen o vídeo almacenado en Amazon Simple Storage Service (Amazon S3).

Los clientes de industrias como la tecnología de publicidad y marketing, juegos, medios y comercio minorista y electrónico confían en las imágenes cargadas por sus usuarios finales (contenido generado por el usuario o UGC) como un componente crítico para aumentar la participación en su plataforma. Utilizan la moderación de contenido de Amazon Rekognition para identificar contenido inapropiado, no deseado y ofensivo para proteger la reputación de su marca y promover comunidades de usuarios seguras.

En esta publicación discutiremos:

  • Modelo de moderación de contenido versión 7.0 y características
  • ¿Cómo funciona el análisis masivo de Amazon Rekognition para la moderación de contenido?
  • Cómo mejorar la predicción de la moderación del contenido con análisis masivo y moderación personalizada

Modelo de moderación de contenido versión 7.0 y características

Amazon Rekognition Content Moderation versión 7.0 agrega 26 nuevas etiquetas de moderación y amplía la taxonomía de etiquetas de moderación de una categoría de etiquetas de dos niveles a una de tres niveles. Estas nuevas etiquetas y taxonomía ampliada permiten a los clientes reconocer conceptos matizados sobre el contenido que desean moderar. Además, el modelo actualizado introduce una nueva característica para identificar dos nuevos tipos de contenido: contenido animado e ilustrado. Esto permite a los clientes crear reglas detalladas para incluir o excluir dichos tipos de contenido en su flujo de trabajo de moderación. Con estas nuevas actualizaciones, los clientes podrán moderar el contenido con mayor precisión de acuerdo con su política de contenido.

Veamos un ejemplo de detección de etiquetas de moderación para la siguiente imagen.

La siguiente tabla muestra las etiquetas de moderación, el tipo de contenido y los valores de confianza devueltos en la respuesta de la API.

Etiquetas de moderación Nivel de taxonomía Valores de confianza
Violencia L1 92,6%
Representaciones dramáticas de la violencia. L2 92,6%
Explosiones y explosiones L3 92,6%
Tipos de contenido Valores de confianza
Ilustrado 93,9%

Para obtener la taxonomía completa de la versión 7.0 de moderación de contenido, visite nuestra guía para desarrolladores.

Análisis masivo para moderación de contenidos.

Amazon Rekognition Content Moderation también ofrece moderación de imágenes por lotes además de moderación en tiempo real con Amazon Rekognition Bulk Analysis. Le permite analizar de forma asincrónica grandes colecciones de imágenes para detectar contenido inapropiado y obtener información sobre las categorías de moderación asignadas a las imágenes. Esto también elimina la necesidad de crear una solución de moderación de imágenes por lotes para los clientes.

Puede acceder a la funcionalidad de análisis masivo a través de la consola de Amazon Rekognition o llamando a las API directamente mediante la CLI de AWS y los SDK de AWS. En la consola de Amazon Rekognition, puede cargar las imágenes que desea analizar y obtener resultados con solo unos pocos clics. Una vez que se completa el análisis masivo, puede identificar y ver las predicciones de las etiquetas de moderación, como por ejemplo: B. desnudez explícita y no explícita de partes íntimas, así como besos, violencia, drogas y tabaco, y más. También obtiene una puntuación de confianza para cada categoría de etiqueta.

Cree un trabajo de análisis masivo en la consola de Amazon Rekognition

Para probar el análisis masivo de Amazon Rekognition, siga estos pasos:

  1. En la consola de Amazon Rekognition, seleccione análisis de masas en el área de navegación.
  2. Elegir Iniciar análisis de masas.
  3. Ingrese un nombre de trabajo y especifique las imágenes que se analizarán, ya sea ingresando una ubicación de depósito S3 o cargando imágenes desde su computadora.
  4. Opcionalmente, puede seleccionar un adaptador para analizar imágenes utilizando el adaptador personalizado que entrenó mediante moderación personalizada.
  5. Elegir Iniciar análisis para realizar el trabajo.

Cuando se complete el proceso, podrá ver los resultados en la consola de Amazon Rekognition. También se almacena una copia JSON de los resultados del análisis en la ubicación de salida de Amazon S3.

Solicitud de API de análisis masivo de Amazon Rekognition

En esta sección, lo guiaremos en la creación de un trabajo de análisis masivo para moderación de imágenes utilizando interfaces de programación. Si sus archivos de imagen aún no están en un depósito de S3, cárguelos para garantizar el acceso de Amazon Rekognition. De manera similar a crear un trabajo de análisis masivo en la consola de Amazon Rekognition, debe especificar los siguientes parámetros al llamar a la API StartMediaAnalysisJob:

  • Configuración de operaciones – Estas son las opciones de configuración para el trabajo de análisis de medios a crear:
    • Mínima Confianza – El nivel de confianza mínimo con el rango válido de 0 a 100 para las etiquetas de moderación que se devolverán. Amazon Rekognition no devuelve etiquetas con un nivel de confianza inferior a este valor especificado.
  • Entrada – Esto incluye lo siguiente:
    • Objeto S3 – La información del objeto S3 para el archivo de manifiesto de entrada, incluido el depósito y el nombre del archivo. El archivo de entrada contiene líneas JSON para cada imagen almacenada en el depósito S3. Por ejemplo: {"source-ref": "s3://MY-INPUT-BUCKET/1.jpg"}
  • Configuración de salida – Esto incluye lo siguiente:
    • S3Cubo – El nombre del depósito S3 para los archivos de salida.
    • S3KeyPrefijo – El prefijo clave para los archivos de salida.

Vea el siguiente código:

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)

Puede invocar el mismo análisis de medios utilizando el siguiente comando de AWS CLI:

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"

Resultados de la API de análisis masivo de Amazon Rekognition

Para obtener una lista de trabajos de análisis masivo, puede utilizar: ListMediaAnalysisJobs. La respuesta contiene todos los detalles sobre los archivos de entrada y salida del trabajo de análisis, así como el estado del trabajo:

# 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')

También puedes llamar al list-media-analysis-jobs Comando a través de la CLI de AWS:

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

Amazon Rekognition Bulk Analysis genera dos archivos de salida en el depósito de salida. El primer archivo es manifest-summary.jsonincluyendo estadísticas de trabajos de análisis masivo y una lista de errores:

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

El segundo archivo es results.json, que contiene una línea de JSON por imagen analizada en el siguiente formato. Cada resultado incluye la categoría de nivel superior (L1) de una etiqueta detectada y la categoría de segundo nivel de la etiqueta (L2), con una puntuación de confianza entre 1 y 100. Algunas etiquetas de nivel de taxonomía 2 pueden tener etiquetas de nivel de taxonomía 3 (L3). Esto permite clasificar el contenido jerárquicamente.

{
  "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": [
      
    ]
  }
}

Mejora de la predicción del modelo de moderación de contenido mediante análisis masivo y moderación personalizada

Puede mejorar la precisión del modelo de moderación de contenido base con la función de moderación personalizada. La moderación personalizada le permite entrenar un adaptador de moderación personalizado cargando sus imágenes y anotando esas imágenes. Los adaptadores son componentes modulares que pueden ampliar y mejorar las capacidades del modelo de aprendizaje profundo de Amazon Rekognition. Para anotar fácilmente sus imágenes, simplemente puede verificar las predicciones de su trabajo de análisis masivo para entrenar un adaptador personalizado. Para comprobar los resultados de la predicción, siga estos pasos:

  1. En la consola de Amazon Rekognition, seleccione análisis de masas en el área de navegación.
  2. Seleccione el trabajo de análisis masivo y luego » Consultar predicciones.

Sobre el Verificar predicción En la página puedes ver todas las imágenes evaluadas en este trabajo y las etiquetas previstas.

  1. Seleccione la etiqueta de cada imagen como presente (marca de verificación) para confirmar un Verdadero Positivo. o marcar como ausente (marca X) para invalidar cualquier etiqueta asignada (es decir, la predicción de la etiqueta es un falso positivo).
  2. Si la imagen no tiene asignada la etiqueta adecuada (por ejemplo, Falso Negativo), también puede seleccionar las etiquetas correctas y asignarlas a la imagen.

Según su verificación, los falsos positivos y falsos negativos se actualizan en las estadísticas de verificación. Puede utilizar estas comprobaciones para entrenar un adaptador de moderación personalizado para mejorar la precisión de las predicciones de moderación de contenido.

  1. Como requisito previo para capacitar a un adaptador de moderación personalizado, debe revisar al menos 20 falsos positivos o 50 falsos negativos para cada etiqueta de moderación que desee mejorar. Una vez que hayas verificado 20 falsos positivos o 50 falsos negativos, podrás elegir Entrenar a un adaptador.

Puede utilizar adaptadores de moderación personalizados para analizar sus imágenes más adelante simplemente seleccionando el adaptador personalizado al crear un nuevo trabajo de análisis masivo o pasando el ID de adaptador único del adaptador personalizado a través de la API.

Resumen

En esta publicación, proporcionamos una descripción general de la versión 7.0 de la moderación de contenido, el análisis masivo para la moderación de contenido y cómo mejorar las predicciones de moderación de contenido mediante el análisis masivo y la moderación personalizada. Para probar las nuevas etiquetas de moderación y análisis masivos, inicie sesión en su cuenta de AWS y consulte la consola de análisis masivo y moderación de imágenes de Amazon Rekognition.


Sobre los autores

Mehdy Haghy es arquitecto de soluciones senior en el equipo de AWS WWCS y se especializa en IA y ML en AWS. Trabaja con clientes empresariales para ayudarlos a migrar, modernizar y optimizar sus cargas de trabajo para la nube de AWS. En su tiempo libre, le gusta cocinar platos persas y jugar con dispositivos electrónicos.

Shipra Kanoria es gerente principal de productos en AWS. Le apasiona ayudar a los clientes a resolver sus problemas más complejos utilizando el aprendizaje automático y la inteligencia artificial. Antes de unirse a AWS, Shipra pasó más de cuatro años en Amazon Alexa, donde introdujo muchas funciones relacionadas con la productividad para el asistente de voz de Alexa.

Maria Handoko es gerente senior de productos en AWS. Se centra en ayudar a los clientes a resolver sus desafíos comerciales mediante el aprendizaje automático y la visión por computadora. En su tiempo libre, le gusta hacer senderismo, escuchar podcasts y explorar diferentes cocinas.

[ad_2]