Share via


Componentes de la entidad

En Conversational Language Understanding, las entidades son fragmentos de información relevantes que se extraen de las expresiones. Hay diferentes métodos para extraer una entidad: por aprendizaje a través del contexto, por coincidencia con respecto una lista o por detección mediante una entidad reconocida creada previamente. Cada entidad del proyecto se compone de uno o varios de estos métodos, que se definen como "componentes de la entidad". Cuando más de un componente define una entidad, sus predicciones pueden superponerse. Puede determinar el comportamiento de una predicción de entidad si sus componentes se superponen mediante un conjunto fijo de opciones de Opciones de entidad.

Tipos de componentes

Un componente de entidad determina una manera de extraer la entidad. Una entidad puede contener un componente, que determinaría el único método que se usaría para extraer la entidad, o varios componentes para ampliar las formas en que se define y extrae la entidad.

Componente aprendido

El componente aprendido usa las etiquetas de entidad con las que etiqueta las expresiones para entrenar un modelo de aprendizaje automático. El modelo aprende a predecir dónde está la entidad, en función del contexto dentro de la expresión. Las etiquetas proporcionan ejemplos de dónde se espera que la entidad esté presente en una expresión, en función del significado de las palabras que la rodea y de las palabras etiquetadas. Este componente solo se define si agrega etiquetas mediante el etiquetado de expresiones para la entidad. Si no etiqueta ninguna expresión con la entidad, no tendrá un componente aprendido.

Captura de pantalla que muestra un ejemplo de componentes de aprendizaje para entidades.

Componente de lista

Un componente de lista representa un conjunto fijo y cerrado de palabras relacionadas y sus sinónimos. El componente realiza una búsqueda de coincidencia de texto exacta con respecto a la lista de valores que proporcionó como sinónimos. Cada sinónimo pertenece a una "clave de lista" que se puede usar como valor estándar normalizado para el sinónimo que se va a devolver en la salida si el componente de lista coincide. Las claves de lista no se usan para buscar coincidencias.

En proyectos multilingües puede especificar otro conjunto de sinónimos para cada idioma. Al usar la API de predicción puede especificar el idioma de la solicitud de entrada, que solo coincide con los sinónimos asociados a ese idioma.

Captura de pantalla que muestra un ejemplo de componentes de lista para entidades.

Componente creado previamente

El componente creado previamente permite seleccionar valores de una biblioteca de tipos comunes, como números, fecha y hora, y nombres. Cuando se agrega, se detecta automáticamente un componente creado previamente. Puede tener hasta cinco componentes precompilados por entidad. Para obtener más información, consulte la lista de componentes creados previamente que se admiten.

Captura de pantalla que muestra un ejemplo de componentes creados previamente para entidades.

Componente Regex

El componente regex coincide con expresiones regulares para capturar patrones coherentes. Al agregarlo, se extraerá cualquier texto que coincida con la expresión regular. Puede tener varias expresiones regulares dentro de la misma entidad, cada una con un identificador de clave diferente. Una expresión coincidente devolverá la clave como parte de la respuesta de predicción.

En proyectos multilingües puede especificar una expresión distinta para cada idioma. Al usar la API de predicción puede especificar el idioma de la solicitud de entrada, que solo coincide con la expresión regular asociada a ese idioma.

Captura de pantalla en la que se muestra un ejemplo de componentes de regex para entidades.

Opciones de entidad

Cuando se definen varios componentes para una entidad, sus predicciones pueden superponerse. Cuando esto pasa, la predicción final de cada entidad se determina mediante una de las siguientes opciones.

Combinación de componentes

Combine los componentes como una entidad cuando se superpongan al tomar la unión de todos los componentes.

Úsela para combinar todos los componentes cuando se superpongan. Cuando se combinan los componentes, se obtiene toda la información adicional asociada a una lista o un componente precompilado, si están presentes.

Ejemplo

Imagine que tiene una entidad con el nombre Software que tiene un componente de lista que contiene "Proseware OS" como entrada. En los datos de expresión, tiene "Quiero comprar Proseware OS 9" con "Proseware OS 9" etiquetado como Software:

Captura de pantalla que muestra una entidad aprendida y de lista superpuesta.

Al usar los componentes de la combinación, la entidad se devuelve con el contexto completo como "Proseware OS 9" junto con la clave del componente de lista:

Captura de pantalla que muestra el resultado de un componente combinado.

Imagine que tenía la misma expresión, pero que el componente aprendido solo predijo "OS 9":

Captura de pantalla que muestra una expresión con OS 9 predicho por el componente aprendido.

