¿Cómo está estudiando Conner Davis el aprendizaje automático?

Si solo quieres mi consejo sobre cómo aprender ML, salta al resumen al final.

En realidad no seleccioné el proyecto de localización del tumor pulmonar. Para cualquiera que no sepa cuál es ese proyecto, puede encontrar una breve sinopsis en mi perfil en “investigación actual”. Básicamente me asignaron como parte del programa de Doctorado Enriquecido de la National Science Foundation. [1] Los profesores en el proyecto usan MATLAB principalmente, así que tuve que hacer casi todo en MATLAB.

Estaba trabajando en métodos más tradicionales y descubrí que simplemente no eran suficientes. Pasaré por alto por qué no fueron suficientes para evitar que tus ojos vuelvan a la cabeza por aburrimiento.

Necesitaba algo capaz de extraer patrones en la anatomía individual del paciente. Había escuchado el término “Aprendizaje automático“, pero realmente no sabía qué era, así que comencé a explorar. Como regla general, cuando aprendo algo nuevo, quiero obtener una visión general rápida de todo el campo, así que cuando no sé algo, al menos sé dónde buscar. Es por eso que vi el curso Coursera de Andrew Ng . Tenía un fondo sólido de matemáticas y un horario ocupado al día siguiente, así que lo vi a una velocidad 2x durante todo el camino. Definitivamente recomiendo el curso, pero no recomendaría verlo a una velocidad 2x a menos que esté absolutamente seguro de que no mencionará ninguna matemática con la que no esté 100% cómodo.

Esa noche, realicé un prototipo de algunos algoritmos básicos en MATLAB para la reconstrucción y encontré exactamente lo que esperaba … todos tenían demasiado sesgo. Decidí que necesitaba una red neuronal. Así que descargué MatConvNet y comencé a construir un modelo. Me equivoqué mucho , recorrí muchos caminos equivocados, leí papeles que resultaron no ser relevantes en absoluto. Eso es lo que más me enseñó. Cada vez que quería probar una idea, tenía que implementarla, ver qué salía mal y descubrir cómo solucionarla. Eso significó mucha lectura, experimentación y desmayo en mi computadora a las 6 AM.

  • Experimenté con diferentes métodos de preprocesamiento.
    • Tomar la magnitud del gradiente fue increíblemente útil, pero dificultó la generalización. El gradiente es sensible al ruido, por lo que su uso hace que el sistema sea menos robusto con datos reales.
  • Descubrí que la agrupación era perjudicial porque no podía permitirme perder la información espacial.
  • Me di cuenta de que las redes convolucionales no eran realmente útiles en comparación con las NN estándar porque las diferentes partes de la imagen eran muy diferentes.
  • La imagen era demasiado grande y el NN tendría demasiados parámetros, así que lo dividí en parches.
  • Tuve que implementar un nuevo tipo de regularización porque mis datos de prueba son muy diferentes de mis datos de entrenamiento.

Montones y montones de caminos falsos. Ninguno de ellos ayudará a terminar esta investigación, pero aprendí algo de todos ellos y eso me ayudó a responder preguntas sobre Quora y me ayudará inmensamente en proyectos futuros.

Aprendí mucho leyendo respuestas en Quora y también escribiéndolas.

En cuanto a lo que haré a continuación, tengo algunos problemas de investigación teórica más que quiero ver en mi perfil y hay otros que no están en la lista también. Más allá de eso, no estoy seguro …

La guía de tres pasos de Conner Davis para aprender ML

Descargo de responsabilidad: esto es lo que hice y funcionó muy bien para mí, pero no tengo muchas bases para comparar y no tengo idea de si funcionará para usted.

  1. Mira el curso Coursera de Andrew Ng y haz todos los ejercicios.
    1. Siéntase libre de agregar otro curso o dos que haya escuchado que fue bueno, pero no pase todo el tiempo viendo videos. ¡Construir cosas!
  2. Elija un proyecto que esté fuera de su alcance.
  3. Termina ese proyecto.
    1. Tomará un tiempo Me ha llevado meses llegar tan lejos en mi proyecto. Con lo que sé ahora, podría llegar tan lejos en una semana (y la mayor parte de ese tiempo lo pasaría esperando a que las redes entrenen).
    2. Implemente cada idea que tenga, no importa lo difícil que parezca.
    3. Asegúrese de poder explicar por qué funcionó o no funcionó. Eso significa analizar los resultados cuidadosamente. Si no puede resolverlo, investigue más.

