Main Content

alexnet

(No recomendado) Red neuronal convolucional AlexNet

  • AlexNet network architecture

No se recomienda el uso de alexnet. Utilice la función imagePretrainedNetwork en su lugar y especifique el modelo "alexnet". Para obtener más información, consulte Historial de versiones.

Descripción

AlexNet es una red neuronal convolucional con 8 capas de profundidad. Puede cargar una versión preentrenada de la red entrenada en más de un millón de imágenes desde la base de datos [1] de ImageNet. La red preentrenada puede clasificar imágenes en 1000 categorías de objetos (por ejemplo, teclado, ratón, lápiz y muchos animales). Como resultado, la red ha aprendido representaciones ricas en características para una amplia gama de imágenes. El tamaño de la entrada de imagen de la red es de 227 por 227. Para ver más redes preentrenadas en MATLAB®, consulte Redes neuronales profundas preentrenadas.

Para ver una introducción práctica gratuita a métodos de deep learning prácticos, consulte Deep Learning Onramp.

ejemplo

net = alexnet devuelve una red AlexNet entrenada con el conjunto de datos de ImageNet.

Esta función requiere el paquete de soporte Deep Learning Toolbox™ Model for AlexNet Network. Si no ha instalado el paquete de soporte, la función proporciona un enlace de descarga. Como alternativa, consulte Deep Learning Toolbox Model for AlexNet Network.

Para ver más redes preentrenadas en MATLAB, consulte Redes neuronales profundas preentrenadas.

net = alexnet('Weights','imagenet') devuelve una red AlexNet entrenada con el conjunto de datos de ImageNet. Esta sintaxis es equivalente a net = alexnet.

layers = alexnet('Weights','none') devuelve la arquitectura de red AlexNet sin entrenar. El modelo sin entrenar no requiere ningún paquete de soporte.

Ejemplos

contraer todo

Descargue e instale el paquete de soporte Deep Learning Toolbox Model for AlexNet Network.

Escriba alexnet en la línea de comandos.

alexnet

Si el paquete de soporte Deep Learning Toolbox Model for AlexNet Network no está instalado, la función proporciona un enlace al paquete de soporte correspondiente en Add-On Explorer. Para instalar el paquete de soporte, haga clic en el enlace y después en Install. Para comprobar que la instalación se ha realizado correctamente, escriba alexnet en la línea de comandos.

alexnet
ans = 

  SeriesNetwork with properties:

    Layers: [25×1 nnet.cnn.layer.Layer]

Si el paquete de soporte requerido está instalado, la función devuelve un objeto SeriesNetwork.

Visualice la red con Deep Network Designer.

deepNetworkDesigner(alexnet)

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.

Argumentos de salida

contraer todo

Red neuronal convolucional AlexNet preentrenada, devuelta como un objeto SeriesNetwork.

Arquitectura de red neuronal convolucional AlexNet sin entrenar, devuelta como un arreglo Layer.

Sugerencias

  • Para ver una introducción práctica gratuita a métodos de deep learning prácticos, consulte Deep Learning Onramp.

Referencias

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

[2] 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

[3] 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

[4] BVLC AlexNet Model. https://github.com/BVLC/caffe/tree/master/models/bvlc_alexnet

Capacidades ampliadas

Historial de versiones

Introducido en R2017a

contraer todo

R2024a: No recomendado

No se recomienda el uso de alexnet. Utilice la función imagePretrainedNetwork en su lugar y especifique "alexnet" como modelo.

No está previsto eliminar el soporte para la función alexnet. Sin embargo, la función imagePretrainedNetwork tiene una funcionalidad adicional que ayuda con los flujos de trabajo de transferencia del aprendizaje. Por ejemplo, puede especificar el número de clases de sus datos usando la opción numClasses, y la función devuelve una red que está lista para hacer un nuevo entrenamiento sin necesidad de modificaciones.

La función imagePretrainedNetwork devuelve la red como un objeto dlnetwork, que no almacena los nombres de las clases. Para obtener los nombres de las clases de la red preentrenada, utilice el segundo argumento de salida de la función imagePretrainedNetwork.

Esta tabla muestra algunos usos habituales de la función alexnet y cómo actualizar el código para usar la función imagePretrainedNetwork en su lugar.

No recomendadoRecomendado
net = alexnet;[net,classNames] = imagePretrainedNetwork("alexnet");
net = alexnet(Weights="none");net = imagePretrainedNetwork("alexnet",Weights="none");

La función imagePretrainedNetwork devuelve un objeto dlnetwork, que también tiene estas ventajas:

  • Los objetos dlnetwork son un tipo de datos unificado que admite la creación de redes, la predicción, el entrenamiento integrado, la visualización, la compresión, la verificación y los bucles de entrenamiento personalizados.

  • Los objetos dlnetwork admiten una gama más amplia de arquitecturas de red que puede crear o importar desde plataformas externas.

  • La función trainnet admite objetos dlnetwork, lo que le permite especificar fácilmente funciones de pérdida. Puede seleccionar entre funciones de pérdida integradas o especificar una función de pérdida personalizada.

  • Entrenar y predecir con los objetos dlnetwork suele ser más rápido que los flujos de trabajo LayerGraph y trainNetwork.

Para entrenar una red neuronal especificada como un objeto dlnetwork, utilice la función trainnet.