Warum werden beim maschinellen Lernen hochgestellte Zeichen anstelle von tiefgestellten Zeichen verwendet?


20

Ich nehme an Andrew Ngs Kurs über maschinelles Lernen durch Coursera teil . Für Gleichungen werden hochgestellte Zeichen anstelle von tiefgestellten Zeichen verwendet. Beispielsweise wird in der folgenden Gleichung anstelle von : x ix(i)xich

J(θ0,θ1)=12mich=1m(hθ(x(ich))-y(ich))2

Anscheinend ist dies gängige Praxis. Meine Frage ist, warum man hochgestellte anstelle von tiefgestellten verwendet. Für die Potenzierung werden bereits hochgestellte Zeichen verwendet. Zugegeben, ich scheine in der Lage zu sein, zwischen hochgestellten und potenzierten Anwendungsfällen zu unterscheiden, indem ich darauf achte, ob Klammern vorhanden sind oder nicht, aber es scheint immer noch verwirrend.


4
Ich vermute, es liegt vielleicht daran, dass einige Informatiker sich nicht mit mathematischer Standardnotation auskennen und sich deshalb ihre eigene Notation ausdenken. Versicherungsmathematiker tun dies manchmal auch und es ist frustrierend, wenn Sie zu komplizierteren Konzepten kommen.
Rocinante

5
Wird iüber die Datensatzgröße oder über die Elemente des Vektors indiziert x? Wenn erstere, ist das völlig normal. Wenn letzteres der Fall ist, ist das absolut nicht Standard. Und der Grund, warum der hochgestellte Index verwendet wird, ist, dass Sie manchmal mit dem Index auf das Element des Vektors verweisen möchten.
Rex Kerr

4
@rocinante lol nein, es liegt daran, dass bereits Indizes für die Indexierung von Vektoren verwendet werden.
Neil G

4
@rocinante Das ist ziemlich anmaßend. Was ist mit kontravarianten Vektoren / Einstein-Notation ?
Will Vousden

4
@rocinante Ich muss andere wiederholen, indem ich unterstreiche, dass Ihre Formulierung unglücklich ist. Wir alle neigen dazu, das Lokale und Vertraute als Standard zu betrachten.
Nick Cox

Antworten:


26

Wenn einen Vektor dann ist eine Standardnotation für die te Koordinate von , dhx R m x i i x x = ( x 1 , x 2 , , x m ) R m .xxRmxichichx

x=(x1,x2,,xm)Rm.

Wenn Sie eine Sammlung von solchen Vektoren haben, wie würden Sie einen ten Vektor bezeichnen? Sie können nicht schreiben , dies hat eine andere Standardbedeutung. Manchmal schreiben die Leute also und deshalb glaube ich, dass Andrew Ng es tut.i x inichxichx(ich)

Dh

x(1)=(x1(1),x2(1),,xm(1))Rmx(2)=(x1(2),x2(2),,xm(2))Rmx(n)=(x1(n),x2(n),,xm(n))Rm.

Ich bin nicht anderer Meinung, aber oft wird verwendet, dh für wiederholte Messungen. xij
Cliff AB

1
Ja, aber entspricht meinem ; Was wäre das Äquivalent von ? x ( i ) j x ( i )xichjxj(ich)x(ich)
Amöbe sagt Reinstate Monica

1
ja das ist ein vorteil Ich denke wird manchmal verwendet, aber dies könnte verwechselt werden mit n j = 1 x i j / m . xi.j=1nxij/m
Cliff AB

1
Wenn Sie über Matrizen iterieren möchten, scheint das der intuitivste Weg zu sein, dies zu tun. Daher bleibt die Notation beim Übergang von Vektoren zu Matrizen konsistent. xmn(ich)
Josh

2
@JAB Ja, um die Notation deutlicher zu machen ("Tipping", wie Sie sagen). Natürlich kann man zustimmen, für den i- ten Vektor und x i j für das j- te Element des i- ten Vektors zu verwenden. Es sind verschiedene Konventionen möglich, dies ist nur eine davon. Ich sage nicht einmal, dass es das beste ist, sondern erkläre nur die Gründe dafür. xichichxichjjich
Amöbe sagt Reinstate Monica

