Estoy tomando el curso de Andrew Ng sobre Machine Learning a través de Coursera . Para las ecuaciones, se utilizan superíndices en lugar de subíndices. Por ejemplo, en la siguiente ecuación se usa lugar de :
Aparentemente, esta es una práctica común. Mi pregunta es ¿por qué usar superíndices en lugar de subíndices? Los superíndices ya se usan para exponenciación. De acuerdo, parece que puedo desambiguar entre los casos de uso de superíndice y exponenciación prestando atención a si hay paréntesis o no, pero aún parece confuso.
machine-learning
notation
entpnerd
fuente
fuente
i
indexando sobre el tamaño del conjunto de datos o sobre los elementos del vectorx
? Si es lo primero, eso es totalmente estándar. Si es lo último, eso es totalmente no estándar. Y la razón por la que se usa el superíndice es porque a veces desea referirse al elemento del vector usando el subíndice.Respuestas:
Si denota un vector x ∈ R m, entonces x i es una notación estándar para la coordenada i -ésima de x , es decir, x = ( x 1 , x 2 , … , x m )x x∈Rm xi i x
Si tiene una colección de tales vectores, ¿cómo denotaría un i -ésimo vector? No puedes escribir x i , esto tiene otro significado estándar. Entonces a veces la gente escriben i xi y es por eso que creo que Andrew Ng lo hace.x(i)
Es decir
fuente
El uso de super scripts como usted ha dicho, creo que es no muy común en la literatura de aprendizaje automático. Tendría que revisar las notas del curso de Ng para confirmar, pero si él está poniendo ese uso allí, diría que sería el origen de la proliferación de esta notación. Esta es una posibilidad. De cualquier manera, para no ser demasiado cruel, pero no creo que muchos de los estudiantes del curso en línea estén publicando literatura sobre aprendizaje automático, por lo que esta notación no es muy común en la literatura real. Después de todo, estos son cursos introductorios de aprendizaje automático, no cursos de nivel de doctorado.
Lo que es muy común con los súper scripts es denotar la iteración de un algoritmo que usa súper scripts. Por ejemplo, podría escribir una iteración del método de Newton como
donde es la arpillera y ∇ θ ( t ) es el gradiente.H(θ(t)) ∇θ(t)
(... sí, esta no es la mejor manera de implementar el método de Newton debido a la inversión de la matriz de Hesse ...)
Aquí, representa el valor de θ en la iteración t t h . Este es el uso más común (pero ciertamente no solo) de super scripts que conozco.θ(t) θ tth
EDITAR: Para aclarar, en la pregunta original, parecía sugerir que en la notación ML, era equivalente a la notación estadística x i . En mi respuesta, afirmo que esto no es realmente frecuente en la literatura de ML. Esto es verdad. Sin embargo, como a cabo en punta por @amoeba, hay un montón de notación superíndice en la literatura ML para los datos, pero en estos casos x ( i ) típicamente no significa que el i t h observación de un único vector x .x(i) xi x(i) ith x
fuente
=
o==
en la mayoría de los lenguajes de programación; introduce una restricción o definición en lugar de una asignación real o verificación de igualdad.)En matemáticas, los superíndices se usan de izquierda a derecha según el campo. La elección es siempre un legado histórico, nada más. Quien primero ingresó al campo estableció la convención de usar subíndices o superíndices.
Dos ejemplos Los superíndices se usan para denotar derivados:F( x )( n )
En el álgebra tensorial, tanto súper como subíndices se usan mucho para lo mismo queRyoyo puede significar yo rows and j columns. It's quite expressive: Tki=RjiCkj
Also I remember using scripts before letters (prescripts) in Physics, e.g.ijBlk . I think it was with tensors.
Hence, the choice of superscripts by Ng is purely historical too. There's no real reason to use or not use them, or prefer them to subscripts. Actually, I believe that here ML people are using tensor notation. They definitely are well versed in the subject, e.g. see this paper.
fuente