Inteligencia artificial con arduino
Proyectos arduino ai
Quiero averiguar qué sucede cuando llevamos el aprendizaje automático a dispositivos baratos y robustos que pueden tener todo tipo de sensores y trabajar en todo tipo de entornos. Y quiero que tú me ayudes. El tipo de IA que podemos meter en un sistema de 30 o 40 dólares no ganará a nadie en el Go, pero abre la puerta a aplicaciones que de otro modo ni siquiera podríamos imaginar.
En cuanto al hardware, puede que la Ley de Moore se esté agotando en lo que respecta a los procesadores de última generación, pero la fiesta no ha terminado en lo que respecta a los microcontroladores. Los microcontroladores basados en procesadores AVR de 8 bits dominaron los primeros años del ecosistema Arduino, por ejemplo, pero en los últimos años, los fabricantes de chips integrados han optado por chips más potentes basados en ARM. Ahora podemos poner suficiente potencia de procesamiento en estos dispositivos baratos y robustos para rivalizar con los ordenadores de sobremesa de mediados de los 90.
Pero afortunadamente para mi plan, Pete Warden y su equipo han hecho un trabajo increíble para llevar TensorFlow Lite a los chips basados en la familia de procesadores Cortex de ARM. Fue estupendo descubrirlo, porque en mi empresa de hardware de código abierto, Adafruit Industries, nuestro procesador favorito actual es el SAMD51 de 32 bits, que incorpora una CPU Cortex-M4. Hemos utilizado el SAMD51 como base para muchas de nuestras placas recientes y futuras compatibles con Arduino, incluyendo el PyGamer, un sencillo dispositivo de mano para juegos alimentado por batería. ¿Y si pudiéramos utilizarlo para poner literalmente la IA en manos de la gente?
Proyectos arduino uno ai
print(port(clf))Eso es todo: ahora tienes todo lo que necesitas para hacer la clasificación en tus proyectos Arduino.DEBES establecer la gamma a un valor determinado. El valor automático por defecto generará un errorAlternativas existentesExisten algunas alternativas a esta librería, pero sufren de algunas limitaciones:Mi esfuerzo fue encontrar una implementación que necesitara la menor cantidad posible de memoria: esto fue posible sacrificando el espacio de programa, pero eso es un problema menos frecuente ya que la RAM suele ser el factor más limitante. Si tu modelo llena el espacio de programa puedes volver a sklearn-porter (si tienes suficiente RAM, por supuesto).Uso en proyecto ArduinoHay dos métodos que tendrás que llamar para ejecutar las predicciones en tu proyecto:#include «model.h»
Base de datos arduino
El aprendizaje automático permite que los algoritmos informáticos mejoren automáticamente a través de una mayor experiencia. Ahora incluso se puede desplegar el modelo aprendido resultante en dispositivos de microcontroladores para que puedan implementar los mismos algoritmos.
Una configuración de refrigeración cuyo objetivo es mantener el enfriamiento de un ambiente cálido a xx grados, por lo que las predicciones se utilizan para tratar de anticipar cualquier acción a tomar, y los datos se registran de nuevo para mostrar las acciones que había que tomar.
Tenemos un gran Instructable sobre el uso de la CLI de vMicro en una máquina, y su activación desde Azure Dev Ops, permitiendo procesos de construcción personalizados, e incluso despliegues desde un sistema de trabajo en la nube + control de versiones.
Con todas las pestañas anteriores consideradas, es interesante darse cuenta de que con lo que ahora sabes puedes tener un equipo de desarrolladores completamente distribuido, junto con probadores, modeladores y recolectores de datos también.
Coche robótico arduino
La alta optimización del marco de trabajo permite que incluso el controlador de 8 bits del Arduino Uno implemente una RNA que puede ser entrenada en un tiempo moderado. Esto permite la creación de dispositivos personalizables que pueden adaptarse a la tarea en cuestión mediante el entrenamiento sin necesidad de utilizar un ordenador externo.
Se pueden desarrollar pequeños dispositivos de autoaprendizaje alimentados por baterías e independientes de una nube u otros dispositivos. Los datos de los sensores pueden procesarse allí donde se generan, directamente en el dispositivo. Los datos de entrenamiento pueden capturarse directamente en el dispositivo y utilizarse para el entrenamiento.
AIfES es comparable y compatible con los conocidos frameworks de ML de Python como TensorFlow, Keras o PyTorch, (actualmente con menos funcionalidad aunque se añaden nuevas características constantemente). La versión actual es compatible con las redes neuronales feedforward (FNN), que pueden ser completamente configuradas libremente. También integra ya funciones de activación comunes como ReLU, sigmoide o softmax. Una implementación completa de las redes neuronales convolucionales (ConvNet) seguirá en un futuro próximo.