caffe
Objetos básicos de Caffe - Solver, Net, Layer y Blob
Buscar..
Observaciones
Un usuario de caffe envía instrucciones para realizar operaciones específicas para caffe objetos. Estos objetos interactúan entre sí en función de sus especificaciones de diseño y realizan la (s) operación (es). Este es un principio básico del paradigma OOP.
Si bien hay muchos tipos de objetos de cafeína (o clases de C ++), para una comprensión básica, nos centramos en 4 objetos importantes de cafeína. Nuestro objetivo en esta etapa es simplemente observar la interacción entre estos objetos en un nivel altamente abstracto donde los detalles específicos de la implementación y el diseño son confusos, y en su lugar se enfoca una vista de la operación a vista de pájaro.
Los 4 objetos básicos de cafe son:
- Solucionador
- Red
- Capa
- Gota
Una introducción muy básica y una vista panorámica de su papel en el trabajo de caffe se presenta en puntos concisos en la sección de ejemplos.
Después de leer y obtener una idea básica de cómo interactúan estos objetos de cafeína, se puede leer cada tipo de objeto en detalle en sus temas dedicados.
Cómo estos objetos interactúan entre sí.
Un usuario está buscando usar caffe para el entrenamiento y las pruebas de CNN. El usuario decide el diseño de la arquitectura CNN (por ejemplo, No. de capas, No. de filtros y sus detalles, etc.). El usuario también decide la técnica de optimización para los parámetros de entrenamiento y aprendizaje en caso de que se lleve a cabo el entrenamiento. Si la operación es de prueba de vainilla, el usuario especifica un modelo pre-entrenado. Utilizando toda esta información, el usuario crea una instancia de un objeto Solver y proporciona al objeto Solver una instrucción (que decide la (s) operación (es) como entrenar y probar).
Solucionador : este objeto se puede considerar como una entidad que supervisa la capacitación y las pruebas de una CNN. Es el contratista real quien obtiene un CNN en el procesador y en funcionamiento. Está especializada en llevar a cabo las optimizaciones específicas que llevan a una CNN a capacitarse.
Net : Net puede considerarse como un objeto especializado que representa la CNN real sobre la que se realizan las operaciones. Net le indica a Net que asigne realmente memoria a la CNN y la ejecute. Net también es responsable de dar instrucciones que realmente conduzcan a la propagación hacia adelante o hacia atrás a través de la CNN.
Capa : es un objeto que representa una capa particular de una CNN. Así, una CNN está formada por capas. En lo que respecta a caffe, el objeto Net crea una instancia de cada tipo de " Capa " especificada en la definición de la arquitectura y también conecta diferentes capas entre sí. Una capa específica lleva a cabo un conjunto específico de operaciones (por ejemplo, Max-Pooling, Min-Pooling, 2D Convolution, etc.)
Blob : los datos fluyen a través de una CNN durante el entrenamiento y las pruebas. Estos datos, además de contener datos de usuario, también incluyen varios cálculos intermedios que se realizan a través de CNN. Estos datos están encapsulados en un objeto llamado Blob.