Aprendizaje automático en el desarrollo móvil: perspectivas y descentralización

¡Buenos días Habr!

No tenemos nada que añadir al título del artículo en nuestra notificación previa, por lo que todos están invitados inmediatamente al gato. Leer y comentar.

Aprendizaje automático en el desarrollo móvil: perspectivas y descentralización

Los profesionales del desarrollo móvil se beneficiarán de los cambios revolucionarios que hoy tienen para ofrecer. aprendizaje automático en dispositivos. La cuestión es cuánto mejora esta tecnología cualquier aplicación móvil, es decir, proporciona un nuevo nivel de comodidad para los usuarios y les permite utilizar activamente funciones potentes, por ejemplo, para brindar las recomendaciones más precisas. basado en geolocalizacióno detectar instantáneamente enfermedades de las plantas.

Este rápido desarrollo del aprendizaje automático móvil es una respuesta a una serie de problemas comunes que hemos sufrido en el aprendizaje automático clásico. De hecho, todo es obvio. En el futuro, las aplicaciones móviles requerirán un procesamiento de datos más rápido y una mayor reducción de la latencia.

Quizás ya te hayas preguntado por qué Aplicaciones móviles impulsadas por IANo se puede simplemente ejecutar inferencias en la nube. En primer lugar, las tecnologías de la nube dependen de nodos centrales (imagínese un enorme centro de datos con un amplio almacenamiento de datos y una gran potencia informática). Este enfoque centralizado no puede manejar velocidades de procesamiento suficientes para crear experiencias móviles fluidas impulsadas por el aprendizaje automático. Los datos deben procesarse de forma centralizada y luego enviarse de vuelta a los dispositivos. Este enfoque requiere tiempo, dinero y no garantiza la privacidad de los datos en sí.

Entonces, una vez delineados estos beneficios clave del aprendizaje automático móvil, echemos un vistazo más de cerca a por qué la revolución del aprendizaje automático que se desarrolla ante nuestros ojos debería ser de su interés personal como desarrollador móvil.

Reducir la latencia

Los desarrolladores de aplicaciones móviles saben que una mayor latencia puede ser una mancha negra para un programa, sin importar cuán buenas sean sus características o cuán respetable sea la marca. Anteriormente, en los dispositivos Android había Grave retraso en muchas aplicaciones de vídeo, debido a que la visualización de video y audio a menudo no estaba sincronizada. Asimismo, un cliente de redes sociales con alta latencia puede hacer que la comunicación sea una auténtica tortura para el usuario.

La implementación del aprendizaje automático en el dispositivo se está volviendo cada vez más importante precisamente debido a problemas de latencia como estos. Imagínate cómo funcionan los filtros de imágenes para redes sociales, o las recomendaciones de restaurantes basadas en la geolocalización. En este tipo de aplicaciones, la latencia debe ser mínima para que funcione al más alto nivel.

Como se mencionó anteriormente, el procesamiento en la nube a veces puede ser lento y el desarrollador quiere que la latencia sea cercana a cero para que las capacidades de aprendizaje automático de una aplicación móvil funcionen correctamente. El aprendizaje automático en los dispositivos abre capacidades de procesamiento de datos que realmente pueden reducir la latencia a casi cero.

Los fabricantes de teléfonos inteligentes y los gigantes del mercado tecnológico están empezando a darse cuenta poco a poco de esto. Durante mucho tiempo, Apple siguió siendo líder en esta industria, desarrollando chips cada vez más avanzados para teléfonos inteligentes que utilizan su sistema Bionic, que implementa Neural Engine, que ayuda a impulsar redes neuronales directamente en el dispositivo, al tiempo que logra velocidades increíbles.

Apple también continúa desarrollando paso a paso Core ML, su plataforma de aprendizaje automático para aplicaciones móviles; en biblioteca TensorFlow Lite soporte agregado para GPU; Google continúa agregando funciones precargadas a su plataforma de aprendizaje automático ML Kit. Con estas tecnologías, puede desarrollar aplicaciones que le permitan procesar datos a la velocidad del rayo, eliminar retrasos y reducir la cantidad de errores.

Esta combinación de precisión y experiencias de usuario fluidas es una métrica clave que los desarrolladores de aplicaciones móviles deben considerar al introducir capacidades de aprendizaje automático en sus aplicaciones. Y para garantizar dicha funcionalidad, se requiere llevar el aprendizaje automático a los dispositivos.

Seguridad y privacidad mejoradas

Otro gran beneficio de la informática de punta que no se puede subestimar es cuánto mejora la seguridad y privacidad del usuario. Garantizar la seguridad y privacidad de los datos en la aplicación es parte integral de las tareas del desarrollador, especialmente teniendo en cuenta la necesidad de cumplir con el GDPR (Reglamento General de Protección de Datos), nuevas leyes europeas, que sin duda afectarán la práctica del desarrollo móvil. .

