Extraer entidades con aprendizaje profundo (GeoAI)

Resumen

Ejecuta un modelo reconocedor de entidades con nombre entrenado en archivos de texto de una carpeta, o un campo de texto de una clase de entidad o tabla, para extraer entidades y ubicaciones (como direcciones, nombres de lugares o personas, fechas y valores monetarios) en una tabla. Si las entidades extraídas contienen una dirección, la herramienta geocodifica las direcciones con el localizador especificado y produce una clase de entidad como salida.

Más información sobre cómo funciona Reconocimiento de entidades

Uso

  • Esta herramienta requiere la instalación de marcos de aprendizaje profundo. Para configurar su equipo para usar marcos de aprendizaje profundo en ArcGIS Pro, consulte Instalar marcos de aprendizaje profundo para ArcGIS.

  • Esta herramienta requiere un archivo de definición de modelo que contenga información del modelo entrenado. El modelo se puede entrenar con la herramienta Entrenar modelo de reconocimiento de entidades. El valor del parámetro Archivo de definición de modelo de entrada puede ser un archivo JSON de definición de modelo de Esri (.emd) o un paquete de modelo de aprendizaje profundo (.dlpk). Los archivos de modelo pueden almacenarse localmente o alojarse en ArcGIS Living Atlas of the World.

  • Esta herramienta recibe soporte para los modelos entrenados utilizando bases basadas en transformadores y la base Mistral. Para instalar la base Mistral, consulte base Mistral de ArcGIS.

  • Esta herramienta admite el uso de modelos de lenguaje de terceros creados mediante la entidad de extensibilidad de modelos. La entidad de extensibilidad del modelo habilita las tareas de extracción de entidades mediante un archivo de modelo de aprendizaje profundo personalizado (.dlpk) que no se crea con la herramienta Entrenar modelo de reconocimiento de entidades. Para obtener más información sobre la creación de un archivo de modelo (.dlpk) de aprendizaje profundo personalizado, consulte Utilizar modelos de lenguaje de terceros con ArcGIS.

  • Esta herramienta puede funcionar con CPU o GPU; sin embargo, el aprendizaje profundo es intensivo desde el punto de vista computacional y se recomienda una GPU. Para ejecutar esta herramienta con la GPU, configure el entorno Tipo de procesador en GPU. Si tiene más de una GPU, especifique el entorno de Id. de GPU en su lugar.

  • Para obtener información sobre los requisitos para ejecutar esta herramienta y los problemas que pueden presentarse, consulte Preguntas frecuentes sobre el aprendizaje profundo.

Parámetros

EtiquetaExplicaciónTipo de datos
Carpeta o tabla de entrada

La entrada de este parámetro puede ser cualquiera de las siguientes:

  • Clase de entidad o tabla que contiene la columna de texto en la que se realizará la extracción de entidad con nombre.
  • Una carpeta que contiene los archivos de texto en los que se realizará la extracción de entidad con nombre.
Folder; Feature Layer; Table View; Feature Class
Tabla de Salida

Tabla o clase de entidad de salida que contendrá las entidades extraídas. Si se proporciona un localizador y el modelo extrae direcciones, la clase de entidad se producirá geocodificando las direcciones extraídas.

Feature Class; Table; Feature Layer
Archivo de definición de modelo de entrada

El modelo entrenado que se utilizará para extraer entidades del texto. El archivo de definición de modelo puede ser un archivo JSON de definición de modelos de Esri (.emd) o un paquete de modelos de aprendizaje profundo (.dlpk) almacenado localmente o alojado en ArcGIS Living Atlas (.dlpk_remote).

Para utilizar un archivo .dlpk entrenado con la base de Mistral, debe instalarse antes de utilizar el modelo. Para instalar la base Mistral, consulte Base Mistral de ArcGIS.

El archivo .dlpk también puede ser un modelo de lenguaje de terceros.

Precaución:

Un archivo .dlpk de modelo de lenguaje de terceros puede contener potencialmente código malicioso. Utilice estos modelos solo si confía en su origen.

File
Argumentos de modelo
(Opcional)

Argumentos adicionales que utilizará el modelo al llevar a cabo la inferencia. El argumento de modelo admitido es sequence_length, que se utilizará para ajustar la salida del modelo.

Nota:

Cuando utilice un modelo de lenguaje de terceros, los argumentos del modelo se actualizarán según los parámetros especificados en el archivo .dlpk. Para obtener más información sobre cómo definir los argumentos del modelo, consulte la sección getParameterInfo en Utilizar modelos de lenguaje de terceros con ArcGIS.

Value Table
Tamaño de lote
(Opcional)

El número de muestras de entrenamiento que se procesarán a la vez. El valor predeterminado es 4.

Aumentar el tamaño de lote puede mejorar el rendimiento de la herramienta; sin embargo, a medida que aumenta el tamaño del lote, se utiliza más memoria. Si se produce un error de memoria insuficiente, utilice un tamaño de lote más pequeño.

Double
Zona de ubicación
(Opcional)

