¿Cómo debo proceder después de completar el curso de aprendizaje automático de Andrew Ng?

En los últimos años, la IA ha explotado, y especialmente desde 2015. Mucho de eso tiene que ver con la amplia disponibilidad de GPU que hacen que el procesamiento paralelo sea cada vez más rápido, más barato y más potente. También tiene que ver con el doble golpe simultáneo de almacenamiento prácticamente infinito y una avalancha de datos de cada banda (todo ese movimiento de Big Data): imágenes, texto, transacciones, datos de mapeo, lo que sea.

Estos son los tres términos que probablemente haya escuchado últimamente y, para ser lo más simple posible, podemos pensar en ellos en capas.

Las redes neuronales están en la parte inferior : son un tipo de arquitectura de computadora sobre la cual se construye la inteligencia artificial.

El aprendizaje automático es el siguiente : es un programa que puede ejecutar en una red neuronal, entrenando computadoras para buscar ciertas respuestas en montones de datos;

El aprendizaje profundo está en la cima : es un tipo particular de aprendizaje automático que solo se hizo popular en la última década, en gran parte gracias a dos nuevos recursos: poder de procesamiento barato y abundante información (también conocida como Internet).

Creo que lo que debe hacer después de haber completado un curso de aprendizaje automático:

1) Elija el lenguaje de programación correcto para un aprendizaje y prácticas de IA más profundos

Pitón

Python es uno de los lenguajes de programación más utilizados en el campo de la inteligencia artificial gracias a su simplicidad. Se puede usar sin problemas con las estructuras de datos y otros algoritmos de IA utilizados con frecuencia.

La elección de Python para proyectos de IA también se debe al hecho de que hay muchas bibliotecas útiles que se pueden usar en IA. Por ejemplo, Numpy ofrece capacidad de cálculo científico, Scypy para computación avanzada y Pybrain para aprendizaje automático en Python.

Tampoco tendrá problemas para aprender Python para AI, ya que hay toneladas de recursos disponibles en línea.

Java

Java también es una gran opción. Es un lenguaje de programación orientado a objetos que se enfoca en proporcionar todas las características de alto nivel necesarias para trabajar en proyectos de IA, es portátil y ofrece recolección de basura incorporada. La comunidad Java también es un punto a favor, ya que habrá alguien que lo ayudará con sus consultas y problemas.

Java también es una buena opción, ya que ofrece una manera fácil de codificar algoritmos, y la IA está llena de algoritmos, ya sean algoritmos de búsqueda, algoritmos de procesamiento de lenguaje natural o redes neuronales. Sin mencionar que Java también permite la escalabilidad, que es una característica imprescindible para proyectos de IA.

Ceceo

A Lisp le va bien en el campo de la IA debido a sus excelentes capacidades de creación de prototipos y su soporte para expresiones simbólicas. Es un lenguaje de programación potente y se utiliza en proyectos importantes de inteligencia artificial, como Macsyma, DART y CYC.

El lenguaje Lisp se usa principalmente en el subcampo Machine Learning / ILP debido a su usabilidad y estructura simbólica. Peter Norvig, el famoso científico informático que trabaja extensamente en el campo de la IA, y también el escritor del famoso libro de IA, “Inteligencia artificial: un enfoque moderno”, explica por qué Lisp es uno de los principales lenguajes de programación para el desarrollo de IA en una Quora respuesta

Prólogo

Prolog está junto a Lisp cuando se trata de utilidad y usabilidad. Según la literatura, Prolog Programming for Artificial Intelligence , Prolog es uno de esos lenguajes de programación para algunos mecanismos básicos, que pueden ser extremadamente útiles para la programación de IA. Por ejemplo, ofrece coincidencia de patrones, retroceso automático y mecanismos de estructuración de datos basados ​​en árboles. La combinación de estos mecanismos proporciona un marco flexible para trabajar.

Prolog se usa ampliamente en sistemas expertos para IA y también es útil para trabajar en proyectos médicos.

C ++

C ++ es el lenguaje de programación más rápido del mundo. Su capacidad de hablar a nivel de hardware permite a los desarrolladores mejorar el tiempo de ejecución de sus programas. C ++ es extremadamente útil para proyectos de IA, que son sensibles al tiempo. Los motores de búsqueda, por ejemplo, pueden utilizar C ++ ampliamente.