Debido a que no es necesario enviar los datos a la nube para su procesamiento, los ciberdelincuentes son menos capaces de explotar las vulnerabilidades creadas durante la fase de transferencia; por lo tanto, se mantiene la integridad de los datos. Esto facilita que los desarrolladores de aplicaciones móviles cumplan con las normas de seguridad de datos del RGPD.

El aprendizaje automático en dispositivos también permite la descentralización, de forma muy similar a la cadena de bloques. En otras palabras, es más difícil para los piratas informáticos lanzar un ataque DDoS en una red conectada de dispositivos ocultos que llevar a cabo el mismo ataque en un servidor central. Esta tecnología también puede resultar útil a la hora de trabajar con drones y para controlar el cumplimiento de la legislación.

Los chips para teléfonos inteligentes de Apple mencionados anteriormente también ayudan a mejorar la seguridad y la privacidad del usuario; por ejemplo, pueden servir como base para Face ID. Esta función del iPhone funciona con una red neuronal implementada en los dispositivos que recopila datos de las diferentes representaciones del rostro de un usuario. Por tanto, la tecnología sirve como método de identificación extremadamente preciso y fiable.

Este y el hardware más nuevo habilitado para IA allanarán el camino para interacciones más seguras entre el usuario y el teléfono inteligente. De hecho, los desarrolladores obtienen una capa adicional de cifrado para proteger los datos del usuario.

No se requiere conexión a Internet

Dejando a un lado los problemas de latencia, enviar datos a la nube para procesarlos y sacar conclusiones requiere una buena conexión a Internet. A menudo, especialmente en los países desarrollados, no hay necesidad de quejarse de Internet. Pero ¿qué hacer en zonas donde la conexión es peor? Cuando el aprendizaje automático se implementa en los dispositivos, las redes neuronales viven en los propios teléfonos. De esta forma, el desarrollador puede implementar la tecnología en cualquier dispositivo y en cualquier lugar, independientemente de la calidad de la conexión. Además, este enfoque conduce a democratizar las capacidades de aprendizaje automático.

Cuidado de la salud es una de las industrias que podría beneficiarse particularmente del aprendizaje automático en el dispositivo, ya que los desarrolladores podrán crear herramientas que verifiquen los signos vitales o incluso proporcionen cirugía robótica sin conexión a Internet. Esta tecnología también será útil para los estudiantes que quieran acceder a materiales de clase sin conexión a Internet, por ejemplo, mientras se encuentran en un túnel de transporte.

En última instancia, el aprendizaje automático en dispositivos proporcionará a los desarrolladores las herramientas para crear herramientas que beneficiarán a los usuarios de todo el mundo, independientemente de su situación de conexión a Internet. Teniendo en cuenta que la potencia de los nuevos smartphones será al menos tan potente como la de los actuales, los usuarios se olvidarán de los problemas de retrasos al trabajar con la aplicación sin conexión.

Reducción de costos para su negocio

El aprendizaje automático en dispositivos también puede ahorrarle una fortuna al no tener que pagar a contratistas externos para implementar y mantener muchas de las soluciones. Como se mencionó anteriormente, en muchos casos puedes prescindir tanto de la nube como de Internet.

Los servicios en la nube específicos de GPU e IA son las soluciones más caras que se pueden adquirir. Cuando ejecutas modelos en tu dispositivo, no tienes que pagar por todos estos grupos, gracias a que hoy en día hay cada vez más teléfonos inteligentes avanzados equipados con procesadores neuromórficos (NPU).

Al evitar la pesadilla del pesado procesamiento de datos que ocurre entre el dispositivo y la nube, ahorras enormemente; Por tanto, es muy rentable implementar soluciones de aprendizaje automático en los dispositivos. Además, ahorra dinero porque los requisitos de ancho de banda de su aplicación se reducen significativamente.

Los propios ingenieros también ahorran mucho en el proceso de desarrollo, ya que no tienen que montar ni mantener infraestructura de nube adicional. Al contrario, es posible lograr más con un equipo más pequeño. Así, la planificación de recursos humanos en los equipos de desarrollo es mucho más efectiva.

Conclusión

Sin duda, en la década de 2010, la nube se convirtió en una verdadera bendición, al simplificar el procesamiento de datos. Pero la alta tecnología se está desarrollando exponencialmente y el aprendizaje automático en los dispositivos pronto puede convertirse en el estándar de facto no sólo en el campo del desarrollo móvil, sino también en el Internet de las cosas.

Con latencia reducida, seguridad mejorada, capacidades fuera de línea y costos generales más bajos, no sorprende que los actores más importantes en el desarrollo móvil estén apostando fuerte por esta tecnología. Los desarrolladores de aplicaciones móviles también deberían examinarlo más de cerca para mantenerse al día.

Fuente: habr.com

Añadir un comentario