Cómo pasar de un pitonista principiante a un desarrollador certificado de TensorFlow en dos meses

Todavía recuerdo el día que pasé mi trabajo de graduación a la universidad. Entonces solté un suspiro de alivio, ya que esto significaba graduarme de una licenciatura. Pero pronto me invadió el aburrimiento. No había nada que hacer, el mundo estaba preso de una pandemia. Tenía muchas ganas de encontrar una nueva ocupación que me salvara de la inactividad. En esta publicación, quiero compartir cómo el aburrimiento del autoaislamiento me ayudó a convertirme en un desarrollador certificado de TensorFlow en menos de dos meses. Y esto a pesar de que no he programado antes en Python. Aquí, además, daré una lista de enlaces a materiales que utilicé, dominando un nuevo campo de conocimiento por mí mismo y preparándome para la certificación.











Antecedentes



Amo estudiar La sed de conocimiento me hizo leer muchas noticias y artículos sobre la pandemia. Fue entonces cuando me encontré con un artículo sobre un grupo de investigadores que creaban un nuevo sistema que puede distinguir la neumonía del COVID-19 basándose en el análisis de rayos X.



El artículo mencionó que el proyecto utiliza "inteligencia artificial" y utiliza "redes neuronales". Esto me interesó de inmediato. ¿Cómo pudieron los humanos construir y entrenar una máquina que pudiera analizar rayos X? Empecemos por el hecho de que la inteligencia artificial ni siquiera tiene formación médica. ¡Y logró una precisión de más del 90%! Así es como comenzó mi viaje hacia la madriguera del aprendizaje profundo.



En resumen, lo hablé con un amigo y me enteré de la existencia de TensorFlow (y Keras). Y luego, mientras continuaba estudiando varios materiales sobre este tema con curiosidad, encontré un artículo , cuyo autor habla sobre cómo se convirtió en un desarrollador certificado de TensorFlow.



Aquí me desafié a mí mismo, preguntándome si podría obtener tal certificado. Es cierto que me preocupaba no tener suficiente tiempo para esto. El caso es que me iba a ir a trabajar, y además, casi al mismo tiempo, comenzaron mis estudios de maestría. Además, no sé nada de programación en Python. ¿Podré lograr mi objetivo?



En mi licenciatura, estudié matemáticas aplicadas para resolver problemas actuariales. Esto significa que estoy bastante familiarizado con las matemáticas y la estadística superiores, sé lo que son la regresión y las series de tiempo. Pero mi conocimiento de Python era cercano a cero. El único idioma que conocía en ese momento era R. Aunque creo que R es un idioma muy versátil que puede satisfacer las necesidades de quienes trabajan con datos, desafortunadamente este idioma no era adecuado para realizar el examen de certificación.



La certificación en TensorFlow sería un hito importante en mi viaje como científico de datos autodidacta y científico de inteligencia artificial. Quizás ya he contado lo suficiente sobre mí. Es hora de hablar sobre TensorFlow.



¿Qué es la plataforma TensorFlow y por qué aprenderla?



En pocas palabras, TensorFlow es una plataforma de aprendizaje automático ampliamente utilizada.



Si hablamos de TensorFlow con más detalle, resulta que tenemos ante nosotros un framework de código abierto gratuito que cubre todas las necesidades para la creación de proyectos en las áreas de machine y deep learning. Este marco le permite resolver una amplia gama de tareas, desde el preprocesamiento de datos hasta la capacitación y la implementación del modelo. TensorFlow se diseñó originalmente para las necesidades internas de Google y fue desarrollado por el equipo de Google Brain. Ahora, este marco se usa literalmente en todas partes.



Ahora hablemos de por qué debería aprender TensorFlow. El hecho es que esta plataforma es capaz de resolver muchos problemas, y el hecho de que es mucho más frecuente de lo que imagina. Es muy probable que, sin siquiera saberlo, esté utilizando servicios creados con TensorFlow.





