Fotos para iOS y macOS cuenta con una característica que nos permite organizar nuestra fotografías según las personas que aparezcan en ellas. Para ello Apple cuenta con un algoritmo capaz de detectar caras y reconocer a diferentes personas según sus rasgos. ¿Cómo consigue esto? Una nueva publicación en su blog 'Machine Learning Journal' nos desvela más detalles.
Con el título "An On-device Deep Neural Network for Face Detection", el último artículo de la página de inteligencia artificial de Apple nos detalla el proceso de reconocimiento de rostros en fotografías. Aprovechando la potencia de la CPU y la GPU de los dispositivos iOS y macOS, se consigue diferenciar entre dos personas distintas.
El mayor problema de Apple en este sentido es la privacidad, debido a que busca siempre ofrece la mayor seguridad posible, las fotografías no se procesan en servidores en la nube con potencia de sobra, sino que lo hacen en nuestros dispositivos. Gracias a las CPUs y GPUs dedicadas, el proceso es más sencillo. Además de esto, las fotografías antes de ser subidas a la nube para almacenarlas en iCloud Photo Library, son cifradas en el dispositivo y tan sólo pueden ser descifradas por otro dispositivo con la misma cuenta de iCloud. Ni siquiera Apple puede ver tus fotografías.
Según Apple:
Los modelos de aprendizaje profundo deben ser enviados como parte del sistema operativo, ocupando un valioso espacio de almacenamiento NAND. También necesitan cargarse en la RAM y requieren un tiempo de cálculo significativo en la GPU y/o CPU. A diferencia de los servicios basados en la nube, cuyos recursos pueden dedicarse únicamente a un problema de visión, el cálculo en el dispositivo debe realizarse mientras se comparten estos recursos del sistema con otras aplicaciones en ejecución.
Aquí el reto está en conseguir el equilibrio entre el procesamiento dentro del dispositivo y el funcionamiento del mismo. El proceso debe ser lo suficientemente eficiente como para procesar una gran cantidad de fotografías en un período de tiempo razonablemente corto, pero sin un uso significativo de la batería u otros recursos. Para conseguir esto Apple hace uso también de Metal, aprovechando al máximo la potencia de la cPU y sobre todo la GPU.
Lo que viene a decirnos Apple es algo que ya se suponía, el proceso de reconocimiento facial y otros tantos que para nosotros parece algo sencillo y secundario, tiene un esfuerzo tremendo. Es por esta razón que al principio cualquier nuevo dispositivo es lento, o si actualizamos a una nueva versión de iOS (que significa escanear de nuevo toda la biblioteca de fotos) todo va más lento y consume más batería.
Más información | Machine Learning Journal
Ver 7 comentarios