Contenido principal

Redes neuronales profundas preentrenadas

Se puede utilizar una red neuronal de clasificación de imágenes preentrenada que ya haya aprendido a extraer características potentes e informativas a partir de imágenes naturales y utilizarla como punto de partida para aprender una tarea nueva. La mayoría de las redes neuronales preentrenadas se entrenan con un subconjunto de la base de datos ImageNet [1], que se utiliza en el ImageNet Large-Scale Visual Recognition Challenge (ILSVRC) [17]. Estas redes neuronales se han entrenado con más de un millón de imágenes y pueden clasificarlas en 1000 categorías de objetos (por ejemplo, teclado, taza de café, lápiz y muchos animales). Utilizar una red neuronal preentrenada con transferencia del aprendizaje suele ser mucho más rápido y fácil que entrenar una red neuronal desde cero.

Puede usar redes neuronales entrenadas previamente para las tareas siguientes:

FinalidadDescripción
Clasificación

Aplicar redes neuronales preentrenadas directamente a problemas de clasificación. Para clasificar una nueva imagen, utilice minibatchpredict. Para convertir las puntuaciones de clasificación predichas en etiquetas, utilice la función scores2label. Para ver un ejemplo de cómo utilizar una red neuronal preentrenada para clasificación, consulte Clasificar una imagen con GoogLeNet.

Extracción de características

Utilizar una red preentrenada neuronal como un extractor de características utilizando las activaciones de las capas como características. Puede utilizar estas activaciones como características para entrenar otro modelo de machine learning, como una máquina de vectores de soporte (SVM). Para obtener más información, consulte Extracción de características. Para ver un ejemplo, consulte Extraer características de imágenes con una red preentrenada.

Transferencia del aprendizaje

Utilizar capas de una red neuronal entrenada con un conjunto de datos grande y ajustarla con un nuevo conjunto de datos. Para obtener más información, consulte Transferencia del aprendizaje. Para ver un ejemplo sencillo, consulte Introducción a la transferencia del aprendizaje. Para probar más redes neuronales preentrenadas, consulte Volver a entrenar redes neuronales para clasificar nuevas imágenes.

Comparar redes neuronales preentrenadas

Las redes neuronales preentrenadas tienen diferentes características que son importantes cuando se elige una red neuronal para aplicarla a un problema. Las características más importantes son la precisión, la velocidad y el tamaño de la red neuronal. Elegir una red neuronal es, por lo general, un tradeoff entre estas características. Utilice la siguiente gráfica para comparar la precisión de validación de ImageNet con el tiempo necesario para hacer una predicción mediante la red neuronal.

Sugerencia

Para comenzar con la transferencia del aprendizaje, pruebe a seleccionar una de las redes neuronales más rápidas, como SqueezeNet o GoogLeNet. A continuación, puede iterar rápidamente y probar diferentes configuraciones, como los pasos de preprocesamiento de datos y las opciones de entrenamiento. Una vez que se haya hecho una idea de cuál es la mejor configuración, pruebe una red neuronal más precisa, como Inception-v3 o ResNet, y compruebe si los resultados han mejorado.

Comparison of the accuracy and relative prediction time of the pretrained neural networks. As the accuracy of the pretrained neural networks increases, so does the relative prediction time.

Nota

La gráfica anterior solo muestra una indicación de las velocidades relativas de las distintas redes neuronales. Los tiempos exactos de predicción e iteración de entrenamiento dependen del hardware y del tamaño de minilote que utilice.

Una red neuronal buena tiene una precisión alta y es rápida. La gráfica muestra la precisión de clasificación frente al tiempo de predicción cuando se utiliza una GPU moderna (una Tesla® P100 de NVIDIA®) y un tamaño de minilote de 128. El tiempo de predicción se mide en relación con la red neuronal más rápida. El área de cada marcador es proporcional al tamaño de la red neuronal en el disco.

La precisión de clasificación en el conjunto de validación de ImageNet es la forma más habitual de medir la precisión de redes neuronales entrenadas con ImageNet. Las redes neuronales que son precisas en ImageNet también son precisas a menudo cuando se aplican a otros conjuntos de datos de imágenes naturales mediante la transferencia del aprendizaje o la extracción de características. Esta generalización es posible porque las redes neuronales han aprendido a extraer características potentes e informativas a partir de imágenes naturales que se generalizan en otros conjuntos de datos similares. No obstante, la alta precisión de ImageNet no siempre se transfiere directamente a otras tareas, por lo que es recomendable probar varias redes neuronales.

