4 puntos por GN⁺ 2025-03-22 | 1 comentarios | Compartir por WhatsApp
  • Pen & Paper es una colección de ejercicios con soluciones detalladas creada para que lectores que ya conocen la teoría y los conceptos del aprendizaje automático profundicen su comprensión resolviendo problemas
  • Cuando las soluciones de los ejercicios en libros de texto y cursos son muy breves o no existen, la oportunidad de aprendizaje puede convertirse fácilmente en frustración, por lo que se busca un nivel de detalle en las explicaciones que permita seguir el proceso de resolución
  • Aunque programar y hacer simulaciones también es importante, la mayoría de los problemas están diseñados para resolverse con lápiz y papel, con énfasis en fortalecer el razonamiento matemático
  • Los problemas combinan principalmente ejercicios de los cursos “Unsupervised Machine Learning” de la University of Helsinki y “Probabilistic Modelling and Reasoning” de la University of Edinburgh, y el alcance se concentra en métodos no supervisados, inferencia y aprendizaje
  • Michael Gutmann espera que la colección siga ampliándose, y ofrece el código fuente en LaTeX, el reporte de errores mediante GitHub Issues y el contacto directo para contribuciones mayores

Un libro para profundizar la comprensión con ejercicios

  • Como dice la expresión “use it or lose it”, las habilidades se oxidan si no se practican, y aprender nuevas habilidades también requiere aplicarlas repetidamente
  • Muchos libros de texto y cursos ofrecen ejercicios, pero cuando las soluciones son demasiado breves o no existen, resolverlos puede volverse una fuente de frustración y hace que sea fácil saltárselos
  • Este libro es una colección de ejercicios con soluciones detalladas
    • Busca un nivel de detalle suficiente para que el lector pueda seguir la resolución y entender las técnicas utilizadas
    • No sustituye a un libro o curso de aprendizaje automático
    • Está pensado para situaciones en las que ya se revisaron la teoría y los conceptos relacionados, y se quiere afianzar la comprensión mediante la resolución de problemas

Estructura centrada en lápiz y papel

  • En aprendizaje automático, programar y hacer simulaciones por computadora es muy importante
  • Aun así, la mayoría de los problemas de este libro pueden resolverse con lápiz y papel
    • Este enfoque centrado en lápiz y papel reduce la extensión y simplifica las explicaciones
    • Ayuda a fortalecer las habilidades matemáticas
  • Si se usa junto con práctica en computadora, puede profundizar aún más la comprensión de los conceptos

Temas y alcance

  • Los problemas combinan principalmente material desarrollado en dos cursos
    • Unsupervised Machine Learning” de la University of Helsinki
    • Probabilistic Modelling and Reasoning” de la University of Edinburgh
  • No cubre todo el aprendizaje automático
  • El foco está fuertemente puesto en métodos no supervisados, inferencia y aprendizaje
  • En el texto proporcionado se incluye, como ejemplo del capítulo 1 Linear Algebra, un problema de ortogonalización de Gram–Schmidt
    • Se verifica mediante producto interno que u1 y u2, construidos a partir de dos vectores, son ortogonales entre sí
    • Si a2 es un múltiplo de a1, entonces u2 se convierte en el vector cero durante el proceso de ortogonalización
    • Se muestra que cualquier combinación lineal de a1 y a2, si son linealmente independientes, puede reescribirse en términos de u1 y u2

Expansión y formas de contribuir

  • Se busca que la colección de problemas crezca con el tiempo mediante la incorporación de nuevos ejercicios
  • El código fuente en LaTeX está publicado en el repositorio de GitHub
  • Los errores o erratas pueden reportarse mediante GitHub Issues
  • Para contribuciones mayores, se indica la posibilidad de ponerse en contacto directamente