En el camino, leerá documentos, respuestas de Quora, artículos de Wikipedia y mucha documentación. Aprenderá mucho mientras obtiene resultados tangibles.

Notas al pie

[1] Entrenamiento Doctoral Enriquecido en Ciencias Matemáticas

Espero que a Conner no le importe que aumente su respuesta sobre él, algo algo divertido que hacer, pero creo que lo que digo podría ayudar a alguien. Hay dos cosas sobre Conner que he notado al leer sus respuestas, y en nuestras pocas comunicaciones hasta la fecha que menciona en su respuesta a esta pregunta, pero me gustaría enfatizar.

  1. Él es realmente bastante bueno en matemáticas. Esto realmente, realmente ayuda con ML.
  2. Experimenta y juega y generalmente no se rinde hasta que encuentra una manera de resolver el problema en cuestión.

Ambos puntos son muy importantes.

Sin embargo, lo más importante es que, en nuestras comunicaciones, ha demostrado que es creativo en lo que hace: en realidad no lo he verificado con él, pero estoy dispuesto a apostar a que juega con los conceptos que está aprendiendo, así como con las matemáticas. Detrás de eso. Esta es probablemente la razón por la que los dos puntos son ciertos en primer lugar.

Una forma de ser realmente bueno en algo (para algunas personas, de todos modos) es aprender a divertirse con eso.

Editar: Verificado con Conner que realmente juega con conceptos, no solo trabaja en ellos.

Edición 2: alguien me ha preguntado acerca de jugar y jugar con conceptos; no siempre han tenido éxito jugando con aprender cosas. Mi comentario fue que, en general, debe tener una base sólida en lo que está jugando y, por lo tanto, más exactamente, jugar / jugar le ayuda a extender lo que sabe y obtener experiencia que no puede obtener simplemente leyendo textos y documentos y haciendo problemas “regulares”. Tienes que tener algo para construir, para jugar.

More Interesting

¿Por qué alguien usaría un modelo de regresión basado en un árbol de decisión?

Cómo detectar si una imagen contiene uno o más rostros humanos

¿Cómo debo aprender el aprendizaje automático? ¿Puede proporcionar una hoja de ruta específica desde un principiante hasta un experto?

¿Cuál es la diferencia entre el análisis factorial y las técnicas de selección de características, como el análisis de componentes principales y la asignación de dirichlet latente?

¿Qué debería aprender primero para el aprendizaje automático y la autoeducación: cálculo, probabilidad, estadística o álgebra lineal?

¿Debería Facebook usar el aprendizaje automático para identificar a los usuarios con potencial de convertirse en un asesino en masa?

Cómo dominar el aprendizaje automático en el menor tiempo posible

Qué rama es mejor en THAPAR UNIVERSITY: Computer Science Core (COE) o Hons. ¿En el aprendizaje automático y el análisis de datos (CML)?

¿Cómo soluciona un bosque aleatorio los problemas de regresión (no normalidad, heterocedasticidad, multicolinealidad, valores atípicos, valores faltantes y variables categóricas)?

¿Cuáles son algunos problemas o preguntas de la vida real que el aprendizaje automático ha resuelto y que no se pueden resolver adecuadamente por otros medios?

¿Cómo se almacenan la mayoría de los conjuntos de datos para el aprendizaje automático a gran escala?

¿Cómo se compara Caffe 2 con TensorFlow?

Cómo interpretar una capa totalmente conectada como una capa convolucional para hacer predicciones densas de píxeles

¿Qué habilidades necesito para la IA?

Cómo entrenar algoritmos relacionados con IA sin una GPU decente