[PYTHON] Memo der kollektiven Wissensprogrammierung verstehen

Überblick

Algorithmen für maschinelles Lernen studieren Wenn ich "Group Knowledge Programming" lese (ISBN-13: 978-4873113647) Ich war mir nicht sicher, was die Formeln im Programm taten Notieren Sie sich, was Sie nachgeschlagen haben.

~~ Es war eine schwere Mathematik, also wenn ich sie leicht gelesen hätte, wäre ich ihr vielleicht nicht gefolgt ... ~~

Nach langer Zeit habe ich wieder Statistik studiert Es kann viele Fehler geben. Ich würde es begrüßen, wenn Sie darauf hinweisen könnten.

Kapitel 6 Dokumentfilterung

6.6.2 Wahrscheinlichkeiten integrieren

――Dieser Abschnitt enthält eine Zusammenfassung der Beurteilung von E-Mail-Spam


Algorithmus ⇒ Der Autor hat auf github veröffentlicht. Ich werde eine Notiz über die Punkte hinterlassen, die persönlich schwer zu verstehen waren ("(1)" und "(2)" und "(3)" unten).

  def fisherprob(self,item,cat):
    p=1
    features=self.getfeatures(item)
    for f in features:
      p*=(self.weightedprob(f,cat,self.cprob))
    
    # (1)・ ・ ・ Was wird fscore berechnet?
    fscore=-2*math.log(p)
    
    return self.invchi2(fscore,len(features)*2)

  # (2)・ ・ ・ Was berechnet invchi2?
  def invchi2(self,chi, df):
    # (3)・ ・ ・ Kann die Umkehrfunktion berechnet werden?
    m = chi / 2.0
    sum = term = math.exp(-m)
    for i in range(1, df//2):
        term *= m / i
        sum += term
    return min(sum, 1.0)

Zugehörige Informationen

――Ist die Fisher-Methode in japanischen Zeitungen als Robinson-Fisher-Methode bezeichnet?

Recommended Posts

Memo der kollektiven Wissensprogrammierung verstehen
Merkmale der Programmiersprache [Memo]
Vollständiges Verständnis der asynchronen Python-Programmierung
Ein grobes Verständnis von Python-Feuer und ein Memo
Vollständiges Verständnis der objektorientierten Programmierung von Python
[Hinweis] Beginn der Programmierung
Rekrutierung von Programmiermeistern
elasticsearch_dsl Memorandum
Intuitives Verständnis von Jensens Ungleichung
Lineare Programmierung + Hands-on von Zellstoff
Qiita Memo meiner Gedanken
[Memo] Bau einer Cygwin-Umgebung
Die Popularität von Programmiersprachen
Erster Monat des Programmierlernens
Vollständiges Verständnis des Python-Debuggens