Ich versuche, eine Funktion zu schreiben, die die Bigramm-Wahrscheinlichkeit berechnet.Erhalten der Bigramm-Wahrscheinlichkeit (Python)
Also muss ich im Grunde das Auftreten von zwei aufeinander folgenden Wörtern (zB ich bin) in einem Korpus berechnen und das durch das erste Wort dieser zwei Wörter teilen.
In der Formel ist:
P (W_n-1, W_n)/P (W_n-1)
Also in meinem Code Ich versuche, wie etwas zu tun:
def prob(self, prevWord, word):
word = word.strip()
prevWord = prevWord.strip()
for sen in corpus:
for word in sen:
if(word occurs after prevWord): #Pseudocode here
counter++
numerator = counter/self.total
prevWordProb = self.counts[prevWord]/self.total
return numerator/prevWordProb
Erstens, ist mein Ansatz gültig? Wenn ja, bin ich mir nicht sicher, wie ich den Teil des Codes codieren soll. Wie wird es aussehen?
Was sind die erwarteten Argumente? In Ihrem Code ist 'corpus' nicht definiert. –