1 puntos por GN⁺ 2023-12-16 | 1 comentarios | Compartir por WhatsApp

La mejor manera de invertir en desarrollar habilidades de inteligencia artificial/machine learning

  • Una pregunta que pide opiniones sobre la mejor manera de invertir ese tiempo y energía cuando se dedica alrededor de 1 hora al día a desarrollar habilidades en inteligencia artificial (AI)/machine learning (ML).
  • Se proponen varios métodos, y se piden ejemplos concretos o recomendaciones para cada uno.
    • Construir proyectos pequeños (¿qué construir?)
    • Leer blogs/newsletters (¿cuáles leer?)
    • Tomar cursos (¿qué cursos tomar?)
    • Leer libros de texto (¿qué libros leer?)
    • Participar en competencias de Kaggle
    • Participar en foros/comunidades de AI/ML
    • Una combinación de lo anterior (si es posible, compartir proporción de tiempo/ponderación)
  • Esta pregunta se hace comúnmente para ayudar a que los ingenieros de software desarrollen capacidades en el campo del ML.

La opinión de GN⁺

  • Importancia: La inteligencia artificial y el machine learning son actualmente una de las áreas de crecimiento más rápido en el mundo tecnológico, y se han convertido en habilidades esenciales para los ingenieros de software. Desarrollar habilidades en este campo puede ser de gran ayuda para el crecimiento profesional.
  • Interés: AI/ML está impulsando innovación en diversas industrias y áreas de aplicación, y aprender y practicar en este campo ofrece oportunidades para crear proyectos creativos y desafiantes.
  • Variedad de métodos de aprendizaje: Los métodos de aprendizaje propuestos pueden ajustarse con flexibilidad según el estilo de aprendizaje y los objetivos de cada persona, y esa diversidad puede ayudar a encontrar la ruta de aprendizaje óptima para cada quien.