Demostración de respuesta inteligente de Gmail ( fuente )



¿Alguna vez ha utilizado la función de respuesta inteligente de Gmail? Este mecanismo se basa en las capacidades de la inteligencia artificial. Ofrece al usuario tres posibles respuestas a un correo electrónico en función del contenido del correo electrónico. El motor de respuesta inteligente está construido con TensorFlow.



¿Sabes qué impulsa el feed en tu cuenta de Twitter? ¿En qué se basa el mecanismo OCR (imagen a texto) en WPS Office? ¿Cómo le recomienda VSCOperfiles de usuario al analizar sus fotos? Todos estos son ejemplos de cómo se puede usar TensorFlow.



En el momento en que se escribió este artículo, TensorFlow solo había existido durante unos 4 años. Además, esta plataforma se ha utilizado en una gran cantidad de proyectos que todos usamos a diario. Si bien el artículo que mencioné sobre el reconocimiento de COVID-19 a partir de rayos X no lo dijo explícitamente, es probable que los investigadores que lo escribieron también usaran TensorFlow.



En el futuro, a medida que mejoren las tecnologías de aprendizaje profundo e inteligencia artificial, podemos esperar la aparición de más productos, servicios, investigación científica, en los que TensorFlow se utiliza como un subsistema que implementa tecnologías de aprendizaje profundo.



Los profesionales del aprendizaje automático y la ciencia de datos se benefician de la familiaridad con esta plataforma. Y yo, impulsado por este pensamiento, me interesé en convertirme yo mismo en un desarrollador certificado de TensorFlow. Es posible que haya tenido pensamientos similares antes. Quizás estés pensando en esto mientras lees este artículo. Es posible que tenga sus propias razones para aprender TensorFlow. En cualquier caso, si decide prepararse para la certificación, encontrará algunos detalles al respecto en la siguiente sección.



Detalles sobre la certificación





Insignia digital de TensorFlow ( fuente )



El examen de certificación de TensorFlow se realiza con Python. Este examen utiliza la biblioteca TensorFlow Python y las API relacionadas. Un intento cuesta $ 100. Si el primer intento falla, puede pagar la misma cantidad y aprobar el segundo examen en 2 semanas. Los detalles sobre las tarifas de los exámenes y otras cosas similares se pueden encontrar aquí .



El examen consta de cuatro partes principales: crear y entrenar una red neuronal con TensorFlow, reconocimiento de imágenes, procesamiento del lenguaje natural y trabajar con series de tiempo. Al aprobar el examen, debe utilizar el IDE de PyCharm.



Después de ver el manual del examen, comencé a planificar mis estudios. Primero, tuve que entender la programación de Python, y luego tuve que dominar TensofFlow.



Primer mes de estudio



Tal vez hayas leído hasta ahora sin perderte nada, tal vez simplemente saltaste aquí. En cualquier caso, permítame recordarle dónde comencé. Yo era un estudiante promedio de matemáticas aplicadas sin nada para mantenerme ocupado y no tenía experiencia con la programación de Python. De repente, este estudiante estaba ansioso por convertirse, en dos meses, en desarrollador certificado de TensorFlow.



Aquí comienzo una historia sobre cómo y qué estudié durante estos dos meses.



En el primer mes, estaba aprendiendo Python. ¿Cómo logré aprender a programar en este idioma tan rápido? Fui a HackerRank a primera horay comencé a resolver problemas en Python. Muchas tareas. Cada vez que me encontraba con algo que no podía afrontar por mi cuenta, inmediatamente comencé a buscar las soluciones de otras personas. Si una mirada rápida a la solución no me permitió resolver el problema, procedí a un análisis exhaustivo de las ideas de otras personas, tratando de comprender la esencia de la solución y resaltar lo que me sería útil.



He estado haciendo esto durante dos semanas. Después de eso, pude resolver la mayoría de los problemas, incluso los difíciles, sin mirar a ningún lado.



