Colección de citas famosas - Slogan de motivación - ¿Qué componente de segmentación de palabras chinas es el mejor en el entorno del lenguaje C#?

¿Qué componente de segmentación de palabras chinas es el mejor en el entorno del lenguaje C#?

Algoritmo de segmentación de palabras KTDictSeg

Llamé a este componente KTDictSeg, que es un componente simple de segmentación de palabras chino-inglés basado en un diccionario desarrollado por KaiToo Search.

Algoritmos de segmentación de palabras

Cuando se trata de algoritmos de segmentación de palabras, hay muchos. Los algoritmos comúnmente utilizados incluyen la coincidencia máxima directa y la coincidencia máxima inversa. Sin embargo, estos dos algoritmos carecen de un buen soporte para algunas oraciones con múltiples diferencias. Tome las dos oraciones "Discurso del Festival de Primavera del alcalde de la ciudad de Changchun" y "Farmacia de Changchun Changchun" como ejemplo:

El "Discurso del Festival de Primavera del alcalde de la ciudad de Changchun" se puede dividir en Ciudad de Changchun, Ciudad de Changchun, Ciudad de Changchun en orden, festival de primavera y discurso. Según el algoritmo de coincidencia máxima directa, el resultado de la segmentación de palabras es Ciudad de Changchun/Longitud/Festival de Primavera/Discurso. Según el algoritmo de coincidencia máxima inversa, el resultado de la segmentación de palabras es Changchun/Alcalde/Festival de Primavera/Discurso.

La "Farmacia Changchun Changchun" se puede dividir en Changchun, Ciudad de Changchun, Mayor, Changchun, Afrodisíaco, Farmacia Spring y Farmacia. Según el algoritmo de coincidencia máxima directa, el resultado de la segmentación de palabras es Ciudad de Changchun/Ciudad de Changchun/Farmacia. Según el algoritmo de coincidencia máxima inversa, el resultado de la segmentación de palabras es "Ciudad de Changchun/Alcalde/Farmacia de Chuntian".

Se puede observar que existe una diferencia entre que la coincidencia máxima sea positiva o negativa.

El algoritmo KTDictSeg ha realizado algunas mejoras basadas en el algoritmo de coincidencia directa. Descrito en una oración como: Encuentre la primera combinación de palabras no coincidentes con la menor cantidad de palabras en la oración. Si varias combinaciones tienen la menor cantidad de palabras no coincidentes, busque la combinación con la menor cantidad de palabras coincidentes. El orden de coincidencia es de izquierda a derecha. Tomemos las dos oraciones anteriores como ejemplo:

De acuerdo con el orden de escaneo de coincidencia máxima hacia adelante, las siguientes combinaciones de palabras coincidentes pueden aparecer en el “Discurso del Festival de Primavera del alcalde de Changchun”:

1) El número de palabras coincidentes para Changchun/Alcalde/Festival de Primavera/discurso es 4 y el número de palabras no coincidentes es 0.

2) Ciudad de Changchun/Changchun/El número de palabras coincidentes fonéticamente es 3 y el número de palabras que no coinciden es 0

No es difícil ver que la primera combinación tiene la menor número de palabras que no coinciden, por lo que la combinación es 1.

"Changchun Changchun Pharmacy" puede tener las siguientes combinaciones de palabras coincidentes según el orden de escaneo máximo de coincidencias hacia adelante:

1) El número de palabras coincidentes en Changchun/Changchun/farmacia es 3 y el número de palabras no coincidentes es 0.

2) El número de palabras coincidentes para Changchun/Chundian Pharmacy es 2 y el número de palabras que no coinciden es 1.

3) El número de palabras coincidentes para Changchun/Afrodisíaco es 2, y el número de palabras que no coinciden es 2.

4) El número de palabras coincidentes para Changchun/farmacia es 2 y el número de palabras que no coinciden es 2.

5) El número de palabras coincidentes para Changchun/Mayor/Chuntian Pharmacy es 3 y el número de palabras que no coinciden es 0.

6) El número de palabras coincidentes para Changchun/Mayor/Afrodisíaco es 3, y el número de palabras que no coinciden es 1.

7) El número de palabras coincidentes para Changchun/alcalde/farmacia es 3 y el número de palabras que no coinciden es 1.

8) El número de palabras coincidentes para Changchun/alcalde/farmacia es 3 y el número de palabras que no coinciden es 1.

9) El número de palabras coincidentes en Changchun/Changchun/farmacia es 3 y el número de palabras que no coinciden es 1.

Se puede ver que la combinación 1 y la combinación 5 tienen el menor número de discrepancias y el mismo número de palabras coincidentes, pero la combinación 1 tiene un orden de coincidencia mayor, por lo que se utiliza la combinación 1.

Descarga de código fuente/projects/ktdictseg/? fuente = tipo _redirect