5  Los programas

Programar redes neuronales es una parte fundamental de este curso. Esta decisión está motivada por el hecho de que la utilidad en el mundo real no se obtiene mediante cálculos manuales, sino a través de programas que automatizan los complejos procesos de entrenamiento y gestión de datos.

Para este fin, existen innumerables frameworks de redes neuronales, entre los que destacan PyTorch y TensorFlow, además de referentes históricos como Caffe o Theano. Si bien todos ellos son herramientas valiosas para generar sistemas listos para producción, el enfoque de este libro reside en el dominio de las “entrañas” de las redes neuronales.

Basándome en la experiencia de enseñar esta materia en la carrera de Inteligencia Artificial, considero de vital importancia que los estudiantes sean capaces de realizar estas implementaciones por sí mismos, sin depender de librerías de alto nivel. Este aprendizaje no solo garantiza un control total sobre el modelo, sino que les permitirá, incluso, desarrollar sus propios frameworks, los cuales podrían estar especializados en sistemas de procesamiento que aún no han sido creados.

Cada programa se encuentra encapsulado en un recuadro especial para indicar al lector que se trata de código en Python, como el que se muestra a continuación:

# este es un codigo de python
print("Hola mundo")

Si bien estos fragmentos pueden no representar un programa funcional completo, sí proporcionan la estructura necesaria para implementar los conceptos abordados en cada sección. De antemano, pido disculpas al lector debido a que muchos de estos bloques de código carecen de acentos o pueden presentar inconsistencias gramaticales. Esto no se debe a una omisión, sino al propósito de asegurar que los programas sean portables entre distintos sistemas operativos y se facilite su ejecución sin errores de codificación con los caracteres.