Con los componentes de la combinación, la entidad se seguirá devolviendo como "Proseware OS 9" con la clave del componente de lista:

Captura de pantalla que muestra la entidad de software devuelta.

No combinar componentes

Cada componente superpuesto se devuelve como una instancia independiente de la entidad. Aplique su propia lógica después de la predicción con esta opción.

Ejemplo

Imagine que tiene una entidad con el nombre Software que tiene un componente de lista que contiene "Proseware Desktop" como entrada. En los datos de la expresión, tiene "Quiero comprar Proseware Desktop Pro" con "Proseware Desktop Pro" etiquetado como Software:

Captura de pantalla que muestra un ejemplo de una entidad aprendida y de lista superpuestas.

Si no combina los componentes, la entidad se devuelve dos veces:

Captura de pantalla que muestra la entidad devuelta dos veces.

Componentes necesarios

A veces, una entidad se puede definir mediante varios componentes, pero requiere que uno o varios de ellos estén presentes. Cada componente se puede establecer como obligatorio, lo que significa que no se devolverá la entidad si ese componente no estaba presente. Por ejemplo, si tiene una entidad con un componente de lista y un componente aprendido obligatorio, se garantiza que cualquier entidad devuelta incluya un componente aprendido; en caso contrario, no se devolverá la entidad.

Los componentes obligatorios se usan con más frecuencia con componentes aprendidos, ya que pueden restringir los demás tipos de componentes a un contexto específico, normalmente asociado a roles. También puede requerir todos los componentes para asegurarse de que estén presentes para una entidad.

En Language Studio, todos los componentes de una entidad tienen un botón de alternancia junto a él que permite establecerlo como obligatorio.

Ejemplo

Supongamos que tiene una entidad denominada Cantidad de billetes que intenta extraer el número de billetes que desea reservar para vuelos, para expresiones como "Reservar dos billetes a El Cairo para mañana".

Normalmente, agregaría un componente creado previamente para Quantity.Number que ya extrae todos los números. Sin embargo, si la entidad solo se definió con lo precompilado, también extraería otros números como parte de la entidad Cantidad de billetes, como "Reservar dos billetes a El Cairo para mañana a las 15:00".

Para resolverlo, etiquetaría un componente aprendido en los datos de entrenamiento para todos los números destinados a ser Cantidad de billetes. La entidad ahora tiene dos componentes, el precompilado que conoce todos los números y el aprendido que predice dónde se encuentra la cantidad de billetes en una oración. Si necesita el componente aprendido, asegúrese de que Cantidad de billetes solo se devuelve cuando el componente aprendido lo predice en el contexto correcto. Si también necesita el componente precompilado, puede garantizar que la entidad Cantidad de billetes devuelta sea un número y se encuentre en la posición correcta.

Uso de componentes y opciones

Los componentes proporcionan la flexibilidad necesaria para definir la entidad de varias maneras. Al combinar componentes se garantiza que cada uno de ellos esté representado y se reduce el número de entidades devueltas en las predicciones.

Una práctica habitual es extender un componente precompilado con una lista de valores que es posible que el precompilado no admita. Por ejemplo, si tiene una entidad Organization con un componente precompilado General.Organization agregado, es posible que la entidad no prediga todas las organizaciones específicas del dominio. Puede usar un componente de lista para extender los valores de la entidad Organization y, por tanto, extender el precompilado con sus propias organizaciones.

Otras veces es posible que le interese extraer una entidad por medio del contexto, como un producto en un proyecto de comercio. Etiquetaría para que el componente aprendido del producto aprendiera dónde está basado un producto en su posición dentro de la oración. También podría tener una lista de productos que ya conoce de antemano y que le gustaría extraer siempre. La combinación de ambos componentes en una entidad permite obtener ambas opciones para la entidad.

Si no se combinan los componentes, se permite que cada uno de ellos actúe como extractor de entidades independientes. Una manera de usar esta opción es separar las entidades extraídas de una lista de las extraídas por medio de los componentes aprendidos o precompilados para controlarlas y tratarlas de forma diferente.

Nota

Antes, durante la versión preliminar pública del servicio, había cuatro opciones disponibles: Superposición más larga, Superposición exacta, Superposición de unión y Devolver todo por separado. Superposición más larga y Superposición exacta están en desuso y solo se admiten en los proyectos que ya tenían esas opciones seleccionadas. Superposición de unión se ha cambiado por Combinar componentes, mientras que Devolver todo por separado se ha sustituido por No combinar componentes.

Pasos siguientes

Componentes creados previamente que se admiten