Como estudiante de CS de segundo año, tienes la oportunidad de ingresar en el campo que desees, incluso si está construyendo tu propia empresa para cuando termines la universidad. Ahora se reduce a lo dedicado y persistente que eres. Las áreas en las que puede convertirse en un experto, solo en el tercer año de su licenciatura son:
– Aprendizaje automático, aprendizaje por refuerzo
– Optimización matemática
– Visión por computadora y procesamiento de imágenes (y otros campos similares relacionados con las señales y el habla)
– Robótica (robótica basada en visión; planificación de movimiento y trayectoria; controles)
Ahora no voy a decirle que haga programación ni le daré ningún puntero, porque supongo que lo hará junto con otras cosas. Además, como estudiante de CS, debes ser bueno en algunos lenguajes de programación. Sin embargo, le diré que aprenda algunos conceptos básicos de MATLAB. A veces, debe realizar un prototipo rápido de un algoritmo / investigación, y es bueno hacerlo en MATLAB. Además, puede ser útil en su pasantía de tercer año.
- ¿Cuáles son exactamente los pasos de preparación y finalización de tesis?
- ¿Qué cursos de ciencias o ingeniería debe tomar una especialización en matemáticas aplicadas?
- Cuando me gradúe, tendré 24 años. Para cuando termine algunos requisitos previos, tendré 26 años. ¿Debo inscribirme en la escuela de medicina o es demasiado viejo?
- ¿Qué tipo de cursos relacionados con las matemáticas puedo esperar si quiero obtener un doctorado en informática teórica?
- ¿Cuántos años tendría que estudiar para ser médico?
Camino al aprendizaje automático:
Cualquier tipo de estudio en este campo comenzará con el estudio del álgebra lineal. Puedes ir a las video conferencias de Gilbert Strang en youtube. Los otros requisitos previos son la probabilidad y el cálculo que podría haber estudiado en su clase 11 y 12, eso es suficiente. Ahora para estudiar el aprendizaje automático hay varias opciones. Nadie puede decirle cuál es la forma óptima de hacerlo (en esta etapa). Esto se debe a que solo usted sabe cuán fuerte es su formación matemática. Si crees que eres lo suficientemente fuerte, puedes ir a CS229 para aprender el aprendizaje automático. Incluso si eres muy fuerte, pero aún así quieres aprenderlo rápidamente sin entrar demasiado en matemáticas, puedes ir a Coursera y ver el curso de aprendizaje automático de Andrew Ng. CS229 también es su curso (supongo que en 2007, en Stanford).
La otra es la difícil: tome un libro estándar de aprendizaje automático y termínelo. Utilicé CM Bishop: reconocimiento de patrones y aprendizaje automático, y sé que es muy bueno. También puede tomar el aprendizaje automático de estadísticas de Tibshirani (gratis en línea). El mejor libro hoy en día creo que es Machine Learning A Probabilistic Perspective.
Como eres estudiante de CS, es imprescindible que tengas al menos algún conocimiento de IA.
Para estudiar el aprendizaje por refuerzo, el aprendizaje por refuerzo: una introducción es la mejor fuente. Obtendrá los conocimientos básicos en este campo. Ahora la segunda edición de los libros también está disponible y puede encontrarla en el sitio web de Rich.
Camino a la optimización matemática:
Es un campo tan vasto que es difícil precisar lo que realmente debería estudiar. Sin embargo, una cosa es segura: si lo aprende durante su licenciatura, ya nunca encontrará nada difícil: es tan intensivo en matemáticas. Con la optimización, desarrollará una mejor comprensión de los algoritmos de aprendizaje automático. Para estudiar este campo, no hay sustituto para el trabajo duro y la persistencia. No hay una manera fácil, solo hay una manera larga y difícil. Tendrás que pasar por los libros.
Debes ser muy, muy fuerte en álgebra lineal y cálculo (multivariante), y el conocimiento de las estadísticas y la probabilidad también puede ayudar (pero no se requiere demasiado). Ahora, como dije, este campo es muy rápido: optimización convexa, optimización general no convexa, programación de enteros, programación de enteros mixtos, optimización combinatoria.
Si puede reducir su enfoque a la optimización convexa, entonces aprenderá numerosos métodos de optimización, pero enfocado hacia funciones y restricciones objetivas convexas (restringidas a restricciones de igualdad lineal y restricciones de desigualdad convexas). Una buena y única forma de aprenderlo es usando el libro de Boyd. Después de aprender la optimización convexa, encontrará su uso cuando continúe y aplique el aprendizaje automático. Además, si tiene algún problema y descubre que hay alguna función objetiva que debe minimizarse, encontrará este conocimiento muy útil allí. Otro libro (sé que es bueno mientras lo leo) que es bueno para la programación general no convexa es la optimización numérica de J. Nocedal y SJ Wright. Este libro le presentará una variedad de algoritmos de optimización y los cubrirá en profundidad.
Los dos libros anteriores son de naturaleza altamente matemática. Tampoco los utilizará hasta que estudie el aprendizaje automático. Pero si estudia el aprendizaje automático y luego la optimización matemática, puede comenzar a hacer algunas cosas serias con el comienzo de su tercer año de pregrado. También puede asegurar una pasantía en un laboratorio de IA muy reputado en los EE. UU.
Camino hacia la visión por computadora y el procesamiento de imágenes:
Ahora no soy un experto en esta área, por lo que no puedo profundizar mucho. Además, no podré proporcionar una buena fuente en línea para esto. Pero lo que sí sé es que muchos estudiantes terminan haciendo (que se enfoca en el aprendizaje automático) visión por computadora y procesamiento de imágenes. Para el procesamiento de imágenes, (nuevamente conozco un libro porque lo revisé) puedes estudiar el libro de González y Woods. También hay un libro de MATLAB de los mismos autores que le permitirá programar todos los métodos que aprende en ese libro anterior, en MATLAB.
Una vez que estudie el procesamiento de imágenes (le llevará 1 mes como máximo), desarrollará una comprensión general de este campo. Luego puede reducir su enfoque a, por ejemplo, comprensión y reconocimiento de escenas, detección / reconocimiento de objetos, detección / reconocimiento de rostros, detección / reconocimiento de carreteras, etc. También puede enfocarse en el cálculo del mapa de disparidad. Por lo tanto, puede comenzar su viaje en el campo de la visión por computadora. No estoy seguro de una buena fuente, aparte de los trabajos de investigación. Nuevamente, si tiene buenos antecedentes en álgebra lineal, probabilidad y cálculo, con algún conocimiento de aprendizaje automático, podrá leer y comprender la mayoría de los trabajos de investigación en este campo.
Puede haber algunos cursos en las mejores universidades, y usted puede verlos, generalmente enumerarán algunos libros para estudiar. Entonces puedes elegir uno de esos libros. Pero leer trabajos de investigación es imprescindible.
Del mismo modo, puede estudiar otras áreas, como el procesamiento de señales, el procesamiento de voz, etc. Nuevamente, aquí encontrará muy útil el conocimiento del aprendizaje automático. Si ya ha pasado por la optimización, antes de entrar en estas áreas, podrá rendir mejor y hacer una investigación seria.
Camino a la robótica:
Ahora, si quieres entrar en la robótica basada en la visión, primero tendrás que ser bueno en visión. Si desea ponerse en marcha y planificar el camino, puede entrar en este campo leyendo tantos trabajos de investigación como sea posible. Leer los trabajos de investigación nuevamente requerirá que tenga una sólida base (en negrita porque no podrá comprender la mayoría de los trabajos de investigación si no tiene los requisitos previos) en álgebra lineal y cálculo. También se requiere cierto conocimiento de cinemática, dinámica y controles (puede buscar en google y encontrar cualquier curso universitario corto o un libro para hacerlo).
En resumen, los algoritmos de planificación de movimiento y trayectoria permiten a los robots navegar en un entorno (planificando su trayectoria) evitando obstáculos. Este es un campo muy interesante y desafiante. Es posible que desee leer documentos que se centran en la planificación de movimiento en línea, en lugar de fuera de línea. Aunque fuera de línea también es una buena área, pero si quieres involucrarte en una investigación de vanguardia en este campo, concéntrate en los algoritmos en línea. Los vehículos robóticos futuros utilizarán algoritmos en línea, así que concéntrese en los planificadores de movimiento en línea desde el principio. Puede ver algunos de los otros métodos en RRT, RRT *, PRM, etc. Si desea entrar en la planificación de movimiento basada en la red, puede ir y leer los documentos de Maxim Likhachev. También es posible que desee comprender (aunque no es muy útil, pero su conocimiento es muy útil) los posibles métodos de campo: la respuesta de Sanjeev Sharma a la robótica: ¿Cuáles son algunos buenos recursos sobre el método de campo potencial?
También hay otras formas de entrar en la robótica (no son mis áreas de especialización, así que no puedo entrar en detalles): sistemas integrados / electrónica, controles, etc. (lea “etc.” ya que no sé qué decir) .
Periodo de tiempo
Si has llegado a este punto mientras lees esto, te estarás preguntando si acabo de escribir algunas tonterías que no tienen ningún sentido para un estudiante universitario. Algunos dirán que estoy loco por sugerirle esto a un estudiante de segundo año. Pero para mí, todas esas cosas son factibles. O quizás se pregunte cuál es el marco de tiempo requerido para hacer todo eso. Asi que aqui esta:
Álgebra lineal a fines de agosto de 2015: puede comenzar a estudiar álgebra lineal y la terminará en 3 semanas como máximo. Solo mire las conferencias en video con cuidado. Básicamente, para fines de agosto de 2015, tendrá un conocimiento sólido de álgebra lineal.
Aprendizaje automático a finales de noviembre de 2015: digo noviembre suponiendo que esté estudiando aprendizaje automático a través de un libro. Si está tomando un curso en línea, puede hacerlo a fines de octubre o fines de septiembre. Si está tomando CS229, nuevamente a fines de noviembre. Si también estás enfocado en tus cursos universitarios, puedes tomar hasta el final de diciembre para terminar el aprendizaje automático. Todo diciembre será gratis sin ninguna universidad, por lo que tendrás una gran cantidad de tiempo para hacerlo.
Optimización convexa: puede terminar los primeros 8 capítulos del libro de optimización convexa, suponiendo que haya terminado el álgebra lineal en agosto y el aprendizaje automático en (como máximo) diciembre. Puede comenzar a estudiar el libro de optimización convexa de Stephen Boyd y Vandenberghe, a partir de enero, y puede terminarlo a fines de febrero, los primeros 8 capítulos. La última sección del libro, puede tomar todo el tiempo que desee. Con los primeros 8 capítulos, habrá desarrollado todo el conocimiento necesario para comprender cualquier tipo de aprendizaje automático; por ejemplo, comprender las condiciones de KKT, la holgura complementaria, la teoría de la dualidad, etc., y aprenderá por qué exactamente SVM se llama máquina dispersa o máquina “vector de soporte”, este video a continuación, sin embargo, no es necesario mirarlo, solo para hacerle saber qué entenderá claramente si los primeros 8 capítulos lo harán):
Si no desea hacer la última sección del libro, le aconsejaré que haga solo el capítulo 9 e implemente todos los algoritmos que contiene. Aprenderá muchas cosas, como por qué el método de Newton (o los métodos de segundo orden) requieren muy pocas iteraciones en comparación con los métodos de primer orden. Comprenderá cómo seleccionar el tamaño del paso para sus algoritmos de optimización (búsqueda de línea de retroceso).
Si desea estudiar más la optimización, puede estudiar el libro de J. Nocedal y SJ Wright, Optimización numérica. Este libro llevará algún tiempo. Esto consumirá 4 meses. Puede tomar más tiempo, pero al mismo tiempo estudiar robótica si lo desea (si esa es el área en la que desea ingresar) o cualquier otra área como visión por computadora (desde el punto de vista de la investigación), procesamiento de señales (punto de vista de la investigación)
Marco de tiempo para la robótica / visión por computadora / procesamiento de señal-habla: Estos son campos de investigación. Entonces no hay un marco de tiempo. Pero puede decir desde febrero hasta finales de agosto para leer tantos periódicos como sea posible. Desarrollará una comprensión general de cualquiera de estos campos y la investigación de vanguardia (por ejemplo, en planificación de movimiento y trayectoria; esta es mi área, por lo que puedo decir que comprenderá algoritmos buenos y malos y dónde está el actual la investigación se dirige a).
Ahora que
Ahora que ha hecho todo eso, puede comenzar a utilizar sus conocimientos y aplicarlos en cualquier proyecto. Emprenda un proyecto de investigación (autoiniciado) e intente resolver un problema abierto realmente desafiante. Aplique todo el conocimiento que ha reunido en el último año.
Al mismo tiempo, también puede comenzar a solicitar una pasantía en un reputado laboratorio de IA / Visión / Robótica en la universidad de EE. UU. Además, con todo este conocimiento, estoy seguro de que si escribe correos electrónicos de manera adecuada, obtendrá respuesta a más del 90% de sus correos electrónicos. Incluso si no te invitan a un pasante.
Por conseguir un pasante
¿Un estudiante de 6 punteros que no pertenezca a CS de los mejores IIT obtendrá una pasantía extranjera en su tercer año? (Respuesta general, nada con CS o no CS, pero conocimiento)
La respuesta de Sanjeev Sharma a ¿Qué tipo de pasantías puede hacer un ingeniero metalúrgico y de materiales de segundo año de IIT Madras?
Además, con todo este conocimiento, con 1 año (3er año) para investigación, y luego una pasantía, tendrá un CV muy sólido: puede postularse a la escuela de posgrado, o puede solicitar cualquier tipo de trabajo, o puede invierta todo el cuarto año en la construcción de su startup (basada en IA / robótica).
¡Buena suerte!