Si desea realizar una predicción utilizando un hardware restringido o con redes neuronales distribuidas en Internet, considere también el tamaño de la red neuronal en el disco y en la memoria.

Precisión de la red neuronal

Existen varias maneras para calcular la precisión de clasificación en el conjunto de validación de ImageNet. Además, hay distintas fuentes que utilizan distintos métodos. En unas ocasiones se utiliza un ensemble de varios modelos y, en otras, cada imagen se evalúa varias veces mediante varios recortes. En ocasiones, se tienen en cuenta las cinco precisiones principales en lugar de la precisión estándar (la principal). Debido a estas diferencias, a menudo no se pueden comparar directamente las precisiones procedentes de diferentes fuentes. Las precisiones de las redes neuronales preentrenadas en Deep Learning Toolbox™ son precisiones estándar (top-1) utilizando un solo modelo y un solo recorte de imagen central.

Cargar redes neuronales preentrenadas

Para cargar la red neuronal SqueezeNet, utilice la función imagePretrainedNetwork.

[net,classNames] = imagePretrainedNetwork;

Para otras redes neuronales, especifique el modelo usando el primer argumento de la función imagePretrainedNetwork. Si no tiene el paquete de soporte requerido para la red, la función proporciona un enlace para descargarlo. Como alternativa, puede descargar las redes neuronales preentrenadas desde el Add-On Explorer.

Esta tabla enumera las redes neuronales preentrenadas entrenadas en ImageNet y algunas de sus propiedades. La profundidad de la red neuronal se define como el mayor número de capas convolucionales secuenciales o totalmente conectadas en una ruta desde la entrada hasta la salida de la red. Las entradas para todas las redes neuronales son imágenes RGB.

Argumento del nombre de modelo de imagePretrainedNetworkNombre de la red neuronalProfundidadMemoria de parámetrosParámetros (millones)Tamaño de entrada de imagenIntervalo de valores de entradaNormalización de capas de entradaPaquete de soporte requerido
"squeezenet"SqueezeNet [2] 18

4,7 MB

1.24

227 por 227

[0, 255]"zerocenter"Ninguno
"googlenet"GoogLeNet [3][4]22

27 MB

7.0

224 por 224

[0, 255]"zerocenter"

Deep Learning Toolbox Model for GoogLeNet Network

"googlenet-places365"[0, 255]"zerocenter"
"inceptionv3"Inception-v3 [5]48

91 MB

23.9

299 por 299

[0, 255]"rescale-symmetric"Deep Learning Toolbox Model for Inception-v3 Network
"densenet201"DenseNet-201 [6] 201

77 MB

20.0

224 por 224

[0, 255]"zscore"Deep Learning Toolbox Model for DenseNet-201 Network
"mobilenetv2"MobileNet-v2 [7]53

14 MB

3.5

224 por 224

[0, 255]"zscore"Deep Learning Toolbox Model for MobileNet-v2 Network
"resnet18"ResNet-18 [8]18

45 MB

11.7

224 por 224

[0, 255]"zscore"Deep Learning Toolbox Model for ResNet-18 Network
"resnet50"ResNet-50 [8]50

98 MB

25.6

224 por 224

[0, 255]"zscore"Deep Learning Toolbox Model for ResNet-50 Network
"resnet101"ResNet-101 [8]101

171 MB

44.6

224 por 224

[0, 255]"zerocenter"Deep Learning Toolbox Model for ResNet-101 Network
"xception"Xception [9]71

88 MB

22.9299 por 299[0, 255]"rescale-symmetric"Deep Learning Toolbox Model for Xception Network
"inceptionresnetv2"Inception-ResNet-v2 [10] 164

213 MB

55.9

299 por 299

[0, 255]"rescale-symmetric"Deep Learning Toolbox Model for Inception-ResNet-v2 Network
"shufflenet"ShuffleNet [11]505,5 MB1.4224 por 224[0, 255]"zscore"Deep Learning Toolbox Model for ShuffleNet Network
"nasnetmobile"NASNet-Mobile [12]*20 MB 5.3224 por 224[0, 255]"rescale-symmetric"Deep Learning Toolbox Model for NASNet-Mobile Network
"nasnetlarge"NASNet-Large [12]*340 MB88.9331 por 331[0, 255]"rescale-symmetric"Deep Learning Toolbox Model for NASNet-Large Network
"darknet19"DarkNet-19 [13]1980 MB20.8256 por 256[0, 255]"rescale-zero-one"Deep Learning Toolbox Model for DarkNet-19 Network
"darknet53"DarkNet-53 [13]53159 MB41.6256 por 256[0, 255]"rescale-zero-one"Deep Learning Toolbox Model for DarkNet-53 Network
"efficientnetb0"EfficientNet-b0 [14]8220 MB5.3

