1. Inspeccione el fichero "small_train38_mnist.csv" que contiene imágenes de los dígitos 8 y 3. Las imágenes son de 28x28 pixels, en un vector de 785 columnas (784 para los pixels y una para la clase con valor 0, si el dígito es un 8, y con valor 1, si el dígito es un 3)
a. Abra el fichero con un editor de texto e inspeccione las columnas y valores
b. Abra octave y teclee
d = load("small_train38_mnist.csv" );
imshow (reshape( d(347,1:784),28,28)'); # para ver la imagen número 347
imshow (reshape( d(379,1:784),28,28)'); # para ver la imagen número 379
2. Cargue el fichero en BIGS
bigs load.files trainfile small_train38_mnist.csv
bigs pipeline.load train_reader.pipeline.properties
bigs pipeline.prepare XXX (XXX es el número de pipeline asignado por el comando anterior)
bigs worker
[CNTRL-C] cuando el worker haya acabado
3. Edite el pipeline definido en el fichero boot-log-regression.pipeline.properties. Asegúrese que numberOfIterations=2, y anote el valor del parámetro Bootstrapping.percentageForTraining
bigs pipeline.load boot-log-regression.pipeline.properties
bigs pipeline.prepare XXX
bigs worker
[CNTRL-C] cuando el worker haya acabado
bigs validation.summary XXX
** anote el valor obtenido para accuracy en training y en validation
4. Repita el paso anterior cambiando el valor de percentageForTraining a 0.01, 0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8 y dibuje la curva de aprendizaje obtenida
5. ¿Qué puede decir del bias (sesgo) y la varianza? ¿Cree que podría aumentar la precisión (accuracy) con un dataset más grande? ¿o usando otra técnica de apredizaje más compleja?