¿Qué hice durante las dos semanas restantes? Viste tutoriales gratuitos de Python en YouTube. Sí exactamente. Gratis. Lecciones. En Youtube.



Por supuesto, si tiene la oportunidad de inscribirse en un curso de Python real en el que el material está bien estructurado, sin duda debería hacerlo. Los tres cursos en video que vincularé a continuación, los elegí yo mismo, en un esfuerzo por aprender Python más rápido.



Estos vídeos no gozan de gran popularidad por el hecho de que son "gratuitos" y porque quien los ve no recibirá ningún certificado de formación. De hecho, aquí están los cursos de formación que creo que son bastante valiosos:



  • Python for Beginners. Python. , , (, , ), . , . , Python .
  • Python for Data Science Full Course. Python- -. . Keras TensorFlow. , , , .
  • Análisis de datos con Python . Antes de crear modelos y entrenarlos, debe preparar los datos y someterlos a un procesamiento preliminar. Por alguna razón, esto a menudo se olvida. Este curso está dedicado principalmente a cuestiones como la recopilación de datos, su carga en un programa, la limpieza y la visualización. Tal trabajo con datos le permite comprenderlos mejor, esto es beneficioso para todo el trabajo posterior con ellos.


Aunque planeo inscribirme en un curso regular de Python, estos tres videos me dieron todo lo que necesitaba. Si también ve estos cursos, intente tomar notas mientras los mira, escriba el código usted mismo y pruebe lo que le digan.



Segundo mes de estudio



Pasé mi segundo mes de estudio en el Certificado profesional de desarrollador de DeepLearning.AI TensorFlow , que se puede encontrar en Coursera. Los cursos de esta especialización los imparten Lawrence Maroney, inteligencia artificial de Google, y Andrew Ng, fundador de deeplearning.ai .



La especialización incluye cuatro cursos. Cada uno de ellos corresponde a uno de los temas de examen antes mencionados. Un curso dura cuatro semanas, pero estudié los materiales semanales en un día, ya que en ese momento esta era mi ocupación más importante.



Después de completar cada curso, me tomé un día libre. Ese día, experimenté con el código y exploré lentamente ideas relacionadas con el curso.



Al final, me tomó cinco días completar cada curso. Me tomó cuatro días revisar los materiales del curso y otro día lo pasé descansando y repasando lo que había aprendido. Como resultado, pude completar toda la especialización en 20 días.



Cada curso incluyó tareas de programación. Me tomé estas asignaciones en serio. A menudo, por ejemplo, pasé muchas horas experimentando con los hiperparámetros de una red neuronal (cuando empieces a aprender, sabrás qué es) para obtener los mejores resultados. Al hacer este tipo de cosas, puede adquirir una especie de comprensión instintiva de cómo, a través de prueba y error, crear modelos de redes neuronales.



A veces, en los materiales de las clases había enlaces a conjuntos de datos, artículos y otros materiales adicionales. Si bien no necesitaba aprender todo esto para completar el curso, por curiosidad he trabajado en muchos de estos recursos. El curso se centró principalmente en la práctica. Pero generalmente se les daban enlaces a los videos de Andrew Eun, en los que él más claramente, con una explicación de la teoría, revelaba algunas cosas.



Materiales alternativos



No es necesario que estudie como lo hice yo para obtener la certificación. Por ejemplo, en lugar de completar una especialización paga en Coursera, puede recurrir a otros materiales:







Después de terminar todos los cursos que había elegido en Coursera, me di cuatro días para revisar lo que había aprendido y volver a leer el manual del examen. Empecé a hacer el examen el día 25 del segundo mes de preparación.