La zona o región geográfica en la que se espera que se ubiquen las direcciones. El texto especificado se incorporará a la dirección extraída por el modelo.

El localizador utiliza la información de zona de ubicación para identificar la región o área geográfica en la que se ubica la dirección para producir mejores resultados.

String
Localizador de entrada
(Opcional)

El localizador que se utilizará para geocodificar las direcciones que se encuentran en los documentos de texto de entrada. Se genera un punto por cada dirección que se geocodifica correctamente y se almacena en la clase de entidad de salida.

Address Locator
Campo de texto

Un campo de texto de la tabla o clase de entidad de entrada que contiene el texto que utilizará el modelo como entrada. Este parámetro es necesario cuando el valor del parámetro Carpeta o tabla de entrada tiene una clase de entidad o tabla.

Field

arcpy.geoai.ExtractEntitiesUsingDeepLearning(in_folder, out_table, in_model_definition_file, {model_arguments}, {batch_size}, {location_zone}, {in_locator}, text_field)
NombreExplicaciónTipo de datos
in_folder

La entrada de este parámetro puede ser cualquiera de las siguientes:

  • Clase de entidad o tabla que contiene la columna de texto en la que se realizará la extracción de entidad con nombre.
  • Una carpeta que contiene los archivos de texto en los que se realizará la extracción de entidad con nombre.
Folder; Feature Layer; Table View; Feature Class
out_table

Tabla o clase de entidad de salida que contendrá las entidades extraídas. Si se proporciona un localizador y el modelo extrae direcciones, la clase de entidad se producirá geocodificando las direcciones extraídas.

Feature Class; Table; Feature Layer
in_model_definition_file

El modelo entrenado que se utilizará para extraer entidades del texto. El archivo de definición de modelo puede ser un archivo JSON de definición de modelos de Esri (.emd) o un paquete de modelos de aprendizaje profundo (.dlpk) almacenado localmente o alojado en ArcGIS Living Atlas (.dlpk_remote).

Para utilizar un archivo .dlpk entrenado con la base de Mistral, debe instalarse antes de utilizar el modelo. Para instalar la base Mistral, consulte Base Mistral de ArcGIS.

El archivo .dlpk también puede ser un modelo de lenguaje de terceros.

Precaución:

Un archivo .dlpk de modelo de lenguaje de terceros puede contener potencialmente código malicioso. Utilice estos modelos solo si confía en su origen.

File
model_arguments
[model_arguments,...]
(Opcional)

Argumentos adicionales que utilizará el modelo al llevar a cabo la inferencia. El argumento de modelo admitido es sequence_length, que se utilizará para ajustar la salida del modelo.

Nota:

Cuando utilice un modelo de lenguaje de terceros, los argumentos del modelo se actualizarán según los parámetros especificados en el archivo .dlpk. Para obtener más información sobre cómo definir los argumentos del modelo, consulte la sección getParameterInfo en Utilizar modelos de lenguaje de terceros con ArcGIS.

Value Table
batch_size
(Opcional)

El número de muestras de entrenamiento que se procesarán a la vez. El valor predeterminado es 4.

Aumentar el tamaño de lote puede mejorar el rendimiento de la herramienta; sin embargo, a medida que aumenta el tamaño del lote, se utiliza más memoria. Si se produce un error de memoria insuficiente, utilice un tamaño de lote más pequeño.

Double
location_zone
(Opcional)

La zona o región geográfica en la que se espera que se ubiquen las direcciones. El texto especificado se incorporará a la dirección extraída por el modelo.

El localizador utiliza la información de zona de ubicación para identificar la región o área geográfica en la que se ubica la dirección para producir mejores resultados.

String
in_locator
(Opcional)

El localizador que se utilizará para geocodificar las direcciones que se encuentran en los documentos de texto de entrada. Se genera un punto por cada dirección que se geocodifica correctamente y se almacena en la clase de entidad de salida.

Address Locator
text_field

Un campo de texto de la tabla o clase de entidad de entrada que contiene el texto que utilizará el modelo como entrada. Este parámetro es necesario cuando el valor del parámetro in_folder tiene una clase de entidad o tabla.

Field

Muestra de código

ExtractEntitiesUsingDeepLearning (script independiente)

El siguiente ejemplo muestra cómo utilizar la función ExtractEntitiesUsingDeepLearning.

# Name: ExtractEntities.py
# Description: Extract useful entities such as "Address", "Date" from text.  

# Import system modules
import arcpy
import os

arcpy.env.workspace = "C:/textanalysisexamples/data"
dbpath = "C:/textanalysisexamples/Text_analysis_tools.gdb"

# Set local variables
in_folder = 'test_data'
out_table = os.path.join(dbpath, "ExtractedEntities")

pretrained_model_path_emd = "c:\\extractentities\\EntityRecognizer.emd"

# Run Extract Entities Using Deep Learning
arcpy.geoai.ExtractEntitiesUsingDeepLearning(
    in_folder, out_table, pretrained_model_path_emd)

Información de licenciamiento

  • Basic: No
  • Standard: No
  • Advanced: Sí

Temas relacionados