Oct, 21

¿Qué es la Ciencia de Datos?

Por: José Luis Pozo

Si definiéramos la ciencia de datos en palabras simples, podríamos decir que es un conjunto de métodos para tomar datos que por lo general están dispersos, procesarlos, analizarlos y convertirlos en información útil para la toma de decisiones. Cuando nos sumergimos en el mundo de los datos, nos damos cuenta de que es algo apasionante, los tenemos presentes día a día, por ejemplo: la edad de una persona, la comuna donde vive, su tiempo de viaje al trabajo, el valor de la UF, el valor del dólar, la temperatura, la cantidad de contagios por COVID-19, etc.  

El dato como tal puede que no nos diga mucho, es básicamente la expresión de un valor o una característica, sin embargo, si tomamos cada uno de los datos, los acompañamos de otros datos que pudieran estar relacionados, los procesamos, los analizamos y los representamos utilizando los gráficos adecuados para el problema, estos empiezan a tomar sentido, nos muestran su comportamiento y se convierten en información. Por ejemplo, no es lo mismo, tener la temperatura máxima de hoy, a tener un histórico de temperatura durante los últimos 100 años, calcular su media anual y representar su variación respecto de año anterior a través de un gráfico lineal.

https://www.ncdc.noaa.gov/sotc/briefings/20200115.pdf

 

Si además del análisis de los datos, utilizamos toda esta información para entrenar un modelo, aplicando conceptos de Econometría, Programación y Machine Learning, entonces estamos hablando de ciencia de datos.

Métodos y tecnologías

La ciencia de datos utiliza como base, el análisis de datos como herramienta para resolver problemas, se complementa con la programación, la modelación estadística y el aprendizaje de máquina para poder aplicarla.

Lenguaje de programación

Por el lado de la programación, por lo general se utiliza R o Python, siendo Python el lenguaje más utilizado en ciencia de datos. Se caracteriza por su versatilidad y por su curva de aprendizaje, la cual es más rápida en comparación con otros lenguajes de programación.  Además cuenta con una gran variedad de bibliotecas para trabajar los datos como: pandas, numpy, scipy, matplotlib, statsmodels y scikit-learn, entre muchas otras.

Modelación estadística

Por el lado de la modelación estadística, se utiliza la econometría.  En palabras simples, la econometría es una ciencia que estudia los comportamientos de las variables, a través de la regresión lineal, utilizando como base la estadística y la matemática. Permite realizar un análisis cualitativo y cuantitativo de los factores que afectan a la variable objetivo, de acuerdo a la problemática que se está estudiando. Por ejemplo, el efecto que podría tener el nivel de educación en los salarios.  En este caso, “salario” sería la variable objetivo y el nivel de educación uno de los factores que podría afectarla, por medio de la econometría se podría estimar si el nivel de educación influye en el incremento del ingreso de un trabajador.

Machine learning (IA)

Por otro lado, la ciencia de datos utiliza el aprendizaje de máquinas (machine learning), que consiste en una rama de la inteligencia artificial, que se especializa en desarrollar técnicas que permitan que las computadoras aprendan a generalizar comportamientos en base a la información suministrada.  Por medio de esta, es posible detectar patrones e implementar diversos algoritmos según la problemática que se quiere resolver, generando modelos predictivos que entreguen resultados con grados de certeza superiores a los métodos tradicionales.

Casos de uso 

La ciencia de datos se vale de las tecnologías y métodos mencionados, para estudiar un fenómeno, detectar patrones, elaborar hipótesis y generar aproximaciones a la información que se tiene a la mano, según el problema que se intenta describir y/o predecir.   Me atrevería a decir que la aplicación de esta disciplina sólo está limitada por la cantidad, calidad de los datos y por sobre todo, por nuestra imaginación.  Sólo por mencionar algunos casos: 

Evaluación de riesgo crediticio

La evaluación de riesgo crediticio de los clientes, es algo muy presente en la banca e instituciones financieras. Los perfiles de riesgo son únicos por cada cliente y se determinan utilizando una infinidad de variables. En algunas instituciones se usan motores de riesgo donde es posible configurar los árboles de decisión y elaborar una estrategia de evaluación personalizada. Hoy en día muchas instituciones están utilizando de manera creciente el aprendizaje de máquina, ya que en vez de configurar una estrategia, es posible generar un modelo predictivo basado en el comportamiento y correlación de los datos, permitiendo generar en línea, predicciones más fiables y seguras. Como consecuencia, se reducen las pérdidas derivadas de evaluaciones inexactas por modelos poco eficientes. 

Detección de fraude

La detección proactiva de fraudes es esencial para proporcionar seguridad a los clientes, cuando antes se detecte una transacción fraudulenta, más rápido se podrá tomar acciones para detener la actividad, por ejemplo, bloquear la cuenta para minimizar las pérdidas. Seguramente a más de alguno de los lectores les han clonado la tarjeta bancaria, por lo general, en cuestión de minutos se realiza un giro por el resto del saldo máximo permitido, luego de eso se realizan transacciones inusualmente elevadas, o muchas en un corto periodo de tiempo, intentando consumir el saldo en el menor tiempo posible, antes que el banco o nosotros nos percatemos de ello. Mediante el análisis de los datos y el aprendizaje de máquinas es posible implementar algoritmos de detección de transacciones fraudulentas, generando modelos predictivos que retornen en línea el grado de probabilidad de fraude de cada transacción, con esto se podrían automatizar las acciones a tomar y en consecuencia los bancos pueden lograr la protección necesaria y evitando pérdidas significativas.

Detección de denuncias falsas

La policía de España experimentaba un alto porcentaje de denuncias falsas en delitos de robo con violencia o hurtos, sobre todo de teléfonos móviles de alta gama, probablemente para cobrar algún seguro asociado. Para solucionar esta problemática nace Veripol, que consiste en un sistema que actualmente utiliza la policía de España para detectar las denuncias falsas, este sistema en base a algoritmos de inteligencia artificial y reconocimiento de lenguaje natural, analiza el texto de las denuncias buscando patrones que se repitan, con esta información es capaz de terminar un grado de veracidad de la denuncia.  ¿Cómo es esto posible?, ocurre que al analizar los datos se dieron cuenta que la mayoría de las denuncias falsas, carecían de detalles específicos, por lo general describían a los agresores vestidos de negro, con las caras cubiertas, atacando por la espalda, e incluso la fecha del suceso por lo general era relativa, que no se acordaban exactamente, lo cual de igual forma puede podría ser cierto. Sin embargo, al contrastar con las denuncias reales, estas entregaban detalles muy precisos de cómo habían ocurrido los hechos y describían con detalle del agresor, color de pelo, forma del rostro, fecha y hora, además de ser considerablemente más largas por contener mayor detalle. Con una base de datos de cerca de 1000 datos de denuncias, donde por supuesto ya se sabía cuáles eran verdaderas y cuales eran falsas, entrenaron un modelo, llegando a un algoritmo con una precisión de un 90%, en cambio un policía llega a un 75% de acierto.  Claramente, su utilización es una mejora en el uso de los recursos públicos.

Conclusiones

Como apasionado en el mundo TI y estudiante de esta disciplina, creo que a pesar de estar inserto en muchos mercados, queda mucho por explorar.  Considero que su amplio espectro de implementación podría ser muy beneficiosa para nuestros clientes, ya que podemos construir soluciones de software que se integren con modelos predictivos elaborados a medida, permitiendo según el objetivo, maximizar sus ganancias, optimizar los recursos, evitar pérdidas significativas o incluso mejorar la experiencia de sus clientes finales.