Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Conoce el principio de segmentación de palabras chinas en Python?

¿Conoce el principio de segmentación de palabras chinas en Python?

La segmentación de palabras chinas (segmentación de palabras chinas), es decir, la segmentación de palabras chinas, es el proceso de segmentar una cadena de caracteres chinos para obtener una palabra. En la superficie, la segmentación de palabras es solo eso, pero el efecto de la segmentación de palabras tiene un gran impacto en la recuperación de información y los resultados experimentales. Al mismo tiempo, en realidad existen múltiples algoritmos detrás de la segmentación de palabras.

La segmentación de palabras en chino es muy diferente de la segmentación de palabras en inglés. Para el inglés, una palabra es una palabra, mientras que el chino es la unidad de escritura básica y no se requiere una distinción obvia entre palabras. Según sus características, los algoritmos de segmentación de palabras se pueden dividir en cuatro categorías principales:

Métodos de segmentación de palabras basados ​​en reglas

Métodos estadísticos de segmentación de palabras

Segmentación semántica de palabras métodos

Método de segmentación de palabras basado en la comprensión

A continuación resumimos estos métodos respectivamente.

Segmentación de palabras basada en reglas

Este método también se denomina segmentación mecánica de palabras y segmentación de palabras basada en diccionario. Combina la cadena de caracteres chinos para analizarla con una máquina "suficientemente grande". Las entradas del diccionario se comparan según determinadas estrategias. Si la cadena se encuentra en el diccionario, la coincidencia es exitosa. Este método tiene tres elementos, a saber, el vocabulario, el orden de escaneo del texto y el principio de coincidencia. El orden de escaneo de texto incluye escaneo hacia adelante, escaneo hacia atrás y escaneo bidireccional. Los principios de concordancia incluyen principalmente concordancia máxima, concordancia mínima, concordancia textual y mejor concordancia.

Método de coincidencia máxima (MM). La idea básica es: suponiendo que el número de caracteres chinos contenidos en la palabra más larga en el diccionario de segmentación automática de palabras es i, entonces los primeros i caracteres chinos en la secuencia de cadenas actual del material que se está procesando se utilizan como campo coincidente para buscar. el diccionario de segmentación de palabras Si dichas palabras i coinciden correctamente, el campo coincidente se cortará como una palabra; si no existen dichas palabras i en el diccionario, la coincidencia fallará y se eliminará el último carácter chino; del campo coincidente y los caracteres chinos restantes se utilizarán como palabras nuevas. Si dicha palabra i no se puede encontrar en el diccionario, la coincidencia falla, el último carácter chino se elimina del campo coincidente y los caracteres restantes se utilizan como un nuevo campo coincidente, y luego se realiza nuevamente la coincidencia, y así hasta que el partido sea exitoso. Las estadísticas muestran que la tasa de error de este método es 1/169.

Coincidencia máxima inversa (RMM). Este método es el mismo que el método MM, excepto que comienza al final de la oración (o artículo) y elimina el primer carácter chino cada vez que la coincidencia no tiene éxito. Las estadísticas muestran que este método tiene una tasa de error de 1/245.

Recorrido palabra por palabra. A lo largo de todo el material a procesar, las palabras del diccionario se buscan palabra por palabra en orden descendente, de más larga a más corta, hasta que se hayan eliminado todas las palabras. No importa cuán grande sea el diccionario de subpalabras y cuán pequeño sea el material que se procesa, el diccionario de subpalabras debe coincidir una vez.