1 comentarios

 
GN⁺ 2023-12-16
Opiniones de Hacker News
  • Experiencia compartida sobre estudios de posgrado

    • Obtuvo una maestría en ML (aprendizaje automático) en una buena universidad. Lo que aprendió en la escuela también podía aprenderlo por su cuenta, pero la escuela le dio un nivel de enfoque y presión que no habría conseguido solo.
    • Implementar artículos fue la experiencia de mayor aprendizaje. Las clases y los libros de texto son solo palabras; hacerlo en la práctica da un conocimiento mucho más profundo.
    • Se pueden proponer varios planes de estudio, pero lo mejor es una hora de resolución de problemas con concentración total.
    • Algunas sugerencias de proyectos: entrenar una red neuronal básica para aprender funciones simples, un clasificador de dígitos MNIST, ajuste fino de GPT2 con un corpus especializado, entrenar una red neuronal siamesa para medir similitud visual, etc.
    • Aconseja no perder tiempo escribiendo tu propia red neuronal y retropropagación, sino aprender a usar herramientas de profiling y depuración.
  • Consejos de un investigador de IA y fundador técnico de startup

    • Suponiendo que se habla de avances recientes, recomienda no seguir una ruta lineal. Haz un curso y un proyecto pequeño, ponles un límite de tiempo e intenta terminarlos.
    • Encuentra un área de investigación interesante, ejecuta el código de GitHub correspondiente y busca cómo mejorarlo o cómo usarlo en una app.
    • Sugiere tomar el curso de fast.ai, leer las entradas del blog de Karpathy y tomar los cursos cs231n y cs234 de Stanford.
    • Encuentra un proyecto que te interese y ponlo a correr.
  • La importancia de llevar ML a la práctica

    • Muchos comentarios van a enfatizar las partes de bajo nivel de ML, pero lo que hace falta hoy en ML son personas inteligentes a nivel de implementación.
    • Es importante y necesario crear software que la gente común pueda usar aprovechando la tecnología LLM existente.
    • La práctica diaria incluye bosquejar aplicaciones, estructurar prompts y llamadas a funciones, aprender a comercializar lo que creaste y construir herramientas que vayan de cero a uno.
    • Como ejemplo, menciona aplicar la técnica de libro común de la época de Aristóteles a la era moderna de embeddings, y entender una especificación MD pura e integrar un modelo de generación en streaming.
  • Convertir AI/ML en trabajo cotidiano

    • Busca maneras de poner AI/ML en una ruta crítica. Como al aprender un idioma nuevo, no hay nada tan efectivo como la inmersión total.
    • Si todavía no tienes una base suficiente para conseguir trabajo en el área, encontrar un proyecto por pasión y seguir pensando en nuevas formas de resolverlo es la siguiente mejor opción.
    • Por último, considera volver a estudiar. Toma más de una hora al día, pero permite ver resultados mucho más rápidos y concretos que otras estrategias de aprendizaje.
  • Hoja de ruta típica de un estudiante de ML/AI

    • Se necesita formación previa en matemáticas, ciencias de la computación, etc. Normalmente eso incluye cálculo, álgebra lineal, probabilidad y estadística, programación, programación orientada a objetos, estructuras de datos y algoritmos.
    • Después de un curso básico de ML, se cubren los fundamentos de DL (aprendizaje profundo), que cambia rápidamente.
    • Luego se divide entre ingeniería de ML e investigación en ML. La ingeniería se enfoca en los aspectos técnicos relacionados con pipelines de ML; la investigación, en la ciencia misma.
    • Como dijeron otros, usar herramientas para implementar cosas es divertido y útil. Si intentas implementar todos los modelos por tu cuenta, puedes terminar pasándola muy mal.
    • Al aprender ML “práctico”, se busca implementar modelos de forma que puedas ingresar datos y recibir resultados por medio de una API. Eso incluye desafíos de procesamiento de datos, desarrollo y hosting de software, desarrollo de APIs, etc.
  • Reconocer los límites de AI/ML

    • No dejes volar demasiado la imaginación ni sobrestimes lo que AI/ML puede hacer.
    • Participó durante dos años en proyectos de ML en una gran empresa, pero se dio cuenta de que no mejoraban frente a métodos estadísticos existentes y que, como no había capacidad de entender la “caja negra” de ML, no hubo mejoras reales en el proceso.
    • Mucho trabajo de ML era una solución en busca de un problema.
    • Es importante entender cómo usar bases de datos (SQL y NoSQL). Para usar ML de forma efectiva, se necesita mucha habilidad para programar con grandes volúmenes de datos y buen rendimiento.
  • Cómo estudiar AI/ML

    • Leer de principio a fin "An Introduction to Statistical Learning with Applications in R/Python" de Hastie y otros, y entender los conceptos, ideas, matices y sutilezas que explica.
    • Tener a la mano libros de matemáticas/estadística, y cuando aparezca una técnica matemática desconocida, consultarlos de inmediato o ver un video corto de YouTube para entender el concepto y cómo se usa.
    • Esta es la forma más simple y directa de estudiar y entender AI/ML. Todo lo demás mencionado en este hilo debería hacerse después de terminar eso.
  • La combinación de ML e ingeniería

    • Vale la pena mirar la intersección entre ML e ingeniería.
    • Considera MLOps, la aplicación de DevOps, testing y ci/cd en el espacio de ML, cómo entrenar en múltiples GPU y especialmente cómo hospedar LLM a gran escala y a bajo costo.
    • En el ámbito académico hay cientos de candidatos con una base teórica sólida, pero muy pocos ingenieros con experiencia capaces de hacer realidad sus ambiciones.
  • Enfoque en aprendizaje profundo

    • La mayoría de los LLM usan arquitectura Transformer. Se puede aprender esto de forma visual, por ejemplo con entradas de blog o materiales de Andrej Karpathy.
    • Lee cada domingo resúmenes semanales para mantenerte al día con los papers que se publican.
    • Para aprender más del lado de ingeniería, puedes unirte al servidor de Discord de EleutherAI o seguir las discusiones de GitHub de proyectos como llama.cpp.
    • Probablemente la forma más eficiente de desarrollarte sea reimplementar los papers clave del área. Tienes un objetivo claro, señales claras de éxito y muchas implementaciones con las que puedes verificar, comparar y aprender.
  • Quiz para principiantes en LLM

    • Hace poco dio una clase introductoria sobre LLM para estudiantes de posgrado no CS (biomédica). Quería asignar un quiz de tarea, pero no encontró uno bueno, así que hizo un quiz de opción múltiple. El quiz es “diabólico” y sin una comprensión sólida es fácil caer. Algunas preguntas tienen matices que ponen a prueba la comprensión y ayudan a aprender al intentar encontrar la respuesta correcta. Es un formulario de Google que no recopila correos electrónicos.