Ich habe ein Unigramm-Sprachmodell für eine Satzvervollständigungsimplementierung erstellt. Ich habe alle Wörter mit ihrer Vorkommenszahl.Wie hoch ist die Wahrscheinlichkeit in einem Unigramm-Sprachmodell zu berechnen?
Ich bin verwirrt, wie man sie von hier vergleicht. Ich würde denken, dass ich die Wahrscheinlichkeit jedes Falles berechnen muss und den größten nehmen muss.
Also, wenn ich 3 Wörter habe, die verwendet werden können, vergleiche ich die Anzahl der Vorkommen jedes Wortes und nehme die höchste? Ist das die richtige Umsetzung?
Oder teile ich die Anzahl der Vorkommen jedes Wortes mit der Anzahl aller (verschiedenen?) Wörter des Trainingssatzes?
Vielen Dank.
Danke. Hier ist, was ich getan habe, um die Wahrscheinlichkeit jedes Wortes zu berechnen. float (nbocurrences_mot)/float (word_count)) Danach habe ich das Wort mit der größten Wahrscheinlichkeit in meinem Satz verwenden. Da es ein Unigramm-Modell ist, sind mir andere Wörter in diesem Satz egal, ich muss nur den richtigen zwischen den Wörtern wählen, die ich habe. – user3450862
Ich habe eine Frage über das Bigramm (und 3-Gramm) -Modell, berechne ich den gleichen float (nbocurrences_bigram)/float (nbtotal_bigrams)? Oder ich habe irgendwo gelesen, dass es P (ab) = P (a) * P (b) = nb (a)/nb (word_count) * nb (b)/nb (word_count? Oder auch P (wi | w (i-) 1)) = c (wi-1, wi)/c (wi-1), also in meinem Fall P (a | b) = nbocurrences_bigram_ba/nbocurrences (b) – user3450862
Nun, Sie können nur die 'richtige' (schlecht , Ich kann hinzufügen, mit einem Unigramm-Modell, wie Sie keine Kontextinformationen verwenden.) Aber wieder, Sie werden immer das gleiche Wort ("das" für ein großes Englisch Corpus) wählen, wenn Sie die mit dem höchsten Prob wählen. – schwobaseggl