224 por 224

[0, 255]"zscore"Deep Learning Toolbox Model for EfficientNet-b0 Network
"alexnet"AlexNet [15]8

233 MB

61.0

227 por 227

[0, 255]"zerocenter"Deep Learning Toolbox Model for AlexNet Network
"vgg16"VGG-16 [16]16

528 MB

138

224 por 224

[0, 255]"zerocenter"Deep Learning Toolbox Model for VGG-16 Network
"vgg19"VGG-19 [16]19

548 MB

144

224 por 224

[0, 255]"zerocenter"Deep Learning Toolbox Model for VGG-19 Network

* Las redes neuronales NASNet-Mobile y NASNet-Large no están formadas por una secuencia lineal de módulos.

GoogLeNet entrenada en Places365

La red neuronal estándar GoogLeNet se entrena con el conjunto de datos de ImageNet, pero también puede cargar una red neuronal entrenada con un conjunto de datos de Places365 [18] [4]. La red neuronal entrenada con Places365 clasifica imágenes en 365 categorías de ubicaciones diferentes (por ejemplo, campo, parque, pista de aterrizaje y recibidor). Para cargar una red neuronal GoogLeNet preentrenada entrenada con el conjunto de datos de Places365, utilice imagePretrainedNetwork("googlenet-places365"). Cuando realiza la transferencia del aprendizaje para una nueva tarea, el enfoque más habitual consiste en utilizar redes neuronales preentrenadas con ImageNet. Si la nueva tarea es similar a clasificar escenas, puede obtener precisiones más altas usando la red neuronal entrenada con Places365.

Para obtener información sobre redes neuronales preentrenadas adecuadas para tareas de audio, consulte Redes neuronales preentrenadas para aplicaciones de audio.

Visualizar redes neuronales preentrenadas

Puede descargar y visualizar redes neuronales preentrenadas con Deep Network Designer.

[net,classNames] = imagePretrainedNetwork;
deepNetworkDesigner(net)

Deep Network Designer displaying a pretrained SqueezeNet neural network

Para ver las propiedades de una capa y editarlas, seleccione una capa. Haga clic en el icono de ayuda situado junto al nombre de la capa para obtener información sobre las propiedades de la capa.

Cross channel normalization layer selected in Deep Network Designer. The PROPERTIES pane shows the properties of the layer.

Para examinar otras redes neuronales preentrenadas en Deep Network Designer, haga clic en New.

Deep Network Designer start page showing available pretrained neural networks

Si necesita descargar una red neuronal, deténgase en la red neuronal deseada y haga clic en Install para abrir Add-On Explorer.

Extracción de características

La extracción de características es una forma fácil y rápida de utilizar la potencia de deep learning sin invertir tiempo y esfuerzo en entrenar una red neuronal completa. Como solo requiere una única pasada por las imágenes de entrenamiento, resulta especialmente útil si no tiene una GPU. Se extraen las características de las imágenes aprendidas mediante una red neuronal preentrenada y, a continuación, se utilizan esas características para entrenar un clasificador, como una máquina de vectores de soporte mediante fitcsvm (Statistics and Machine Learning Toolbox).

Pruebe la extracción de características cuando el nuevo conjunto de datos sea muy pequeño. Dado que solo se entrena un clasificador sencillo con las características extraídas, el entrenamiento es rápido. También es improbable que ajustar capas más profundas de la red neuronal mejore la precisión, ya que hay pocos datos de los que aprender.

  • Si los datos son muy similares a los datos originales, puede que las características más específicas extraídas de las capas más profundas de la red neuronal resulten útiles para la nueva tarea.

  • Si los datos son muy diferentes a los datos originales, puede que las características extraídas de las capas más profundas de la red neuronal resulten menos útiles para la tarea. Pruebe a entrenar el clasificador final con características más generales extraídas de una capa de red neuronal anterior. Si el nuevo conjunto de datos es grande, también puede probar a entrenar una red neuronal desde cero.

