¿Cuál podría ser un proyecto interesante en Python para aprender inteligencia artificial?

Lo más cercano a la IA general que tenemos ahora está disponible públicamente, documentado y abierto para todos.

El aprendizaje estadístico es una cueva sin fondo en la que puedes explorar todo lo que quieras y no llegar a la IA. Sin embargo, no está de más saber algo, solo para poder hacer las cosas más rápido.

Pero yo divago. Aquí está la plataforma: OpenAI Gym: un juego de herramientas para desarrollar y comparar algoritmos de aprendizaje de refuerzo

Los proyectos ya están diseñados para ti, así que solo te daré algunas ideas.

Si hace clic en “Entornos”, verá una lista de grupos de desafíos para sus algoritmos de IA. Estos entornos incluyen juegos de mesa, equilibrio del péndulo y cosas poco prácticas en general.

Pero hay un conjunto de desafíos que, creo, pueden marcar una verdadera diferencia una vez que obtenga algunos algoritmos de trabajo para ellos.

Sí, estoy hablando de Doom.

¿Por qué Doom?

Bueno, porque es muy divertido. Pensamos que AI funcionaría y jugaremos juegos, pero ahora trabajamos y AI juega juegos, ¿no es irónico? A pesar de ser un videojuego, está muy cerca de lo que esperamos de los algoritmos de autoaprendizaje para aprender, cómo captar patrones complejos y tomar decisiones basadas no en algunos conjuntos de reglas codificadas en él, sino en los conceptos aprendidos por una máquina misma. .

Una vez que su algoritmo aprenda a jugar a Doom, podrá hacer prácticamente cualquier otra cosa si recibe un entrenamiento adecuado, porque dicho algoritmo sería muy adaptable.

La complejidad aumenta cuando intentas generalizar entre tareas, por ejemplo, entrenar a tu robot para luchar con el lanzacohetes cuando los enemigos te atacan desde todas partes. Incluso esto está bastante lejos de la inteligencia real, pero es un gran paso en la dirección correcta.

Herramientas sugeridas

Abra AI Gym para ejecutar simulaciones

Numpy para manejar matemáticas vectoriales

TensorFlow para construir el motor

Matplotlib para visualizar el proceso de aprendizaje.

Alguna biblioteca para grabar el juego para hacer demos y depurar cosas

¿Qué pasa si es una escuela / proyecto de investigación?

Entonces tu proyecto va a ser súper radical. En este momento, algunas de las personas más inteligentes de Facebook AI Research trabajan en bots de StarCraft respaldados por redes neuronales. Cite sus documentos, explique cómo el aprendizaje por refuerzo se adapta a cualquier tarea humana y brinde pruebas contundentes de que los métodos desarrollados por usted están trabajando en cualquier entorno … Doom produce las demostraciones más interesantes.

Batiendo el juego

En primer lugar, deberá leer los tutoriales de TensorFlow para poder codificar las soluciones. El código es bastante detallado, pero la mayor parte solo declara algunas variables.

Una vez que llegue a codificar el bot, cuando no tenga ni idea, consulte este libro: http://people.inf.elte.hu/lorinc…

Explicará los conceptos básicos y las advertencias principales. A veces, las preguntas más complejas se responden en documentos de DeepMind y por un grupo de investigación de la Universidad de Toronto (google Mnih et al.).

Intente hacer un proyecto bastante simple como desarrollar un sistema de aprendizaje automático estadístico que pueda ser entrenado para clasificar datos de un flujo de datos en categorías seleccionadas. Esta sería una muy buena manera de obtener una introducción manejable al área de la inteligencia artificial. Especialmente si nunca ha tenido experiencia previa en el desarrollo de aplicaciones basadas en inteligencia artificial. Robotronics LLC | Facebook

Berkeley tiene un gran contenido en IA. Incluyendo un proyecto que puede crear por su cuenta con instrucciones.

Código Python AIMA