Natürliche Spracherkennung für Go.
Installation:
go get -u github.com/abadojack/whatlanggoEinfaches Nutzungsbeispiel:
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 ])
}Weitere Informationen finden Sie in der Dokumentation.
Gehen Sie 1,8 oder höher
Der Algorithmus basiert auf den Trigrammsprachmodellen, die ein besonderer Fall von N-Gramm sind. Um die Idee zu verstehen, überprüfen Sie bitte die ursprüngliche Whitepaper Cavnar und Trenkle '94: N-Gram-basierte Textkategorisierung '.
Es basiert auf den folgenden Faktoren:
rate .Daher kann es als 2D -Raum mit Schwellenwertfunktionen dargestellt werden, die ihn in "zuverlässige" und "nicht zuverlässige" Bereiche aufteilt. Diese Funktion ist eine Hyperbel und sie sieht aus wie die folgende:
Weitere Informationen finden Sie in einem Blog -Artikel zur Einführung in die Rost Whatlang -Bibliothek und die Algorithmen für natürliche Sprache.
MIT
Whatlanggo ist ein Derivat von Franc (JavaScript, MIT) von Titus Wormer.
Vielen Dank an Greyblake (Potapov Sergey) für die Erstellung von Whathlang-Rs, von wo aus ich die Idee und Algorithmen bekam.