En AI, C ++ se puede usar para técnicas estadísticas de AI como las que se encuentran en las redes neuronales. Los algoritmos también se pueden escribir extensamente en C ++ para una ejecución rápida, y la IA en los juegos está codificada principalmente en C ++ para una ejecución y un tiempo de respuesta más rápidos.

Elegir un lenguaje de programación para su proyecto de IA depende en gran medida del subcampo. Por lo tanto, antes de elegir un lenguaje de programación, asegúrese de que se pueda utilizar ampliamente y no parcialmente.

2) Comience a practicar viendo un video tutorial como lo mencionó Amol Umbarkar.

Aquí hay buen material para el autoaprendizaje:

3) Encuentra un mentor

https://www.codementor.io/artifi…

4) Encuentra un buen libro de IA que te ayudará a mantenerte en contacto con la tecnología actual.

https://www.amazon.ca/Singularit…

https://www.amazon.ca/Artificial…

https://www.amazon.ca/Superintel…

https://www.amazon.ca/How-Create…

4) Proyecto de IA para la práctica

Aquí hay 6 proyectos divertidos de aprendizaje automático para principiantes. Puede completar cualquiera de ellos en un solo fin de semana, o expandirlos en proyectos más largos si los disfruta .

1. Gladiador de aprendizaje automático

2. Jugar Money Ball

3. Predecir los precios de las acciones

4. Enseñe a una red neuronal a leer la escritura

5. Investigar Enron

6. Escribir algoritmos ML desde cero

Me enfrenté a la misma pregunta cuando comencé a incursionar en ML. Los siguientes pasos podrían ser

  • Aprenda Python si aún no lo sabe (busque academia de códigos o campamento de datos)
  • comience con tutoriales prácticos: busque en github. Elija una biblioteca para comenzar. Para .eg scikit
  • Elija un libro como Programming Collective Intelligence (libro de cocina para bloques de construcción básicos: le enseña a codificar su propio motor de búsqueda, descenso de gradiente, red neuronal, etc.)
  • Practica muchas técnicas de manipulación de datos. Esta es la parte en la que pasarás una buena cantidad de tiempo.

También puedes suscribirte en AmpLabs – Mejora tu juego. Esto es algo en lo que he estado trabajando para crear un viaje desde un curso abierto a un trabajo de tiempo completo. Pronto tendremos un lanzamiento beta y la plataforma se centrará en el aprendizaje práctico en el navegador con muchos ejercicios.

More Interesting

Dado que los modelos pueden ser entrenados en datos sintéticos, ¿podemos usar el Entrenamiento Adversario para hacer que las imágenes de prueba sean más sintéticas?

¿Cuál es el mejor marco de aprendizaje profundo para Apache Spark?

¿Qué hace que una computadora sea única? ¿Es el HDD? Si es así, ¿eliminarlo y ponerlo en otra máquina hace que esa máquina sea la misma que la original?

¿LinkedIn utiliza Deep Learning?

¿A qué grupo de clasificadores pertenece el MulticlassClassifier que se usa en Weka?

¿Qué tan útil es la regresión del proceso gaussiano? ¿Tienes un buen ejemplo?

¿Debería incluirse el error de salida en la retropropagación en el bucle?

¿Qué otros algoritmos / métodos se pueden usar como alternativa al algoritmo vecino más cercano para la medición de distancia y cuál funciona mejor que NN?

¿Por qué se usaría H2O.ai sobre la herramienta de aprendizaje automático scikit-learn?

¿Qué tan útiles son los límites de convergencia en la aplicación práctica del aprendizaje automático?

¿Qué es la agrupación?

¿Qué significa realmente el valor semilla en el algoritmo de aprendizaje automático?

En la curva ROC, cualquier punto es resultado del modelo en un parámetro particular. No estoy claro por qué el adivinador aleatorio está en x = y y no siempre (0.5, 0.5). ¿También cómo interpretar el área bajo la curva?

¿Cuánto importa el aprendizaje automático en ciencia de datos?

¿Cómo calcula la regresión logística de liblinear los gradientes (por ejemplo, diferenciación numérica o automática)?