Establecer marcado de segmentación. Las marcas de segmentación se dividen en marcas de segmentación naturales y marcas de segmentación no naturales. Los signos de segmentación naturales se refieren a símbolos no literales que aparecen en el texto, como signos de puntuación, etc. Los marcadores de segmentación antinatural se refieren a palabras que usan afijos y palabras que no forman palabras (incluidas palabras monosilábicas, palabras polisilábicas, onomatopeyas, etc.). El método para configurar marcadores de segmentación es recopilar primero muchos marcadores de segmentación durante el proceso de segmentación, primero encontrar los marcadores de segmentación, luego segmentar las oraciones en algunos segmentos más cortos y luego usar MM, RMM u otros métodos para refinar el procesamiento. Este método no es un método de segmentación de palabras real, es solo un método de preprocesamiento para la segmentación automática de palabras, que no solo consume tiempo adicional para escanear las marcas de segmentación, sino que también aumenta el espacio de almacenamiento para almacenar esas marcas de segmentación no naturales.

Mejor método de emparejamiento (OM). Este método se divide en el método de mejor coincidencia directa y el método de mejor coincidencia inversa. Su punto de partida es organizar las palabras en el diccionario según el orden de frecuencia de las palabras para acortar el tiempo de recuperación de palabras en el diccionario y lograr el mejor efecto. complejidad del tiempo de las palabras y acelerar las palabras. En esencia, este método no es un método puro de segmentación de palabras, es solo un método para organizar un diccionario de segmentación de palabras. El diccionario de segmentación de palabras del método OM debe tener un elemento de datos de una longitud específica delante de cada palabra, por lo que aumenta su complejidad espacial, lo que no tiene ningún efecto en la mejora de la precisión de la segmentación de palabras, pero la complejidad temporal del procesamiento de segmentación de palabras es reducido.

La ventaja de este método es que es sencillo y fácil de implementar.

Pero hay muchas deficiencias: la velocidad de coincidencia es lenta; hay problemas de segmentación de desambiguación de intersección y combinación, no existe una definición estándar de la palabra en sí y no existe un conjunto de palabras estándar unificado; la desambiguación generada por diferentes diccionarios también es diferente; hay una falta de inteligencia de autoaprendizaje.

Método de desambiguación basado en estadísticas

La idea principal de este método: las palabras son combinaciones estables, por lo que cuantas más veces aparecen simultáneamente palabras adyacentes en el contexto, más forman una palabra mayor es la posibilidad. Por lo tanto, la probabilidad o frecuencia de aparición adyacente de las palabras puede reflejar mejor la credibilidad de las palabras constituyentes. Al contar la frecuencia de combinaciones de caracteres individuales adyacentes en el texto de entrenamiento, se puede calcular la información de ocurrencia mutua entre ellos. La información que aparece entre los caracteres refleja la cercanía de la relación de combinación entre los caracteres chinos. Cuando la proximidad supera un cierto umbral, se puede considerar que este grupo de palabras puede formar una palabra. Este método también se denomina segmentación de palabras sin diccionario.

Los modelos estadísticos utilizados en este método incluyen principalmente N-gram, modelo oculto de Markov (HMM), modelo de máxima entropía (ME), campo aleatorio condicional (CRF), etc. Este método también se denomina segmentación de palabras sin diccionario.

En aplicaciones prácticas, este tipo de algoritmo de segmentación de palabras generalmente se combina con métodos de segmentación de palabras basados ​​en diccionarios, que no solo aprovechan las características rápidas y eficientes de la segmentación de palabras coincidentes, sino que también utilizan métodos sin diccionario. Segmentación de palabras combinada con reconocimiento de contexto de nuevas palabras y ventajas automáticas de desambiguación.

Método de segmentación semántica de palabras

El método de segmentación semántica de palabras introduce el análisis semántico para procesar más información del lenguaje natural en sí, como el método de red de transferencia extendida, el método de análisis semántico de segmentación de palabras de conocimiento y método de restricciones de adyacencia, método de coincidencia integral, método de segmentación de palabras con sufijos, método de diccionario de características, método de restricción matricial, método de análisis sintáctico, etc.

Método de red de transferencia extendida

