Detección del lenguaje natural para Go.
Instalación:
go get -u github.com/abadojack/whatlanggoEjemplo de uso simple:
package main
import (
"fmt"
"github.com/abadojack/whatlanggo"
)
func main () {
info := whatlanggo . Detect ( "Foje funkcias kaj foje ne funkcias" )
fmt . Println ( "Language:" , info . Lang . String (), " Script:" , whatlanggo . Scripts [ info . Script ], " Confidence: " , info . Confidence )
} package main
import (
"fmt"
"github.com/abadojack/whatlanggo"
)
func main () {
//Blacklist
options := whatlanggo. Options {
Blacklist : map [whatlanggo. Lang ] bool {
whatlanggo . Ydd : true ,
},
}
info := whatlanggo . DetectWithOptions ( "האקדמיה ללשון העברית" , options )
fmt . Println ( "Language:" , info . Lang . String (), "Script:" , whatlanggo . Scripts [ info . Script ])
//Whitelist
options1 := whatlanggo. Options {
Whitelist : map [whatlanggo. Lang ] bool {
whatlanggo . Epo : true ,
whatlanggo . Ukr : true ,
},
}
info = whatlanggo . DetectWithOptions ( "Mi ne scias" , options1 )
fmt . Println ( "Language:" , info . Lang . String (), " Script:" , whatlanggo . Scripts [ info . Script ])
}Para obtener más detalles, consulte la documentación.
Vaya 1.8 o más
El algoritmo se basa en los modelos de lenguaje Trigram, que es un caso particular de N-Grams. Para comprender la idea, consulte el documento técnico original Cavnar y Trenkle '94: categorización de texto basada en N-Gram '.
Se basa en los siguientes factores:
rate en la base de código.Por lo tanto, puede presentarse como espacio 2D con funciones umbral, que lo divide en áreas "confiables" y "no confiables". Esta función es una hipérbola y parece la siguiente:
Para obtener más detalles, consulte un artículo de blog Introducción a la biblioteca de Rust Watlang y los algoritmos de identificación de lenguaje natural.
MIT
Whatlanggo es un derivado de Franc (JavaScript, MIT) de Titus Wormer.
Gracias a Greyblake (Potapov Sergey) por crear WATLANG-RS desde donde obtuve la idea y los algoritmos.