Keras

 API de Redes Neuronales

Keras es una  API de redes neuronales desarrollada en Python y  compatible con  varios motores de calculo de redes neuronales de back-end. Esta biblioteca fue desarrollada con el enfoque de permitir una experimentación rápida: ‘Ser capaz de pasar de la idea al resultado lo más rápido posible.’

Principios de Keras

Esta API se considera desarrollada ‘para humanos’  en vez de para máquinas. 

Las estructuras de datos centrales de Keras son capas y modelos . El tipo de modelo más simple es el modelo secuencial, una pila lineal de capas. Para arquitecturas más complejas, debe usar la API funcional de Keras , que permite construir gráficos arbitrarios de capas.

Más allá de la facilidad de aprendizaje y la facilidad de creación de modelos, Keras ofrece las ventajas de una amplia adopción y  soporte para una amplia gama de opciones de implementación de producción. Esta facilidad de uso y aprendizaje no implica una flexibilidad reducida ya que Keras se integra con el framework  TensorFlow de bajo nivel permitiéndole así desarrollar flujos de trabajo altamente funcionales donde cada parte puede ser personalizable.

¿Por qué Keras?

La palabra Keras tiene origen Griego “ (κέρας) ” que significa cuerno. 

Este nombre viene asociado a una imagen literaria encontrada en la Odisea. En ella se muestra  cómo los espíritus del sueño se dividen entre aquellos que engañan con visiones falsas entrando por una puerta de marfil  y con los que anuncian un futuro que sucederá entrando por una puerta de cuerno.

Aplicaciones y Ejemplos de la API de Redes Neuronales

Keras suministra diez modelos llamados Keras Applications, previamente entrenados contra ImageNet : Xception, VGG16, VGG19, ResNet50, InceptionV3, InceptionResNetV2, MobileNet, DenseNet, NASNet, MobileNetV2TK. 

Dichos modelos son utilizados para predecir la clasificación de imágenes, extraer características de ellas y ajustar los modelos en un conjunto diferente de clases.

 Ajustar los modelos existentes es una buena forma de acelerar el entrenamiento. Por ejemplo, se puede agregar capas como se desee, congelar las capas base para entrenar las nuevas capas, luego descongelar algunas de las capas base para ajustar el  entrenamiento. Puede congelar una capa con configurando :

                                              layer.trainable = False.

El repositorio de ejemplos de keras contiene más de 40 modelos de muestra y  cubren modelos de visión, texto y secuencias, y modelos generativos.

Implementación 

Los modelos de Keras  se pueden  implementar en una amplia gama de plataformas, quizás más que cualquier otro marco de Deep Learning. Eso incluye iOS, a través de CoreML ; Android, a través de TensorFlow runtime ; en un navegador, a través de Keras.js  y  WebDNN ; en Google Cloud, a través de  TensorFlow-Serving ; en el back-end de una aplicación web de Python ; en la JVM, a través de la importacion del modelo DL4J ; y en Raspberry Pi.

Para comenzar con Keras, lo recomendable es leerse la guía de documentación , consultar repositorio de código ,  instalar TensorFlow y probar el  tutorial de introducción al modelo.

Close Bitnami banner
Bitnami