Data Augmentation: mejora modelos de deep learning con datos sintéticos

Diapositivas de Deusto.es sobre Data Augmentation. El Pdf, un material didáctico útil y bien estructurado, aborda la necesidad de datos abundantes para el deep learning, presentando métodos para datos visuales y textuales, con ejemplos de código Python para la universidad en Informática.

Ver más

14 páginas

Data Augmentation
Aitor Almeida
aitor.almeida@deusto.es
1
Los modelos de deep learning necesitan una gran cantidad de
datos para aprender.
Tener mas datos es por norma general algo bueno en ML.
Lamentablemente en algunos casos la capacidad de recogida
de los mismo no ayuda.
2

Visualiza gratis el PDF completo

Regístrate para acceder al documento completo y transformarlo con la IA.

Vista previa

Data Augmentation

Aitor Almeida aitor.almeida@deusto.es

1Los modelos de deep learning necesitan una gran cantidad de datos para aprender. Tener mas datos es por norma general algo bueno en ML. Lamentablemente en algunos casos la capacidad de recogida de los mismo no ayuda.

Modelos de Redes Neuronales

2Large/Deep NN - GPU Focused - CNN, RNN, Tree-LSTM - Attention Networks Dynamic Memory Nets Small-Medium NN Performance - Multilayer Perceptron Conventional ML - Random Forest - Linear Regression - XGBoost Amount Of Data https://towardsdatascience.com/deep-misconceptions-about-deep-learning-f26c41faceec

Solución para la Escasez de Datos

3¿Cómo podemos solucionar esto? Modificando nuestro dataset para generar más datos sintéticos -> Data augmentation

4h1 X 1 h2 15 y h3 X 2 20 25 0 5 10 15 20 25 0 5 10 6 h4 X 3 h5 https://medium.com/nanonets/how-to-use-deep-learning-when-you-have-limited-data-part-2-data-augmentation-c26971dc8ced

Métodos de Aumento de Datos

Flip

5Métodos: Flip · Usar el axis que conserva el significado de la imagen. https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Rotation

6Métodos: Rotation · Usar una pequeña rotación. https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Crop

7Métodos : Crop · Cuidado con que parte de la imagen se borra, o podemos perder información. https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Color Shift

8Métodos : Color shift https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Noise

9Métodos: Noise https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Information Loss

10Métodos: Information loss · Cuidado con no eliminar la información relevante. https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Contrast Change

11Métodos: Contrast change · Útil para simular diferentes tipos de iluminación > Ej. rec. actividades https://stanford.edu/%7Eshervine/teaching/cs-230/cheatsheet-deep-learning-tips-and-tricks

Ejemplo de Implementación

12(x_train, y_train), (x_test, y_test) = cifar10.load_data() y_train = np_utils.to_categorical(y_train, num_classes) y_test = np_utils.to_categorical(y_test, num_classes) datagen = ImageDataGenerator( featurewise_center=True, featurewise_std_normalization=True, rotation_range=20, width_shift_range=0.2, height_shift_range=0.2, horizontal_flip=True) # compute quantities required for featurewise normalization # (std, mean, and principal components if ZCA whitening is applied) datagen.fit(x_train) # fits the model on batches with real-time data augmentation: model.fit_generator(datagen.flow(x_train, y_train, batch_size=32), steps_per_epoch=len(x_train) / 32, epochs=epochs)

Data Augmentation para Texto

13¿Y para el texto? · Limitado por el modelo y la representación. · ¿ Es el orden de las palabras importante ?¿ Son palabras específicas importantes ?... · Word shuffling · Inserción de sinónimos · GANS · Noising · Xie, Z., Wang, S.I., Li, J., Lévy, D., Nie, A., Jurafsky, D. and Ng, A.Y., 2017. Data noising as smoothing in neural network language models. arXiv preprint arXiv:1703.02573.

¿Non has encontrado lo que buscabas?

Explora otros temas en la Algor library o crea directamente tus materiales con la IA.