Las redes neuronales ResNet suelen ser buenas extractoras de características. Para ver un ejemplo de cómo utilizar una red preentrenada neuronal para la extracción de características, consulte Extraer características de imágenes con una red preentrenada.

Transferencia del aprendizaje

Puede ajustar capas más profundas en la red neuronal entrenando la red neuronal con el nuevo conjunto de datos tomando como punto de partida la red neuronal preentrenada. Ajustar una red neuronal con la transferencia del aprendizaje suele ser un proceso más rápido y sencillo que crear y entrenar una red neuronal nueva. La red neuronal ya ha aprendido un conjunto rico de características de imagen, pero cuando ajuste la red neuronal, esta puede aprender características específicas para el nuevo conjunto de datos. Si tiene un conjunto de datos muy grande, puede que la transferencia del aprendizaje no sea más rápida que un entrenamiento desde cero.

Sugerencia

Ajustar una red neuronal suele proporcionar la precisión más alta. Para conjuntos de datos muy pequeños (menos de unas 20 imágenes por clase), pruebe la extracción de características en su lugar.

Ajustar una red neuronal es un proceso más lento y requiere más esfuerzo que una simple extracción de características, pero dado que la red neuronal puede aprender a extraer un conjunto de características diferente, la red neuronal final suele ser más precisa. El ajuste funciona normalmente mejor que la extracción de datos siempre y cuando el nuevo conjunto de datos no sea muy pequeño, porque entonces la red neuronal tiene datos de los que aprender nuevas características. Para ver ejemplos de cómo realizar la transferencia del aprendizaje, consulte Preparar una red para la transferencia del aprendizaje mediante Deep Network Designer y Volver a entrenar redes neuronales para clasificar nuevas imágenes.

Transfer learning workflow

Importar y exportar redes neuronales

Puede importar redes neuronales de TensorFlow™ 2, TensorFlow-Keras, PyTorch® y del formato de modelos ONNX™ (Open Neural Network Exchange). También puede exportar redes neuronales de Deep Learning Toolbox al formato de modelos TensorFlow 2 y ONNX.

Sugerencia

Puede importar modelos desde plataformas externas con la app Deep Network Designer. Tras la importación, la app muestra un informe que incluye detalles sobre los problemas que requieren atención.

Importar funciones

Plataforma de deep learning externa y formato de modelosImportar modelo como dlnetwork
Red neuronal TensorFlow o red neuronal TensorFlow-Keras en formato SavedModelDeep Network Designer o importNetworkFromTensorFlow
Modelo PyTorch rastreado en un archivo .ptDeep Network Designer o importNetworkFromPyTorch
Red neuronal en formato de modelo ONNXimportNetworkFromONNX

Cuando importe una red, el software genera automáticamente capas personalizadas cuando se importa un modelo con capas de TensorFlow, capas de PyTorch u operadores de ONNX que el software no puede convertir en capas de MATLAB® integradas. El software guarda las capas personalizadas generadas de forma automática en un paquete en la carpeta actual. Para obtener más información, consulte Autogenerated Custom Layers.

Exportar funciones

Plataforma de deep learning externa y formato de modelosExportar red neuronal o gráfica de capas
Modelo TensorFlow 2 en paquete de Python®exportNetworkToTensorFlow
Formato de modelo ONNXexportONNXNetwork

La función exportNetworkToTensorFlow guarda una red neuronal de Deep Learning Toolbox como un modelo TensorFlow en un paquete de Python. Para obtener más información sobre cómo cargar el modelo exportado y guardarlo en formato SavedModel, consulte Load Exported TensorFlow Model y Save TensorFlow Model.

Utilizando ONNX como un formato intermedio, puede interoperar con otros marcos de trabajo de deep learning que sean compatibles con las exportaciones o las importaciones de modelos ONNX.

Import neural networks from and export neural networks to external deep learning platforms.

Redes neuronales preentrenadas para aplicaciones de audio

Audio Toolbox™ proporciona compatibilidad con MATLAB y Simulink® para redes de deep learning preentrenadas de audio. Utilice redes preentrenadas para clasificar sonidos con YAMNet, estimar el tono con CREPE, extraer incrustaciones de características con VGGish u OpenL3 y realizar detección de actividad de voz (VAD) con VADNet. También puede importar y visualizar redes neuronales preentrenadas de audio con Deep Network Designer.

