No es algo nuevo, ya sucedió con el “Cloud” o con el “Big Data”. Todo el mundo parecía necesitar un Cloud o tener soluciones que supuestamente aprovechaban la tecnología denominada Big Data. Hoy casi todos los fabricantes de soluciones de video vigilancia ofrecen sistemas con “Inteligencia Artificial”. Los tres términos son lo suficientemente ambiguos para dar pie a confusiones, equívocos y quizá algún engaño. Con la siguiente guía se pretende aclarar algunas dudas recurrentes de profesionales del sector de la seguridad privada respecto a las posibilidades de técnicas basadas en “Deep Learning” que es la tecnología a la que últimamente se refieren los fabricantes cuando hablan de Inteligencia Artificial.
1.- Dicen que las cámaras basadas en “Deep Learning” funcionan de manera similar al cerebro humano, ¿ es cierto ?
Siendo rigurosos la respuesta sencilla es que no, no es cierto. El cerebro humano es muy superior a cualquier sistema basado en “Deep Learning” salvo en un punto crucial, las máquinas no se cansan. Cualquier persona adulta que esté prestando suficiente atención es mucho más fiable que una máquina durante un cierto periodo de tiempo y con una cantidad limitada de video. La ventaja de las máquinas surge cuando se quieren vigilar varias cámaras durante periodos largos de tiempo, el cerebro humano simplemente no tiene capacidad para prestar atención a tanta información durante tanto tiempo.
2.- Entonces ¿ por qué se comparan con tanta frecuencia, cerebro y “Deep Learning” ?
Las técnicas de Deep Learning se basan en redes neuronales, que son técnicas matemáticas inspiradas en lo (poco) que sabemos respecto al funcionamiento del cerebro humano. Desde un punto de vista didáctico puede ser útil realizar la comparación. Por ejemplo, una red neuronal aprende “viendo” patrones (imágenes). Las personas también podemos aprender viendo patrones. Las comparaciones más allá de estas frases empiezan a ser complicadas y a generar falsas expectativas.
3.- ¿ Redes Neuronales que aprenden ? ¿ Qué es lo que aprenden ?
Simplificando un poco, las redes neuronales usadas en soluciones de Deep Learning no son más que clasificadores de patrones. Un patrón podría definirse como una formación particular de elementos, en el caso de video normalmente es un conjunto de píxeles. Por tanto una red neuronal basada en “Deep Learning” no es más que un clasificador de conjuntos de píxeles. Dado un conjunto de píxeles el clasificador determina a qué clase (tipo de objeto) pertenece. Sencillamente es un reconocedor de formas.
4.- ¿ Cuando deja de aprender una red neuronal basada en Deep Learning ?
Normalmente las redes neuronales tienen dos modos de funcionamiento diferentes. Un modo usualmente denominado “entrenamiento” y otro modo que suele denominarse “inferencia”. Hay varias diferencias importantes entre ambos modos, por ejemplo en el primer caso el objetivo es que la red aprenda a reconocer objetos, en el segundo caso el objetivo es que la red reconozca objetos. Otra diferencia son los requisitos computacionales. “Entrenar” una red es mucho más costoso que “ejecutarla” (inferir). La gran mayoría de los productos implementan solo el modo inferencia, es decir la red “viene aprendida” de fábrica y no aprende más.
5.- ¿ Son mejores los productos que además de inferir pueden seguir aprendiendo ?
Es difícil responder con un sí o con un no a esta pregunta. Si bien es cierto que tener la capacidad de seguir aprendiendo dota de mayor potencia a un producto, también es verdad que implica problemas, especialmente en el ámbito de la seguridad. Cuando una red viene aprendida de fábrica se confía en que el aprendizaje ha sido correctamente supervisado por los ingenieros de una empresa especializada en ello. Si dejamos que una red neuronal aprenda sola en una instalación corremos el riesgo de que aprenda cosas que no son. Esto es especialmente grave si consideramos que una red neuronal que está aprendiendo todo el rato tiene capacidad para ir cambiando de opinión, lo que de nuevo puede sonar bien, pero tiene implicaciones peligrosas como por ejemplo que dada una misma situación (misma escena y misma persona), un día se clasifique como intrusión y otro día no. Los sistemas se vuelven completamente imprevisibles (indeterministas) y por tanto imposibles de afinar o corregir. Por lo general, en el sector seguridad es mejor que las redes neuronales basadas en Deep Learning tengan un proceso de aprendizaje lo más controlado posible.
6.- Entonces ¿ Es mejor un producto que pueda aprender o que no ?
Hay que diferenciar entre una red neuronal basada en Deep Learning y un producto de analítica de video. La red neuronal no es más que una tecnología de las muchas que se pueden usar para desarrollar un producto. Una misma tecnología se puede utilizar de muchas formas y en combinación con otras muchas tecnologías. Cuanto mejor se utilicen mejor será el producto. Si comparamos con el mundo de los vehículos, hay muchos fabricantes que usan motores de explosión, pero el rendimiento de esos motores no es el mismo en todos los fabricantes. Incluso con el mismo motor, el rendimiento de un vehículo no solo depende de ese elemento sino de la combinación con el resto de componentes o incluso el diseño de la carrocería. Los sistemas más potentes y fiables de analítica de video no tienen un solo componente de Inteligencia Artificial, combinan varios de manera que algunos puedan adaptarse sin comprometer la fiabilidad del resto. Un producto que solo tenga tecnología “Deep Learning” probablemente resulte inseguro.
7.- ¿ Cómo es posible que un producto basado en Deep Learning sea más inseguro que uno que no lo está ?
En el punto 3 hemos indicado que una red neuronal basada en Deep Learning es simplemente un clasificador de formas. Por tanto si el elemento a detectar no tiene esa forma no se detecta. La mayor parte de las cámaras con “IA” del mercado no generan alarma si una persona aparece oculta tras una caja. Son por tanto sistemas muy inseguros y fácilmente saboteables. Como se indica en el punto 6, la fiabilidad de un producto de analítica de video reside en la combinación de tecnologías utilizadas y la experiencia del equipo de ingeniería en esas tecnologías. La tecnología Deep Learning es muy potente pero para poder utilizarse en el sector de seguridad debe utilizarse en conjunto con otras tecnologías que la doten de mayor robustez frente a situaciones adversas.
8.- ¿ Qué hardware necesita una solución que incluya componentes Deep Learning ?
Como indicamos antes las redes neuronales basadas en Deep Learning no son más que algoritmos matemáticos y pueden ejecutarse en cualquier máquina con capacidad de cómputo. En función del tipo y arquitectura de la red puede tener mayores o menores requisitos hardware. En la actualidad tenemos sistemas basados en Deep Learning en soluciones cloud, en nuestros teléfonos móviles, dentro de las cámaras o en servidores enrackables. Por lo general las soluciones basadas en servidores o cloud son más flexibles, permiten incluir un mayor número de tecnologías que las soluciones basadas únicamente en cámaras. Dentro de las soluciones basadas en servidor, existen soluciones optimizadas capaces de funcionar sobre procesadores de propósito general (X86) y otras que o bien utilizan arquitecturas sin adaptar o que trabajan con una cantidad de datos tan grande que requieren procesadores gráficos tipo GPU.
9.- ¿ Debería utilizar siempre productos basados en Deep Learning ?
Como casi siempre depende del proyecto. En entornos no críticos los nuevos productos que únicamente incluyen un sistema básico de Deep Learning (DL) pueden ser una buena solución. En cambio, para entornos profesionales, donde se busca un nivel de seguridad alto utilizar solo dispositivos de este tipo debería evitarse. De hecho si hay que elegir entre un sistema con solo DL y otro que no tenga ningún componente DL es más seguro utilizar el segundo. Si tenemos la posibilidad de utilizar un sistema de protección perimetral que entre otros elementos incorpora DL dispondremos de un mayor abanico de posibilidades para encontrar el punto adecuado entre el nivel de detección (evitar no detecciones) y el nivel de falsos avisos. Disponer de mejores herramientas nos da más posibilidades para implementar la mejor solución en cada situación.
10.- ¿ Qué podemos esperar de los sistemas que aprenden completamente solos ?
Normalmente todos los sistemas requieren un mínimo de configuración. Por ejemplo debemos indicarle qué zonas son de interés para nosotros y cuáles no. Por otro lado, los elementos a reconocer pueden no ser siempre los mismos, en algunas circunstancias un vehículo puede ser un intruso pero en otras sólo lo serán las personas. Una cámara normal que cubre por sí sola una zona no es capaz de determinar el tamaño de objetos por lo que requerirá que se le proporcione información de referencia. Determinados entornos son más complicados que otros, la experiencia del técnico instalador a la hora de seleccionar la ubicación de las cámaras y las arquitectura de zonas de interés puede resultar en una mejora muy notable de los resultados obtenidos con un mismo producto. Tanto hoy como en los próximos años, el conocimiento de las personas que utilizan los productos de analítica de video es igual de importante o más que las tecnologías que utilizan. El aprendizaje profundo (Deep Learning) de las redes neuronales sigue siendo insuficiente para dotar de la mejor seguridad las instalaciones perimetrales. El aprendizaje de los técnicos en el uso de las herramientas sigue siendo clave.
Eduardo Cermeño
Profesor de Ciencias de la Computación e Inteligencia Artificial (Universidad Autónoma Madrid)
Socio Fundador de Vaelsys
