El furor que desperta el machine learning ha col·locat a TensorFlow, el programari de codi obert de Google per a projectes d'aprenentatge automàtic, en la cresta de l'ona, especialment quan es combina amb el llenguatge de programació Python. L'últim informe The State of the Octoverse de GitHub subratlla que TensorFlow ha estat un dels projectes que més moviment ha registrat en la plataforma de coding durant 2019. 9.900 usuaris van contribuir al seu creixement plantejant preguntes i incidències; i, fins avui, s'han obert 46.000 repositoris que utilitzen TensorFlow, com els de les llibreries NumPy o PyTest.
TensorFlow és una plataforma de codi obert per a computació numèrica basada en grafs. Compta amb el segell de Google i permet desenvolupar, amb relativa facilitat, aplicacions de machine learning que ens oferiran prediccions, classificacions o recomanacions basades en l'anàlisi d'un conjunt de dades. A mesura que el sistema recull més i més informació, aprèn de manera automàtica i la fiabilitat dels seus resultats augmenta. TensorFlow pot córrer en una o en múltiples CPU i GPU, així com en dispositius mòbils.
TensorFlow té múltiples usos. Un dels més destacats és el desenvolupament de xarxes neuronals artificials empleades en:
Combinar TensorFlow i Python és una de les fórmules més eficaces i senzilles per al desenvolupament d'aplicacions de machine learning. Per què?
Python serà un dels llenguatges de programació més usats l'any 2020 . Ocupa el segon lloc entre els més populars en l'última Developer Survey de Stack Overflow i el tercer en l'índex TIOBE. Usar Python en l'àmbit del machine learning ofereix grans avantatges perquè:
A l'hora de desenvolupar projectes de machine learning amb TensorFlow en Python, és necessari familiaritzar-se amb alguns conceptes clau com:
De manera succinta, podríem dir que amb TensorFlow es persegueix desenvolupar un model de machine learning que, amb un data set d'entrada i entrenament pel mig, sigui capaç d'establir generalitzacions. Abans d'agregar el conjunt de dades, cal preprocesarlos perquè el sistema pugui treure'ls partit. Després, per a l'entrenament, caldrà preveure un nombre d'èpoques suficient, perquè el model aprengui; però no excessiu, ja que això podria viciar els resultats.
En els projectes de machine learning amb TensorFlow en Python és possible recórrer a llibreries addicionals que faran més senzilla la tasca de programació. Ens referim a, per exemple, NumPy i SciPy per a funcions matemàtiques; Colles i Seaborn, per a l'explotació estadística i la visualització de dades; o Matplotlib per a la generació de gràfics.