Utilice la función audioPretrainedNetwork (Audio Toolbox) para cargar una red de audio preentrenada. También puede utilizar una de las funciones de extremo a extremo que manejan el preprocesamiento del audio, la inferencia de red y el posprocesamiento de la salida de la red. En la siguiente tabla se enumeran las redes neuronales preentrenadas de audio disponibles.

Argumento del nombre de modelo de audioPretrainedNetworkNombre de la red neuronalFunciones de preprocesamiento y postprocesamientoFunción de extremo a extremoBloques de Simulink
"yamnet"YAMNetyamnetPreprocess (Audio Toolbox)classifySound (Audio Toolbox)YAMNet (Audio Toolbox), Sound Classifier (Audio Toolbox)
"vggish"VGGishvggishPreprocess (Audio Toolbox)vggishEmbeddings (Audio Toolbox)VGGish (Audio Toolbox), VGGish Embeddings (Audio Toolbox)
"openl3"OpenL3openl3Preprocess (Audio Toolbox)openl3Embeddings (Audio Toolbox)OpenL3 (Audio Toolbox), OpenL3 Embeddings (Audio Toolbox)
"crepe"CREPEcrepePreprocess (Audio Toolbox), crepePostprocess (Audio Toolbox)pitchnn (Audio Toolbox)CREPE (Audio Toolbox), Deep Pitch Estimator (Audio Toolbox)
"vadnet"VADNetvadnetPreprocess (Audio Toolbox), vadnetPostprocess (Audio Toolbox)detectspeechnn (Audio Toolbox)Ninguno

Para ver ejemplos de cómo adaptar redes neuronales de audio preentrenadas a una nueva tarea, consulte Transfer Learning with Pretrained Audio Networks (Audio Toolbox) y Adapt Pretrained Audio Network for New Data Using Deep Network Designer.

Para obtener más información sobre el uso de deep learning para aplicaciones de audio, consulte Deep Learning for Audio Applications (Audio Toolbox).

Redes neuronales preentrenadas para aplicaciones de visión artificial

Computer Vision Toolbox™ es compatible con MATLAB para redes de deep learning preentrenadas para la detección de objetos. Utilice las redes preentrenadas para realizar inferencias directamente en una imagen de prueba o la transferencia de aprendizaje en un conjunto de datos personalizado. También puede importar y visualizar redes neuronales preentrenadas para la detección de objetos con la app Deep Network Designer.

Para usar una red de detección de objetos preentrenada, descargue e instale el paquete de soporte requerido. Puede descargar e instalar un paquete de soporte de modelos preentrenados utilizando Add-On Explorer. Para obtener más información sobre la instalación de complementos, consulte Obtener y administrar complementos.

Utilice un modelo de detección de objetos, como yoloxObjectDetector (Computer Vision Toolbox), para especificar la red preentrenada correspondiente que usar para de detección de objetos. Para seleccionar un modelo de detección de objetos, consulte Choose an Object Detector (Computer Vision Toolbox). Para obtener más información sobre la detección de objetos, consulte Get Started with Object Detection Using Deep Learning (Computer Vision Toolbox).

Argumentos de nombre de red de detección de objetos preentrenadosModelo de detección de objetosPaquete de soporte requerido
  • "darknet19-coco"

  • "tiny-yolov2-coco"

YOLO v2: yolov2ObjectDetector (Computer Vision Toolbox)

Computer Vision Toolbox Model for YOLO v2 Object Detection
  • "darknet53-coco"

  • "tiny-yolov3-coco"

YOLO v3: yolov3ObjectDetector (Computer Vision Toolbox)

Computer Vision Toolbox Model for YOLO v3 Object Detection
  • "csp-darknet53-coco"

  • "tiny-yolov4-coco"

YOLO v4: yolov4ObjectDetector (Computer Vision Toolbox)

Computer Vision Toolbox Model for YOLO v4 Object Detection
  • "nano-coco"

  • "tiny-coco"

  • "small-coco"

  • "medium-coco"

  • "large-coco"

YOLOX: yoloxObjectDetector (Computer Vision Toolbox)

Automated Visual Inspection Library for Computer Vision Toolbox

  • "tiny-network-coco"

  • "small-network-coco"

  • "medium-network-coco"

  • "large-network-coco"

RTMDet: rtmdetObjectDetector (Computer Vision Toolbox)

