Algoritmo de Modelo de tema neuronal (NTM) - Amazon SageMaker

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Algoritmo de Modelo de tema neuronal (NTM)

Amazon SageMaker NTM es un algoritmo de aprendizaje no supervisado que se utiliza para organizar un corpus de documentos en temas que contienen agrupaciones de palabras en función de su distribución estadística. Los documentos que contienen presencias frecuentes de palabras como "moto", "coche", "tren", "distancia" y "velocidad", es probable que compartan un tema de "transporte", por ejemplo. El modelado de temas se puede utilizar para clasificar o resumir documentos en función de los temas detectados o para recuperar información o contenido recomendado en función de similitudes por tema. Los temas de documentos que aprende NTM son caracterizado como una representación latente porque los temas se infieren a partir de las distribuciones de palabras observadas en el corpus. La semántica de los temas se infiere normalmente mediante el examen de las palabras más importantes que contienen. Puesto que el método no es supervisado, se especifican previamente solo los números de temas, no los propios temas. Además, no se garantiza que los temas sigan los procedimientos de categorización naturales de los documentos.

Los modelos de temas proporcionan una forma de visualizar contenido de un gran cuerpo de documentos en términos de temas aprendidos. Los documentos relevantes para cada tema deben indexarse o buscarse en función de las etiquetas de temas blandas. Las representaciones latentes de documentos pueden utilizarse para buscar documentos similares en el espacio del tema. También puede utilizar las representaciones latentes de documentos que aprende el modelo del tema para la entrada en otro algoritmo supervisado como un clasificador de documentos. Puesto que se prevé que las representaciones latentes de documentos capturen la semántica de los documentos subyacentes, se espera que los algoritmos basados en parte en estas representaciones tengan un mejor rendimiento que los basados solo en características léxicas.

Si bien puede usar los algoritmos Amazon SageMaker NTM y LDA para el modelado de temas, son algoritmos distintos y se espera que produzcan resultados diferentes en los mismos datos de entrada.

Para obtener más información sobre las operaciones matemáticas que se encuentran detrás de NTM, consulte Inferencia variacional neuronal para el procesamiento de texto.

Interfaz de entrada/salida para el algoritmo NTM

El modelo de temas SageMaker neuronales de Amazon admite cuatro canales de datos: tren, validación, prueba y auxiliar. Los canales de datos de validación, prueba y auxiliar son opcionales. Si especifica cualquiera de estos canales opcionales, establezca el valor del S3DataDistributionType parámetro para ellos FullyReplicated. Si proporciona datos de validación, la pérdida en estos datos se registra en cada fecha de inicio y el modelo detiene la capacitación cuando detecta que esa pérdida de validación no mejora. Si no proporciona datos de validación, el algoritmo detiene los datos basados anteriormente en la capacitación, pero esto puede ser menos eficiente. Si proporciona datos de prueba, el algoritmo informa de la pérdida de prueba del modelo final.

Los canales de datos de capacitación, validación y prueba para NTM admiten recordIO-wrapped-protobuf (denso y disperso) y formatos de archivo CSV. Para el formato CSV, cada fila debe representarse densamente con recuentos de cero para las palabras no presentes en el documento correspondiente y tener la dimensión igual a: (número de registros) * (tamaño de vocabulario). Puede usar el modo de archivo o el modo de canalización para capacitar modelos con datos con formato recordIO-wrapped-protobuf o CSV. El canal auxiliar se utiliza para suministrar un archivo de texto que contiene vocabulario. Al proporcionar el archivo de vocabulario, los usuarios pueden ver las primeras palabras para cada uno de los temas impresos en el registro en lugar de su IDs de entero. Tener el archivo de vocabulario también permite a NTM calcular puntuaciones de Coherencia del tema de incrustación de palabra (WETC), una nueva métrica que se muestran en el registro que captura similitud entre las primeras palabras en cada tema de forma eficaz. El ContentType para el canal auxiliar es text/plain, con cada línea que contiene una única palabra, en el orden correspondiente a las IDs de entero proporcionadas en los datos. El archivo de vocabulario debe tener el nombre vocab.txt y actualmente solo se admite la codificación UTF-8.

Para la inferencia, se admiten los tipos de contenido text/csv, application/json, application/jsonlines y application/x-recordio-protobuf. Es posible pasar los datos dispersos para application/json y application/x-recordio-protobuf. La inferencia de NTM devuelve predicciones application/json o application/x-recordio-protobuf , que incluyen el vector topic_weights para cada observación.

Consulte la entrada de blog y el bloc de notas complementario para obtener más información sobre el uso del canal auxiliar y las puntuaciones WETC. Para obtener más información acerca de cómo calcular la puntuación WETC, consulte Modelado de temas neuronales consciente de la coherencia. Usamos el WETC por pares descrito en este paper para el Amazon SageMaker Neural Topic Model.

Para obtener más información sobre los formatos de archivo de entrada y salida, consulte Formatos de respuesta de NTM para inferencia y Bloc de notas de muestra de NTM.

Recomendación de la instancia EC2 para el algoritmo NTM

La capacitación de NTM admite tanto los tipos de instancia de GPU como de CPU. Recomendamos las instancias de GPU, pero para determinadas cargas de trabajo, las instancias de CPU pueden generar costos de capacitación inferiores. Las instancias de CPU deben ser suficientes para la inferencia. El algoritmo NTM admite las familias de instancias de GPU P2, P3, G4dn y G5 para el entrenamiento y la inferencia.

Bloc de notas de muestra de NTM

Para ver un ejemplo de cuaderno que utiliza el algoritmo SageMaker NTM para descubrir temas en documentos a partir de una fuente de datos sintética en la que se conocen las distribuciones de los temas, consulte la Introducción a las funciones básicas de NTM. Para obtener instrucciones sobre cómo crear instancias de Jupyter Notebook y acceder a ellas con las que puede ejecutar el ejemplo, consulte. SageMaker Instancias de Amazon SageMaker Notebook Una vez que haya creado una instancia de bloc de notas y la haya abierto, seleccione la pestaña SageMaker Ejemplos para ver una lista de todos los SageMaker ejemplos. Los blocs de notas de modelado de ejemplos que utilizan los algoritmos NTM se encuentran en la sección de introducción a algoritmos de Amazon. Para abrir un cuaderno, haga clic en la pestaña Usar y seleccione Crear copia.