Ha llegado el día decisivo. Y, por cierto, aquí hay una hoja de trucos con las respuestas al primer grupo de preguntas (si alguien no entiende, solo estoy bromeando). Por razones obvias, no puedo entrar en detalles sobre el examen, pero a continuación he dado algunas de mis observaciones y consejos sobre la preparación y aprobación del examen.



  1. , — IDE. , IDE PyCharm. IDE, , , , . PyCharm, , .
  2. . , ( , ). , , . .
  3. . . , . , , ( , , IDE ).
  4. . , , . , . — , .
  5. Los modelos se pueden entrenar con recursos de plataformas externas como Google Colab y AWS. Antes de comenzar el examen, aprenda a guardar modelos en los que ha trabajado en plataformas externas y cargarlos en PyCharm. Los modelos deben guardarse en formato .h5.


Si lo hizo bien mientras se preparaba para el examen y si domina todo lo que se incluye en el plan del examen, debe aprobarlo con éxito. Puedo decir con confianza que el manual contiene recomendaciones sensatas. Puede probar su preparación para el examen evaluando su conocimiento de los temas mencionados en él.



Hice el examen con mi computadora portátil, que funciona con un procesador AMD y no tiene una tarjeta gráfica separada. Al mismo tiempo, necesitaba recurrir al poder de Google Colab solo una vez, resolviendo un problema que usaba un gran conjunto de datos. Usted, para comprender si su computadora es adecuada para el examen, puede resolver varios problemas prácticos en ella. Creo que vale más la pena preocuparse no por la computadora, sino por la velocidad y estabilidad de la conexión a Internet, ya que es necesario descargar modelos para aprobar el examen.



Resultados de examen



Después de completar el examen, recibí inmediatamente un correo electrónico informándome que había aprobado el examen. Se enviará un certificado digital oficial que confirme la aprobación del examen en un plazo de 2 semanas. Puede adjuntarse a su perfil de LinkedIn.



El certificado es válido por solo tres años. Esto significa que en 2023 tendré que volver a realizar el examen. Solo puedo adivinar cómo se desarrollará TensorFlow y toda la industria del aprendizaje profundo para entonces. Y espero que luego aprobar el examen sea más fácil para mí que ahora.



Resultados y planes para el futuro



Este, por supuesto, no es el final. Este es solo el comienzo. Mi primer hito en el aprendizaje de la tecnología de IA fue mi certificación TensorFlow, y me inspiró enormemente. Este certificado se ha convertido en mi puerta al mundo de la ciencia de datos. Esto es un poco extraño porque, por lo general, cuando se trata de aspirantes a científicos de datos, el aprendizaje profundo es como la guinda del pastel.



Me alegro de haber podido obtener un certificado y haber podido escribir este artículo solo unos días antes de comenzar a trabajar y estudiar. Durante dos meses de preparación, me dediqué por completo a mi nuevo hobby. Las tecnologías de inteligencia artificial nos brindan posibilidades aparentemente infinitas para resolver problemas reales.



Quiero señalar que no creo que mi enfoque del autoaprendizaje sea el mejor. Todavía puede trabajar y trabajar en ello. Para aquellos que no están limitados en el tiempo, puede que no valga la pena apresurarse como yo. Y en el proceso de estudio sería bueno que crearan sus propios proyectos. Creo que este enfoque de aprendizaje es mejor que el mío. Ahora, aunque soy un desarrollador certificado de TensorFlow, todavía necesito hacer mi propio proyecto y ponerlo en GitHub. Esto es lo que haré después de publicar este artículo. Esto me permitirá mejorar mis conocimientos y habilidades.



Estoy seguro de que el mundo de la inteligencia artificial y todo lo relacionado con él es un fenómeno de rápido crecimiento, lleno de innovaciones, descubrimientos, avances científicos. Esta es la vanguardia de la tecnología moderna. Hay mucho aquí que la gente aún tiene que aprender y explorar. Si lo desea, también puede convertirse en parte de este mundo. Quería. Y, aburrido durante la cuarentena, inició su viaje.



¿Está planeando convertirse en un desarrollador certificado de TensorFlow?










All Articles