11

Die Verwendung von Super-Skripten ist, wie Sie gesagt haben, in der maschinellen Lernliteratur meines Erachtens nicht sehr verbreitet. Ich müsste Ngs Kursnotizen durchlesen, um zu bestätigen, aber wenn er diese Verwendung dort einsetzt, würde ich sagen, dass er der Ursprung der Verbreitung dieser Notation sein würde. Dies ist eine Möglichkeit. So oder so, um nicht zu unfreundlich zu sein, aber ich glaube nicht, dass viele der Online-Kursteilnehmer Literatur zum maschinellen Lernen veröffentlichen, daher ist diese Notation in der tatsächlichen Literatur nicht sehr verbreitet. Schließlich handelt es sich um Einführungskurse in maschinelles Lernen und nicht um Kurse auf Doktoratsniveau.

Was bei Superskripten sehr häufig vorkommt, ist, die Iteration eines Algorithmus unter Verwendung von Superskripten zu bezeichnen. Sie können beispielsweise eine Iteration der Newtonschen Methode schreiben als

θ(t+1)=θ(t)-H(θ(t))-1θ(t)

wobei der Hessische Wert und θ ( t ) der Gradient ist.H(θ(t))θ(t)

(... ja, dies ist aufgrund der Inversion der hessischen Matrix nicht ganz der beste Weg, Newtons Methode zu implementieren ...)

Hier repräsentiert den Wert von θ in der t t h Iteration. Dies ist die häufigste (aber sicherlich nicht die einzige) Verwendung von Super-Skripten, die mir bekannt sind.θ(t)θtth

x(ich)xichx(ich)ichthx


1
Der Konflikt mit der Verwendung von Hochgestellten in Klammern / Klammern für Iterationszählungen (eine Notation, die in einer Vielzahl von Bereichen gebräuchlich ist) ist eine wirklich wichtige Sache, die angesprochen werden muss.
Glen_b -Reinstate Monica

2
Es wird auch häufig verwendet, um den Index der Stichprobe im Trainingssatz anzugeben. Dies entspricht der Iteration, ist jedoch nicht genau derselbe, da Sie in der Regel Ihr Trainingssatz mehrmals durchlaufen.
Rex Kerr

3
Ich habe auch Iterationszählungen gesehen, die unter Verwendung von Indizes ( ) sowie in der Zeile ( a ( n + 1 ) = a ( n ) + 1 ) aufgezeichnet wurden. Wenn ich eine bestimmte Notation verwende, setze ich normalerweise etwas an den Anfang, um zu disambiguieren (z. B. "in der folgenden Reihe bla bla bla" und dann die Mathematik). Unabhängig von der verwendeten Notation können die Leser (hoffentlich) die Bedeutung für potenziell mehrdeutige Fälle erkennen, anstatt anhand der ihnen bekannten Konventionen raten zu müssen. einn+1=einn+1ein(n+1)=ein(n)+1
JAB

1
(x>0)ich(x>0)

ich(x>0)x>0====

4

Für die Potenzierung werden bereits hochgestellte Zeichen verwendet.

In der Mathematik werden hochgestellte Zeichen je nach Fach links und rechts verwendet. Die Wahl ist immer historisches Erbe, nicht mehr. Wer zuerst ins Feld kam, setzte die Konvention der Verwendung von Unter- oder Hochbuchstaben.

f(x)(n)

RichichichjTichk=RichjCjk

jichBkl

Daher ist die Wahl der Hochschriften durch Ng auch rein historisch. Es gibt keinen wirklichen Grund, sie zu verwenden oder nicht zu verwenden, oder sie Subskriptionen vorzuziehen. Eigentlich glaube ich, dass hier ML-Leute Tensornotation verwenden. Sie sind auf jeden Fall gut mit dem Thema vertraut, siehe z . B. dieses Papier.


1
Ein weiteres Beispiel für Ihren Punkt: Einstein-Notation
Neil G
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.