24 votos

¿Cómo calcular el número de características en función de la resolución de la imagen?

Acabamos de tratar la hipótesis no lineal de las redes neuronales de Andrew Ng, y teníamos una pregunta de opción múltiple para determinar número de características para una imagen de resolución 100x100 de grescale intensidades.

Y la respuesta fue 50 millones, $5$ x $10^7$

Sin embargo, antes, para una imagen de 50 x 50 píxeles en escala de grises, el número de características es de 50x50 (2500)

¿Por qué sería $5$ x $10^7$ en lugar de $10,000$ ?

Sin embargo, dice que incluir todos los términos cuadráticos ( $x_ix_j$ ) como características

Supongamos que está aprendiendo a reconocer coches a partir de imágenes de 100×100 píxeles (escala de grises, no RGB). Las características son los valores de intensidad de los píxeles. Si se entrena la regresión logística incluyendo todos los términos cuadráticos ( $x_ix_j$ ) como características, ¿cuántas características tendrá?

y en la diapositiva anterior sobre el 100x100, que las características cuadráticas ( $x_i$ x $x_j$ ) = 3 millones de características, pero todavía no puedo dar con la conexión.

1 votos

Si tienes imágenes de 100*100 píxeles eso significa, 100*100 = 10000 características y la fórmula es ((n características) cuadrado)/2 es decir, n=10000, ((n características) cuadrado)/2 => (10000 * 10000)/2 => 100000000/2 => 50000000

19voto

Blaarkies Puntos 1

Quizá un caso más sencillo aclare las cosas. Digamos que elegimos una muestra de píxeles de 1x2 en lugar de 100x100.

Píxeles de muestra de la imagen

+----+----+
| x1 | x2 |
+----+----+

Imaginemos que al trazar nuestro conjunto de entrenamiento, nos dimos cuenta de que no se puede separar fácilmente con un modelo lineal, así que optamos por añadir términos polinómicos para ajustarnos mejor a los datos.

Digamos que decidimos construir nuestros polinomios incluyendo todas las intensidades de los píxeles, y todos los posibles múltiplos que se pueden formar a partir de ellas.

Como nuestra matriz es pequeña, vamos a enumerarlas:

$$x_1,\ x_2,\ x_1^2,\ x_2^2,\ x_1 \times x_2,\ x_2 \times x_1 $$

Interpretando la anterior secuencia de características podemos ver que existe un patrón. Los dos primeros términos, el grupo 1, son características que consisten únicamente en la intensidad de sus píxeles. Los dos siguientes términos, grupo 2, son características que consisten en el cuadrado de su intensidad. Los dos últimos términos, el grupo 3, son el producto de todas las combinaciones de las intensidades de los dos píxeles.

grupo 1: $x_1,\ x_2$

grupo 2: $x_1^2,\ x_2^2$

grupo 3: $x_1 \times x_2,\ x_2 \times x_1$

Pero espera, hay un problema. Si miras los términos del grupo 3 en la secuencia ( $ x_1 \times x_2$ y $x_2 \times x_1$ ) te darás cuenta de que son iguales. Recuerda nuestro ejemplo de la vivienda. Imagina que tienes dos características x1 = metros cuadrados, y x2 = metros cuadrados, para la misma casa... ¡No tiene ningún sentido! Ok, entonces tenemos que deshacernos de la característica duplicada, digamos que arbitrariamente $x_2 \times x_1$ . Ahora podemos reescribir la lista de características del grupo tres como:

grupo 3: $x_1 \times x_2$

Contamos las características de los tres grupos y obtenemos 5.

Pero este es un ejemplo de juguete. Vamos a derivar una fórmula genérica para calcular el número de características. Utilicemos nuestros grupos originales de características como punto de partida.

$size group 1 + size group 2 + size group 3 = m \times n + m \times n +m \times n = 3 \times m \times n$

¡Ah! Pero tuvimos que deshacernos del producto duplicado en el grupo 3.

Así que para contar adecuadamente las características del grupo 3 necesitaremos una forma de contar todos los productos únicos por pares en la matriz. Lo que se puede hacer con el coeficiente binomial, que es un método para contar todos los posibles subgrupos únicos de tamaño k de un grupo igual o mayor de tamaño n. Así que para contar adecuadamente las características del grupo 3 calcular $C(m \times n, 2)$ .

Así que nuestra fórmula genérica sería:

$$ m \times n + m \times n +C(m \times n, 2) = 2m \times n + C(m \times n, 2) $$

Utilicémoslo para calcular el número de características en nuestro ejemplo de juguete:

$$2 \times 1 \times 2 + C(1 \times 2, 2) = 4 + 1 = 5$$

¡Eso es!

2 votos

Ojalá se hubiera dado esta explicación en la conferencia.

0 votos

Me pregunto cómo se supone que debemos saber esto en el curso sin que se nos explique

0 votos

@MohammedNoureldin los coeficientes binomiales están pensados en el nivel de bachillerato/secundaria.

6voto

lennon310 Puntos 1882

Si se utilizan todas las características lineales y cuadráticas, se supone que el número total es:

100*100 + 100*100 + C(100*100,2) = 50015000
10000   + 10000   + 49995000     = 50015000
xi         xi^2       xixj

A calcular la combinación en Octave/Matlab ,

octave:23> nchoosek(100*100,2)
ans =  49995000

1 votos

¿Puedes explicarlo un poco más? ¿Estás diciendo xi + xi^2 + xixi? ¿es xi = 100, y xj = 100? ¿por qué xi y xi^2 son ambos 100*100? ¿Qué es C(100*100,2)?

4 votos

(1) hay un total de 100*100 píxeles, si se utiliza la intensidad como característica, habrá 100*100 características en total, esto es xi; y (ii) también se puede utilizar la densidad de potencia como característica, esto es (xi,xi) o xi.^2, todavía 100*100 en total; finalmente (iii) si se utilizan las correlaciones entre dos píxeles, habrá C pares de píxeles en total, esto es (xi,xj), C es la combinación en matemáticas ( mathworld.wolfram.com/Combinación.html )

0 votos

Gracias, una última pregunta es ¿por qué xi = xi^2 en este contexto?

0voto

La idea de ( $x^2$ )/2 también podría funcionar para obtener las características cuadráticas. Así, si n = 2500, entonces sabemos que x(i) = 2500 y sustituyendo x en la fórmula obtendremos 50 millones

3 votos

Obtengo $2500^2/2 \approx 3 $ millones, no $50$ millones de dólares.

0 votos

@whuber 50 millones viene cuando tienes una imagen de 100*100 píxeles. donde cuadrado(100*100) = 100000000 (10 millones) y cuadrado(100*100)/2 = 5 millones. Espero que esto responda.

0 votos

@Tahir Cierto. Entonces, ¿qué hace el valor de "2500" en esta respuesta?

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X