Este método se basa en el concepto de máquinas de estados finitos. Las máquinas de estados finitos solo pueden reconocer lenguajes de reglas, y la primera extensión de las máquinas de estados finitos les dio capacidades recursivas, formando la Red de Transferencia Recursiva (RTN). En RTN, los símbolos en el arco no solo pueden ser símbolos terminales (palabras en el idioma), sino también símbolos no terminales (partes del discurso). También se pueden llamar subredes adicionales para clasificar símbolos no terminales (como). una palabra o una cadena de palabras). De esta manera, cuando la computadora ejecuta una subred, puede llamar a otra subred, y esto se puede hacer de forma recursiva. El uso de la red de transferencia de expansión léxica hace posible interactuar con la etapa de procesamiento sintáctico de la comprensión del lenguaje y resuelve efectivamente el problema de ambigüedad de la segmentación de palabras chinas.

Método de restricción matricial

La idea básica es establecer una matriz de restricción sintáctica y una matriz de restricción semántica. Los elementos de la matriz representan palabras con una determinada parte del discurso y palabras con otra. parte del discurso. Si la adyacencia se ajusta a las reglas gramaticales y si es lógico que las palabras que pertenecen a una determinada categoría semántica sean adyacentes a palabras de otra parte del discurso. La máquina utilizará esto para limitar los resultados de la segmentación al cortar segmentos.

Segmentación de palabras basada en la comprensión

La segmentación de palabras basada en la comprensión logra el efecto de reconocimiento de palabras simulando la comprensión humana de las oraciones por parte de las computadoras. La idea básica es realizar análisis sintáctico y semántico mientras se segmentan palabras y utilizar información sintáctica y semántica para abordar fenómenos ambiguos. Por lo general, consta de tres partes: subsistema de segmentación de palabras, subsistema de sintaxis y semántica y parte de control general. Bajo la coordinación de la parte de control general, el subsistema de segmentación de palabras puede obtener información sintáctica y semántica de palabras, oraciones, etc., y juzgar la ambigüedad de la segmentación de palabras, es decir, simular el proceso de comprensión humana de las oraciones. Este método de desambiguación requiere el uso de una gran cantidad de conocimientos e información del idioma. Los métodos actuales de desambiguación basados ​​en la comprensión incluyen principalmente la desambiguación de sistemas expertos y la desambiguación de redes neuronales.

Método de segmentación de palabras del sistema experto

Desde la perspectiva del sistema experto, el conocimiento de segmentación de palabras (incluido el conocimiento de segmentación de palabras de sentido común y el conocimiento heurístico para eliminar la segmentación ambigua, es decir, reglas- segmentación de ambigüedad basada en) Es independiente del proceso de implementación de segmentación de palabras del motor de inferencia, de modo que el mantenimiento de la base de conocimientos y la implementación del motor de inferencia no interfieren entre sí, lo que facilita el mantenimiento y la gestión de la base de conocimientos. . También tiene la capacidad de descubrir campos de desambiguación de intersección y campos de desambiguación de combinación de palabras polisémicas, así como ciertas funciones de autoaprendizaje.

Desambiguación de redes neuronales

Este método simula el procesamiento paralelo y distribuido y el modelado numérico del cerebro humano. Precipita el método implícito descentralizado de conocimiento de segmentación de palabras dentro de la red neuronal, modifica los pesos internos mediante autoestudio y entrenamiento para lograr los resultados correctos de segmentación de palabras y, finalmente, proporciona los resultados de la segmentación automática de palabras por parte de la red neuronal, como el uso Modelos de redes neuronales como LSTM y GRU.

Método integral de segmentación de palabras del sistema experto de redes neuronales

Este método primero inicia la red neuronal para la segmentación de palabras. Cuando la red neuronal no puede proporcionar resultados de segmentación precisos para nuevas palabras, inicia el experto. El sistema realiza análisis y juicios, realiza inferencias basadas en la base de conocimientos, obtiene resultados de análisis preliminares e inicia el mecanismo de aprendizaje para entrenar la red neuronal. Este método puede aprovechar al máximo las ventajas de las redes neuronales y los sistemas expertos y mejorar aún más la eficiencia de la segmentación de palabras.

Lo anterior es una introducción básica al algoritmo de segmentación de palabras.