Extraer entidades con aprendizaje profundo (GeoAI)

Resumen

Ejecuta un modelo entrado reconocedor de entidades con nombre en archivos de texto de una carpeta 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 AllSource, 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 clasificación de texto. 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 deben almacenarse localmente.

  • Esta herramienta se puede ejecutar en una CPU o una GPU. Sin embargo, el aprendizaje profundo requiere gran potencia de cómputo 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 de entrada

La carpeta que contiene los archivos de texto en los que se realizará la extracción de entidad con nombre.

Folder
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
Archivo de definición de modelo de entrada

El modelo entrenado que se utilizará para la clasificación. El archivo de definición de modelo puede ser un archivo JSON de definición de modelo de Esri (.emd), o un paquete de modelo de aprendizaje profundo (.dlpk) almacenado localmente.

File
Argumentos de modelo
(Opcional)

Argumentos adicionales, como un umbral de confianza, que se utilizarán para ajustar la sensibilidad del modelo.

La herramienta rellenará los nombres de los argumentos.

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 y produce mejores resultados.

String
Localizador de entrada
(Opcional)

El localizador que se utilizará para geocodificar las direcciones de calles 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

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

La carpeta que contiene los archivos de texto en los que se realizará la extracción de entidad con nombre.

Folder
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
in_model_definition_file

El modelo entrenado que se utilizará para la clasificación. El archivo de definición de modelo puede ser un archivo JSON de definición de modelo de Esri (.emd), o un paquete de modelo de aprendizaje profundo (.dlpk) almacenado localmente.

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

Argumentos adicionales, como un umbral de confianza, que se utilizarán para ajustar la sensibilidad del modelo.

La herramienta rellenará los nombres de los argumentos.

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 y produce mejores resultados.

String
in_locator
(Opcional)

El localizador que se utilizará para geocodificar las direcciones de calles 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

Muestra de código

ExtractEntitiesUsingDeepLearning (ventana de Python)

El siguiente script de la ventana de Python muestra cómo utilizar la función ExtractEntitiesUsingDeepLearning.

# Name: ExtractEntities.py
# Description: Extract useful entities like "Address", "Date" from text.  
#
# Requirements: ArcGIS Pro Advanced license

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