1 comentarios

 
GN⁺ 2025-03-22
Opiniones en Hacker News
  • Se ve genial, pero lo más frustrante al estudiar machine learning es que, por más profundo que uno vaya en la teoría, no queda claro cómo se conecta con las decisiones prácticas.
    Por ejemplo, quisiera saber cómo ayuda la teoría a decidir cosas como la cantidad de neuronas en una capa, la cantidad de capas, la función de activación, o si usar una red neuronal u otra técnica.

    • Puede servir: https://github.com/google-research/tuning_playbook
    • El hecho de que casi todos los papers de machine learning incluyan experimentos de ablación a gran escala para cosas como la cantidad de neuronas por capa, la cantidad de capas y las funciones de activación es más bien una señal de que, en realidad, nadie lo sabe con certeza.
      Es un campo donde se prueban cosas al azar, se encuentra lo que funciona y se copian ideas unos de otros hasta que surgen guías difusas.
      Si quieres algo lógico y explicable, es casi el peor campo posible; en gran parte consiste en etiquetar datasets, pagar el costo de cómputo y esperar que funcione.
    • La mayoría de las cosas no se pueden aprender solo con teoría pura ni solo con práctica pura, y lo mismo ocurre con casi todo lo relacionado con el trabajo moderno.
      En machine learning no se puede derivar todo a partir de la teoría. Si eso fuera posible, no nos habría sorprendido tanto el rendimiento de los modelos de lenguaje grandes realmente grandes.
      Al mismo tiempo, si no puedes razonar sobre la matemática relacionada, se vuelve difícil entender por qué algo no funciona o qué opciones hay. Hay muchísimos factores entrelazados: arquitectura, función de pérdida, función de activación, técnicas de optimización, hiperparámetros, tiempo y recursos de entrenamiento, etc.
    • Hoy la práctica de machine learning está muy por delante de la teoría. Incluso si la teoría se pone al día, es muy probable que la respuesta a la pregunta dependa de la naturaleza del proceso que genera los datos, así que al final habrá que responderla empíricamente.
      Creo que el valor de la teoría está en ofrecer un marco conceptual general. Es parecido a cómo la teoría asintótica de algoritmos hoy no te dice exactamente qué algoritmo usar, pero sí te orienta en una dirección amplia.
    • Desde la perspectiva de un principiante, la idea clave que saqué del curso de Andrew Ng en Coursera, sobre todo en la parte de redes neuronales, es que normalmente está bien poner más neuronas y capas que el “mínimo necesario”.
      Si se considera una regularización razonable, el riesgo de sobreajuste no es grande, pero lamentablemente no hay una regla para ese mínimo, así que hace falta prueba y error. En cambio, si agrandas la red sin criterio, se vuelve ineficiente y al final lenta.
      En cuanto a las funciones de activación, para la capa de salida suelen quedar determinadas por el problema que quieres resolver, y para las capas internas normalmente se empieza con ReLU y luego se prueban variantes comunes según heurísticas adecuadas al problema.
      Por supuesto, también conviene considerar como punto de partida otros modelos que hayan tenido éxito en problemas similares.
  • Muy prolijo. Me recuerda a los ejercicios de AI By Hand de Tom Yeh: https://www.byhand.ai/

    • Estaba esperando algo así y lo agradezco mucho. El paper del post original también está bueno, pero se siente como algo que suena bien solo para quienes ya conocen el contenido.
      El material en sí es excelente para quienes ya saben del tema.
  • Se ve prolijo. Lo único malo es que la solución viene justo después del problema, así que es difícil no leer la respuesta del siguiente problema antes de pensarlo por cuenta propia.

  • Está muy bueno. Trabajo en machine learning, pero todavía tengo síndrome del impostor con los fundamentos matemáticos, en especial álgebra lineal y operaciones con matrices/tensores.
    Me interesaría conocer más recursos con conjuntos de problemas enfocados en habilidades básicas de deep learning. Me funciona mejor hacer un poco a mano todos los días y aprender desde la perspectiva de varios docentes.

  • ¿Cuántos profesionales que hoy construyen machine learning “útil” podrían resolver algunos de estos problemas? ¿Y deberían poder hacerlo?

    • Creo que no. No es obligatorio ni necesario que puedan resolverlos.
      Estos ejercicios sirven para desarrollar la madurez matemática que lleva a la intuición necesaria para crear algoritmos nuevos u optimizaciones de bajo nivel.
      No son necesarios en el caso general de entrenar, desplegar y usar algoritmos existentes de machine learning.
    • La buena noticia es que, si no te interesa extender las técnicas más recientes y solo quieres hacer llamadas a una API, no necesitas aprender machine learning en profundidad.
    • Depende de cómo definas “profesional de machine learning”, “construir” y “machine learning”. Si miras la sección de optimización, hay personas que entienden eso muy bien y pueden iterar mentalmente con rapidez sobre posibles funciones de pérdida, formas de actualizar parámetros y puntos donde algo puede fallar.
    • Algunas personas ven estudiar como una tarea pesada y quieren aprender solo lo mínimo necesario para terminar el trabajo. Otras obtienen intuición y diversión del estudio, y disfrutan resolver problemas y leer materiales.
      Ambos enfoques pueden aportar y llevar al éxito, pero de maneras distintas.
    • Me pregunto lo mismo. Trabajé varios años como ingeniero de machine learning y tengo algunos títulos en el área.
      Al hojear el documento, reconocí casi todo, pero si me preguntaran sin contexto no creo que pudiera recordar muchos de los temas. Tal vez en algún momento sí pude.
      Me da curiosidad cuánto recuerda la gente de este tipo de contenido. No sé si soy un impostor al que nunca se le dio bien la matemática, o si es normal olvidarlo con el tiempo cuando no se usa con regularidad.
  • Es hermoso que incluya las soluciones. Me interesaría ver más ejercicios de papel y lápiz como estos sobre otros temas.

    • No sé a qué otros temas te refieres, pero con “1000 exercises in probability” tendrás para entretenerte un buen rato. El PDF se puede encontrar en línea.
      Para otros acertijos con orientación matemática, puedes ver “The colossal book of short puzzles and problems” y “The art and craft of problem solving”.
  • Ya se había discutido antes: Pen and paper exercises in machine learning (2021) - https://news.ycombinator.com/item?id=31913057 - junio de 2022, 55 comentarios

  • Me da risa que los matemáticos siempre intenten meter de contrabando álgebra lineal y teoría de matrices en machine learning. Si uno no supiera, pensaría que la academia inventó los modelos de lenguaje grandes y que son los expertos a quienes consultar.
    Más bien creo que la academia y los teóricos retrasaron el machine learning, y como despreciaban demasiado las técnicas computacionales, obligaron a generaciones de estudiantes de posgrado a hacer demostraciones simbólicas como las de este ejemplo.

    • Si quieres contribuir a machine learning y no solo usar técnicas existentes, la capacidad matemática es el mayor factor limitante.
      ¿Quién está contribuyendo sin dominar el álgebra lineal?
      Y también me pregunto por qué resumes todo el campo en los modelos de lenguaje grandes.
    • Es una perspectiva interesante. ¿Podrías recomendar materiales que prioricen las técnicas computacionales por encima de las demostraciones simbólicas?
    • Interesante. ¿Podrías compartir un ejemplo de eso?
  • ¿No se supone que arXiv es para papers de nivel de investigación? Me sorprende que un material así esté publicado ahí.