Microsoft apunta hacia las nuevas tendencias que se vienen en los próximos años, el de la inteligencia artificial y el aprendizaje automático. Durante el día de la fecha Microsoft hizo el anuncio de una nueva API llamada WinML que pretende ayudar a los desarrolladores a aprovechar estas dos facetas en el sistema operativo Windows 10.
Microsoft anuncia WinML para desarrollar la IA en Windows
WinML es un nuevo conjunto de APIs que permitirá a los desarrolladores aprovechar las capacidades completas de cualquier dispositivo Windows 10 para utilizar modelos de aprendizaje automático pre-entrenado, permitiendo que las tareas de IA se descarguen de la nube.
La primera razón es el rendimiento. A pesar de la enorme potencia de computación disponible en la nube, todavía vivimos en un mundo donde mover datos a la nube puede ser prohibitivo en términos de coste y velocidad. La latencia de cualquier conexión de red es mas más lenta que el acceso a la memoria local, y trabajar con conjuntos de datos masivos puede ser difícil sin interconexiones costosas, dedicadas y de alto ancho de banda. Realizar las tareas de computación localmente puede mejorar significativamente el rendimiento gracias a la menor latencia y ofrecer resultados en tiempo real. Los costes operativos se pueden ahorrar reduciendo el ancho de banda de la red, así como reducir el tiempo de cálculo en la nube.
El nuevo conjunto de API de IA de Microsoft ofrece varias ventajas clave que deberían ayudar a los desarrolladores a integrarlas en sus productos. Podría decirse que lo más importante es que la API hace todo el trabajo pesado para el desarrollador, por lo no se tendrían que preocupar de qué tipo de hardware está disponible en cualquier máquina en la que vaya a funcionar su aplicación. El motor WinML aprovechará el hardware de forma dinámica y creará código para obtener el máximo rendimiento disponible desde cualquier hardware en el que se esté ejecutando el dispositivo.
El motor está construido en Direct 3D, y si el sistema tiene una GPU compatible con DX12, utilizará los shaders de cálculo DX12 dinámicamente. Si tienes una GPU masiva con mucha VRAM, la carga de trabajo se descargará en la GPU. Si una GPU DX12 no está disponible, o el rendimiento es un problema debido a los gráficos integrados, el motor también puede utilizar la potencia de cálculo de la CPU.
Tal vez lo más interesante sea que el motor WinML funcionará incluso en ordenadores basados en SnapDragon 835, o incluso en dispositivos IoT. Si tiene mucho rendimiento disponible, lo aprovechará, pero si el sistema es un dispositivo de baja potencia, seguirá funcionando.