Computer Vision Toolbox Model for RTMDet Object Detection

Modelos preentrenados en GitHub

Para encontrar los últimos modelos preentrenados, consulte MATLAB Deep Learning Model Hub.

Por ejemplo:

Referencias

[1] ImageNet. http://www.image-net.org.

[2] Iandola, Forrest N., Song Han, Matthew W. Moskewicz, Khalid Ashraf, William J. Dally, and Kurt Keutzer. “SqueezeNet: AlexNet-Level Accuracy with 50x Fewer Parameters and <0.5MB Model Size.” Preprint, submitted November 4, 2016. https://arxiv.org/abs/1602.07360.

[3] Szegedy, Christian, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, and Andrew Rabinovich. “Going Deeper with Convolutions.” In 2015 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 1–9. Boston, MA, USA: IEEE, 2015. https://doi.org/10.1109/CVPR.2015.7298594.

[4] Places. http://places2.csail.mit.edu/

[5] Szegedy, Christian, Vincent Vanhoucke, Sergey Ioffe, Jon Shlens, and Zbigniew Wojna. “Rethinking the Inception Architecture for Computer Vision.” In 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2818–26. Las Vegas, NV, USA: IEEE, 2016. https://doi.org/10.1109/CVPR.2016.308.

[6] Huang, Gao, Zhuang Liu, Laurens Van Der Maaten, and Kilian Q. Weinberger. “Densely Connected Convolutional Networks.” In 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2261–69. Honolulu, HI: IEEE, 2017. https://doi.org/10.1109/CVPR.2017.243.

[7] Sandler, Mark, Andrew Howard, Menglong Zhu, Andrey Zhmoginov, and Liang-Chieh Chen. “MobileNetV2: Inverted Residuals and Linear Bottlenecks.” In 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition, 4510–20. Salt Lake City, UT: IEEE, 2018. https://doi.org/10.1109/CVPR.2018.00474.

[8] He, Kaiming, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. “Deep Residual Learning for Image Recognition.” In 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 770–78. Las Vegas, NV, USA: IEEE, 2016. https://doi.org/10.1109/CVPR.2016.90.

[9] Chollet, François. “Xception: Deep Learning with Depthwise Separable Convolutions.” Preprint, submitted in 2016. https://doi.org/10.48550/ARXIV.1610.02357.

[10] Szegedy, Christian, Sergey Ioffe, Vincent Vanhoucke, and Alexander Alemi. “Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning.” Proceedings of the AAAI Conference on Artificial Intelligence 31, no. 1 (February 12, 2017). https://doi.org/10.1609/aaai.v31i1.11231.

[11] Zhang, Xiangyu, Xinyu Zhou, Mengxiao Lin, and Jian Sun. “ShuffleNet: An Extremely Efficient Convolutional Neural Network for Mobile Devices.” Preprint, submitted July 4, 2017. http://arxiv.org/abs/1707.01083.

[12] Zoph, Barret, Vijay Vasudevan, Jonathon Shlens, and Quoc V. Le. “Learning Transferable Architectures for Scalable Image Recognition.” Preprint, submitted in 2017. https://doi.org/10.48550/ARXIV.1707.07012.

[13] Redmon, Joseph. “Darknet: Open Source Neural Networks in C.” https://pjreddie.com/darknet.

[14] Tan, Mingxing, and Quoc V. Le. “EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks.” Preprint, submitted in 2019. https://doi.org/10.48550/ARXIV.1905.11946.

[15] Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. "ImageNet Classification with Deep Convolutional Neural Networks." Communications of the ACM 60, no. 6 (May 24, 2017): 84–90. https://doi.org/10.1145/3065386.

[16] Simonyan, Karen, and Andrew Zisserman. “Very Deep Convolutional Networks for Large-Scale Image Recognition.” Preprint, submitted in 2014. https://doi.org/10.48550/ARXIV.1409.1556.

[17] Russakovsky, O., Deng, J., Su, H., et al. “ImageNet Large Scale Visual Recognition Challenge.” International Journal of Computer Vision (IJCV). Vol 115, Issue 3, 2015, pp. 211–252

[18] Zhou, Bolei, Aditya Khosla, Agata Lapedriza, Antonio Torralba, and Aude Oliva. "Places: An image database for deep scene understanding." arXiv preprint arXiv:1610.02055 (2016).

Consulte también

| | | | | | | | |

Temas

Sitios web externos