11
Arquitectura de Big Data para la Predicci´ on de la Portabilidad Num´ erica en Empresas de Telefon´ ıa M ´ ovil Alonso Ra ´ ul Melgarejo Galv´ an Facultad de Ingenier´ ıa de Sistemas Universidad Nacional Mayor de San Marcos Lima - Per ´ u [email protected] Katerine Rocio Clavo Navarro Facultad de Ingenier´ ıa de Sistemas Universidad Nacional Mayor de San Marcos Lima - Per ´ u [email protected] Abstract Actualmente en el Per´ u, las compa˜ ıas de telefon´ ıa ovil se han visto afec- tadas por el problema de la portabili- dad num´ erica, puesto que, desde julio del 2014, los clientes pueden cambiar de op- eradora m´ ovil en s´ olo 24 horas. Las compa˜ ıas buscan soluciones analizando los datos hist´ oricos de sus clientes para generar modelos de predicci´ on e identi- ficar qu´ e clientes portar´ an, sin embargo, la actual forma en la que se realiza esta predicci´ on es demasiado lenta. En el presente trabajo, mostramos una arquitec- tura de Big Data que resuelve los prob- lemas de las arquitecturas “cl´ asicas” y aprovecha los datos de las redes sociales para predecir en tiempo real qu´ e clientes son propensos a portar a la competencia seg´ un sus opiniones. El procesamiento de los datos es realizado por Hadoop el cual implementa MapReduce y permite proce- sar grandes cantidades de datos en forma paralela. La arquitectura tambi´ en uti- liza otras herramientas de Hadoop como Mahout para generar nuestro modelo de predicci´ on, y Hive para gestionar los datos con una sintaxis similar a SQL. Al realizar las pruebas y observar los resultados, lo- gramos obtener un alto porcentaje de pre- cisi´ on (90.03% de aciertos), y procesar 10’000 comentarios en 14 segundos. 1 Introducci´ on En el Per´ u, la p´ erdida de clientes en la industria de la telefon´ ıa m´ ovil es un problema que actual- mente afecta a las grandes empresas de telecomu- nicaciones del pa´ ıs debido a la fuerte competen- cia que se ha generado en el mercado de servicios oviles de voz y datos, y que ha generado grandes ofertas comerciales y guerra de precios. OSIP- TEL (2015) menciona que desde el ingreso de las operadoras m´ oviles Bitel y Entel, la competencia se ha incrementado, siendo Entel la operadora que as clientes ha obtenido de Claro Per´ u y de Mo- vistar. Como vemos en la Figura 1, de acuerdo a las ´ ultimas cifras de OSIPTEL (2015), se muestra que en marzo, la portabilidad m ´ ovil creci ´ o en 46%, al- canzando un r´ ecord de 65,142 portaciones, el m´ as alto desde julio del a˜ no pasado, fecha en la que se relanz´ o el mecanismo para realizar una porta- bilidad num´ erica y cambiar de operadora m ´ ovil en solo 24 horas manteniendo el mismo n´ umero de tel´ efono. Figura 1: Portabilidad m ´ ovil a marzo del 2015 Como (Francisco et al., 2013) menciona, en el ´ area de las telecomunicaciones, la fuga de clientes es un problema que cada vez es m´ as necesario es- tudiar debido a la alta competitividad que se est´ a desarrollando a nivel mundial. Se hace necesaria la aplicaci´ on de herramientas avanzadas que per- mitan predecir y describir de alg´ un modo, qu´ e clientes tienen mayor potencial de riesgo de cam- biarse de compa ˜ ıa. 2 El problema de la portabilidad num´ erica: La fuga de clientes La p´ erdida de clientes es un riesgo costoso que si no se maneja con cuidado podr´ ıa llevar a la 106

Arquitectura de Big Data para la Predicci on de la ...ceur-ws.org/Vol-1478/paper14.pdf · Arquitectura de Big Data para la Predicci on de la Portabilidad Num« erica« en Empresas

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Arquitectura de Big Data para la Prediccion de la Portabilidad Numericaen Empresas de Telefonıa Movil

Alonso Raul Melgarejo GalvanFacultad de Ingenierıa de Sistemas

Universidad Nacional Mayor de San MarcosLima - Peru

[email protected]

Katerine Rocio Clavo NavarroFacultad de Ingenierıa de Sistemas

Universidad Nacional Mayor de San MarcosLima - Peru

[email protected]

Abstract

Actualmente en el Peru, las companıasde telefonıa movil se han visto afec-tadas por el problema de la portabili-dad numerica, puesto que, desde julio del2014, los clientes pueden cambiar de op-eradora movil en solo 24 horas. Lascompanıas buscan soluciones analizandolos datos historicos de sus clientes paragenerar modelos de prediccion e identi-ficar que clientes portaran, sin embargo,la actual forma en la que se realiza estaprediccion es demasiado lenta. En elpresente trabajo, mostramos una arquitec-tura de Big Data que resuelve los prob-lemas de las arquitecturas “clasicas” yaprovecha los datos de las redes socialespara predecir en tiempo real que clientesson propensos a portar a la competenciasegun sus opiniones. El procesamiento delos datos es realizado por Hadoop el cualimplementa MapReduce y permite proce-sar grandes cantidades de datos en formaparalela. La arquitectura tambien uti-liza otras herramientas de Hadoop comoMahout para generar nuestro modelo deprediccion, y Hive para gestionar los datoscon una sintaxis similar a SQL. Al realizarlas pruebas y observar los resultados, lo-gramos obtener un alto porcentaje de pre-cision (90.03% de aciertos), y procesar10’000 comentarios en 14 segundos.

1 Introduccion

En el Peru, la perdida de clientes en la industriade la telefonıa movil es un problema que actual-mente afecta a las grandes empresas de telecomu-nicaciones del paıs debido a la fuerte competen-cia que se ha generado en el mercado de serviciosmoviles de voz y datos, y que ha generado grandes

ofertas comerciales y guerra de precios. OSIP-TEL (2015) menciona que desde el ingreso de lasoperadoras moviles Bitel y Entel, la competenciase ha incrementado, siendo Entel la operadora quemas clientes ha obtenido de Claro Peru y de Mo-vistar.

Como vemos en la Figura 1, de acuerdo a lasultimas cifras de OSIPTEL (2015), se muestra queen marzo, la portabilidad movil crecio en 46%, al-canzando un record de 65,142 portaciones, el masalto desde julio del ano pasado, fecha en la quese relanzo el mecanismo para realizar una porta-bilidad numerica y cambiar de operadora movil ensolo 24 horas manteniendo el mismo numero detelefono.

Figura 1: Portabilidad movil a marzo del 2015

Como (Francisco et al., 2013) menciona, en elarea de las telecomunicaciones, la fuga de clienteses un problema que cada vez es mas necesario es-tudiar debido a la alta competitividad que se estadesarrollando a nivel mundial. Se hace necesariala aplicacion de herramientas avanzadas que per-mitan predecir y describir de algun modo, queclientes tienen mayor potencial de riesgo de cam-biarse de companıa.

2 El problema de la portabilidadnumerica: La fuga de clientes

La perdida de clientes es un riesgo costoso quesi no se maneja con cuidado podrıa llevar a la

106

companıa movil de rodillas.

Segun define (Francisco et al., 2013), dentro delsector de telecomunicaciones, el termino churn ofuga de clientes es usado para describir el cese deservicios de la suscripcion de un cliente, y se hablade churner o fugado para denominar a un clienteque ha dejado la companıa. Como (Clement etal., 2013) menciona, un cliente puede renunciar ala empresa e iniciar la terminacion de su contratode servicios (churn voluntario), o bien la empresapuede expulsarlo por fraude, falta de pago o porsubutilizacion de los servicios suscritos (churn in-voluntario).

(Clement et al., 2013) tambien menciona quela fuga de clientes puede llegar a ser muy costosapara una companıa, ya que el cliente fuga hacia lacompetencia y por ende, no solo se pierde el in-greso no percibido, sino tambien el prestigio dela companıa expresado en la participacion de mer-cado de la competencia.

2.1 Causas que ocasionan la fuga de clientes

Los factores que contribuyen al comportamientode fuga en los servicios de telecomunicaciones sondiversos.

(Francisco et al., 2013) menciona que, dentrode las principales razones por las que un clientedeja de adquirir los productos de una companıa seencuentran: la disconformidad con la calidad dela senal, cobertura, servicio al cliente, precios, co-bros irregulares y la falta de polıticas de retencioncon un mejor trato a los clientes, pero por otro ladoPatricio (2014) tambien menciona que la red decontactos donde se desenvuelve el cliente es muyimportante, pues el efecto “boca a boca” se ha con-vertido en un factor determinante en las decisionesde compra de un consumidor.

Anticiparse a esta problematica y lograr identi-ficar que lleva a un cliente a terminar su contrato,entrega diversos beneficios a la companıa comopor ejemplo, la menor inversion en retener a uncliente (gracias a la recomendacion de la red decontactos). Patricio (2014) afirma que adquirir unnuevo cliente cuesta seis veces mas que retener auno propio, y que los clientes que se mantienenmas tiempo en la empresa generan mayores ingre-sos y son menos sensibles a las acciones de mar-keting de la competencia convirtiendose en con-sumidores menos costosos de servir.

2.2 La influencia de la opinion dejada en laweb

Hoy en dıa, los avances tecnologicos como el in-ternet y las redes sociales permiten que el clientetenga mayor acceso a la informacion y pueda com-parar facilmente la companıa que mas le con-venga.

Bajo el contexto de la competitividad que ac-tualmente se vive en el mercado de telecomunica-ciones, y sumandose a ello, el mayor acceso a lainformacion, Patricio (2014) afirma que se generaun marco de flexibilidad y dinamismo respecto a lamovilidad de los clientes de una companıa a otra.

Como menciona Tania (2011), la dinamica departicipacion social y la influencia que puedentener las valoraciones dejadas por los consumi-dores en internet, han hecho que las empresas delmercado presten atencion a la gestion de las opin-iones que se dejan en la web sobre ellas. El com-munity manager de una empresa debe ser rapidoen la resolucion de los conflictos que percibe enla web. Un conflicto que tarda un dıa en resol-verse, probablemente se convertira en un conflictono resuelto, y en muchos casos propiciara una fugade clientes hacia la competencia, afectando igual-mente la reputacion online de la empresa. El com-munity manager debe tener criterio para destacaraquellos comentarios positivos, negativos o nota-bles, que por alguna razon, merezcan la ejecucionde alguna estrategia especial.

Patricio (2014) menciona que las redes socialespueden influenciar distintos aspectos de una per-sona como por ejemplo contratar un servicio, com-prar un producto o abandonar una companıa, me-diante el efecto “boca a boca”.

(Yiou et al., 2015) tambien afirma que las opin-iones de los clientes tienen un impacto en los pro-ductos y los servicios, por eso es necesario cap-turar estas opiniones por medio de calls centers,correos, cuestionarios o webs para entender lasnecesidades de los clientes. Es por esto que el ex-plotar la “voz del consumidor” debe ser consider-ado en la prediccion de abandono de clientes.

2.3 La solucion actual

Actualmente las empresas de telefonıa movil lle-gan a desarrollar modelos predictivos para identi-ficar a los clientes que pueden llegar a portar haciala competencia. La construccion de estos mode-los puede variar, pero en general, se siguen los pa-sos mostrados en la Figura 2, como nos explica

107

(Clement et al., 2013) a continuacion.Primero se deben identificar las fuentes de datos

con las que se construira el modelo de prediccion,la cuales corresponden a los datos internos de laempresa referentes al perfil del cliente y el traficode llamadas.

El perfil del cliente describe el grupo de-mografico de los clientes y las caracterısticas quetienen en comun respecto al segmento, el plancontratado, el tipo de pago, el riesgo crediticio,el area demografica y las penalidades por no pa-gar las cuentas. El trafico de llamadas describeel trafico generado y recibido por un cliente, elcual es caracterizado por las llamadas realizadasy recibidas desde lıneas fijas o moviles, locales ointernacionales, desde que operador se realizo, lacantidad de SMS enviados y recibidos, y el traficode red en internet generado.

Figura 2: Pasos en el desarrollo de modelos deprediccion

Luego de identificar las fuentes de datos con lasque se trabajara, debe realizarse una extraccion ylimpieza de ellos. La limpieza de datos consisteen encontrar errores en los datos, duplicidad, inco-herencias o valores incompletos e inconsistentes.Esta informacion es corregida reemplazando val-ores generados, o eliminada en el peor de los ca-sos. Todos estos datos son almacenados en unDatawarehouse.

Una vez que los datos han sido limpiados yestan listos para ser usados, se utilizan difer-

entes algoritmos de minerıa de datos existentescomo Naive Bayes, arboles de decision o redesbayesianas, para construir modelos de prediccion.Cuando los modelos son generados, se realizanpruebas sobre ellos para encontrar aquel que tengael mejor ratio de prediccion, el cual sera el modeloa usar para predecir la portabilidad.

Por supuesto, este no es el paso final, ya que elcomportamiento de los clientes puede cambiar a lolargo del tiempo, por lo que es necesario actualizarel modelo volviendo a repetir todos los pasos.

Ahora que entendemos como se generan actual-mente los modelos de prediccion, veamos cualesson los problemas que poseen.

2.4 Problemas de la solucion actual

Dado el entorno actual en el cual las empresasde telefonıa movil se desenvuelven, la solucionque actualmente utilizan para predecir la fuga declientes presenta cuatro problemas:

P1. Portabilidad rapida, prediccion lenta:Como menciona OSIPTEL (2015), la nueva leyde portabilidad hace que los clientes puedan re-alizar una portabilidad hacıa la competencia en 24horas, ası que se necesita predecir esta portabili-dad de manera rapida para evitarlo. La solucionclasica requiere mantener un Datawarehouse condatos limpios y filtrados, lo cual consume demasi-ado tiempo.

P2. Confidencialidad de datos: La solucionclasica trabaja principalmente con los datos inter-nos de la empresa puesto que estan estructuradosy disponibles, sin embargo, debido a la confiden-cialidad y privacidad del negocio de las telecomu-nicaciones, es muy difıcil para las operadoras en-contrar fuentes de datos publicas que sean fidedig-nas y puedan usarse como un input adicional en laprediccion de la portabilidad de sus clientes, comomenciona (Clement et al., 2013).

P3. Datos no estandarizados e incoherentes:Estandarizar las caracterısticas de las diversasfuentes de datos usadas para realizar un analisises un reto ya que consume demasiado tiempo yesfuerzo. Es necesario implementar y mantenerun Datawarehouse para realizar analisis de datos,lo cual incluye eliminar informacion irrelevante,duplicada o con valores nulos como menciona(Clement et al., 2013).

P4. Opinion cambiante: No se analiza laopinion cambiante que tienen los clientes respectoa un servicio, lo cual es un factor determinante

108

en sus decisiones como menciona Patricio (2014).Para poder analizar el cambio en las opiniones,deben incluirse fuentes de datos adicionales a losperfiles de clientes y el trafico de llamadas.

Estos cuatro problemas ocasionan que la iden-tificacion de clientes portadores sea lenta e inex-acta, pues se requiere realizar una limpieza de losdatos o un analisis y ordenamiento de sus fuentes,lo cual demuestra que la implementacion de unaarquitectura tradicional para predecir la portabili-dad numerica tiene carencias que deben resolversecon un enfoque diferente.

3 Un enfoque diferente: Big Data

La necesidad de procesar grandes volumenes dedatos en tiempo real es crucial para las empre-sas de hoy en dıa, por ejemplo, el procesamientode volumenes masivos de datos donde se escondeinformacion valiosa respecto al comportamientode compra de productos o servicios de clientes, ypoder generar nuevos productos analizando dichoscomportamientos. Esto ultimo es particularmentecierto en el mercado de los negocios de las tele-comunicaciones, donde el numero de clientes nor-malmente llega a varios millones como menciona(Francisco et al., 2013).

En estos escenarios es donde entra Big Data,el cual es un campo emergente de tratamiento dedatos que permite analizar grandes cantidades dedatos y maximizar el valor del negocio dando unsoporte en tiempo real a la informacion necesariapara la toma de decisiones, segun define (M. Va-suki et al., 2014). Por otro lado, (Kankana et al.,2014) tambien nos dice que la invencion de nuevastecnologıas ha llevado a la utilizacion de grandescantidades de datos que van en aumento, ademasse ha creado la necesidad de conservar, procesar yextraer estos datos. De esto se encarga el terminoBig Data.

Para tener un mayor conocimiento sobre BigData, en esta seccion se vera el concepto de las 5V de Big Data, el aprovechamiento de las nuevasfuentes de datos, el procesamiento paralelo masivoque ofrece MapReduce y la implementacion maspopular que tiene llamada Hadoop.

3.1 Las 5 V

Big Data se caracteriza tradicionalmente por elconcepto de las 3 V: volumen, variedad y veloci-dad como menciona (Mario et al., 2013), pero(Abdullah et al., 2015) tambien menciona que ac-

tualmente, se adicionan 2 V mas: variabilidad yveracidad, dando ası un total de 5 V.

El volumen, segun (Mario et al., 2013), esla dimension mas obvia al caracterizar grandescolecciones de datos creadas para diferentes usosy propositos. El almacenamiento de Big Datasupone el reto mas inmediato, ya que su primeraresponsabilidad es la de preservar todos los datosgenerados en el ambito de los sistemas transac-cionales. La decision de como se almacenanlos datos tiene un impacto considerable en elrendimiento de los procesos de recuperacion,procesamiento y analisis de Big Data.

La velocidad, segun (Mario et al., 2013), carac-teriza los flujos de datos desarrollados en entornoscada vez mas distribuidos. Se pueden distinguirdos tipos de flujos: los flujos de nuevos datos ylos flujos que contienen resultados generados porconsultas. La velocidad describe lo rapido que segeneran, demandan y entregan los datos en su en-torno de explotacion.

La variedad, segun (Mario et al., 2013), se re-fiere a los diferentes grados de estructura o faltade ella que pueden encontrarse en una coleccionde datos. La coleccion puede integrar datos proce-dentes de multiples fuentes, por ejemplo: redesde sensores, logs generados en servidores, re-des sociales, datos de origen polıtico, economicoo cientıfico, entre otros. Cada una de estasfuentes de datos tiene esquemas diferentes que sondifıcilmente integrables en un modelo unico, porlo tanto, el manejo efectivo de la variedad pasapor encontrar un modelo logico que facilite la in-tegracion de los datos, independientemente de suestructura.

La veracidad, segun (Abdullah et al., 2015),hace referencia a la incertidumbre que hay en lasfuentes de datos y su nivel de confiabilidad. Laveracidad de una fuente de datos disminuye si enella existen inconsistencias y datos incompletos.Es necesario trabajar con datos precisos, no fal-sos, no corruptos y que provengan de una fuentede datos fidedigna.

Por ultimo, la variabilidad, segun (Abdullah etal., 2015) se refiere al cambio que tienen los datosa lo largo del tiempo, tanto en su estructura comoen su contenido.

Tambien hay que considerar lo que recomienda(Mario et al., 2013): cualquier arquitecturadisenada para la gestion de Big Data debe afrontarlas variables anteriores, sin embargo, la decision

109

de cual de ellas afrontar en primer lugar dependedel entorno de explotacion final de la arquitec-tura, por ejemplo, optimizar el almacenamientode datos es un aspecto mas crıtico para una ar-quitectura destinada a un dispositivo movil, quepara una que sera ejecutada en un servidor de altorendimiento; la velocidad con la que se recuperanlos datos es una prioridad para una arquitectura entiempo real, pero no lo es tanto para una de proce-samiento en batch. Por lo tanto, una arquitecturapara Big Data debe priorizar las cinco dimensionesanteriores con el objetivo de cubrir de forma efec-tiva los requisitos con los que se disena.

3.2 Nuevas fuentes de datos: Web y RedesSociales

Los datos en forma de texto dentro de inter-net estan creciendo cada vez mas y es imposibleanalizar estos datos de forma manual debido a suingente cantidad. Es aquı donde la necesidad dela automatizacion se hace evidente. (Sunil et al.,2014) dice que en la web los usuarios tienen laoportunidad de expresar sus opiniones personalessobre topicos especıficos dentro de blogs, foros,sitios de revision de productos y redes sociales.

Como indica (M. Vasuki et al., 2014), este crec-imiento explosivo de la informacion textual en laweb ha traıdo un cambio radical en la vida hu-mana. En la web la gente comparte sus opinionesy sentimientos, lo cual crea una gran coleccion deopiniones y puntos de vista en forma de texto quepueden ser analizados para conocer la eficacia delos productos y los servicios.

3.3 Procesamiento paralelo: MapReduceEs un framework de programacion creado porGoogle para computacion distribuida que utilizael metodo de “Divide y Venceras” para analizargrandes conjuntos de datos complejos y que garan-tiza la escalabilidad lineal. Utiliza dos funcionespara procesar los datos: la funcion Map y lafuncion Reduce. El funcionamiento de estas dosfunciones puede verse en la Figura 3.

Como explica (G. Bramhaiah et al., 2015), lafuncion Map divide los datos de entrada en sub-partes mas pequenas. Estas partes son distribuidasa lo largo de los servidores para que sean proce-sadas por separado. Luego la funcion Reducerecolecta las respuestas de todas las subpartes ylas combina en una unica salida. MapReduce di-vide el procesamiento de un algoritmo en etapasparalelizables que se ejecutan en muchos nodos,

Figura 3: Procesamiento paralelo de datos conMapReduce

ası como en etapas de agregacion donde los datosobtenidos en la fase previa son procesados en ununico nodo. De esta manera se facilita el almace-namiento y procesamiento del llamado Big Data.La herramienta mas extendida segun (Pablo etal., 2014) basada en el modelo MapReduce esHadoop, la cual se explica a continuacion.

3.4 La plataforma Hadoop

Segun Dhruva (2014), Hadoop es un frameworkopen-source para el almacenamiento y proce-samiento de grandes cantidades de datos, sobreclusters que funcionen sobre hardware comodity.

(Debajyoti et al., 2014) agrega que unaplataforma tıpica de Big Data basada en Hadoopincluye el sistema distribuido de archivos HDFS,el framework MapReduce de computacion par-alela, un sistema de alto nivel para la adminis-tracion de datos como Pig o Hive, y Mahout comoel modulo para el analisis de datos. Todo lo ante-rior es mostrado en la Figura 4.

(Kankana et al., 2014) explica que el HDFSes basicamente una estructura maestro/esclavo. Almaestro se le conoce como “Name Node”, y a losesclavos como “Data Nodes”. El trabajo principaldel “Name Node” es almacenar metadatos de losdatos, esto incluye la localizacion de los archivosque los contienen y tambien los diferentes atribu-tos de los documentos. Los “Data nodes” se en-cargan de almacenar los datos en bloques en losdiferentes nodos del cluster.

MapReduce, segun (Debajyoti et al., 2014) esun modulo que Hadoop incorpora para el proce-samiento paralelo de datos. Para que los progra-

110

Figura 4: Plataforma Hadoop

madores puedan escribir programas sobre Hadoopdeben de especificar las funciones Map y Reducepara que Hadoop las ejecute. Hadoop divide enmuchos pequenos fragmentos la entrada la cualdistribuye y procesa de forma paralela los nodosdel cluster por medio de la funcion Map, luego pormedio de Reduce combina los resultados. Cuandoel procesamiento finaliza, el resultado puede re-sidir en multiples archivos.

Hive, segun (Rakesh et al., 2014) es un modulode Hadoop que soporta el manejo de archivos so-bre HDFS por medio una sintaxis similar a SQL,el “Hive Query Language”. Las consultas de Hiveutilizan el modulo de MapReduce de Hadoop paraejecutarse de manera paralela y ocultar su com-plejidad al programador. Gracias a esto, es posi-ble usar sencillas sentencias sobre los archivosubicados en HDFS como “CREATE TABLE”,“INSERT”, “UPDATE”, “SELECT”, “DELETE”,“JOIN”, “GROUP BY”, y otras sentencias validasen el SQL clasico.

Mahout, segun (Seyyed et al., 2014) ha sidodisenado para propositos de minerıa de datos den-tro de Hadoop, pues implementa los algoritmosde clustering y regresion mas comunes por mediode MapReduce. Ademas Dhruva (2014) men-ciona que Mahout provee herramientas para en-contrar de manera automatica patrones en grandesvolumenes de datos y hace mucho mas facil yrapido el analisis dentro de Big Data.

4 El problema de la portabilidadnumerica desde la perspectiva de BigData

Despues de haber explicado el problema de laportabilidad numerica y el enfoque de Big Datafrente a las soluciones tradicionales, veremoscomo Big Data ofrece una solucion para cada unode los problemas encontrados en la portabilidadnumerica. Analizaremos como cada problema estarelacionado con una V de Big Data.

La Figura 5 muestra el cuadro en el que se rela-cionan a las 5 V de Big Data con cada uno de losproblemas encontrados en la subseccion 2.4. Laexplicacion del por que hacemos esta relacion en-tre los problemas y las V es dada a continuacion:

Figura 5: Relacion entre los problemas de lasolucion actual y las 5 V

El primer problema referido a la rapidez conla que un cliente puede fugar hoy en dıa a la com-petencia esta relacionado a la V de “velocidad”,puesto que se necesita identificar a estos clientesde inmediato para evitar que vayan a la competen-cia, y como solucion, Big Data procesa y entregala prediccion en tiempo real.

El segundo problema referido a la confi-dencialidad de los datos esta relacionado a lasV de “variedad” y “veracidad” puesto que lassoluciones clasicas trabajan principalmente conlos datos internos de la empresa, ignorando lasfuentes publicas como los sitios web que con-tienen datos no estructurados pero muy valiosos.Por supuesto que si la empresa decide utilizardatos publicos para realizar sus predicciones, debetener la certeza de que estos son fidedignos. Comosolucion, Big Data permite trabajar con nuevasfuentes de datos como las opiniones dejadas porlos clientes en las redes sociales de la companıamovil acerca del servicio, y poder predecir quienestienen intencion de portar.

El tercer problema referido a los datos no es-tandarizados e incoherentes, esta relacionado a lasV de “volumen” y “variedad”. Los datos usa-dos deben estar limpios y estandarizados antes de

111

comenzar un proceso de analisis; no puede traba-jarse con los datos transaccionales directamente,sino que deben formatearse primero. Comosolucion, el enfoque de Big Data procesa los datossin necesidad de realizar un proceso de limpieza.

Por ultimo, el cuarto problema referido a laopinion cambiante de los clientes acerca del servi-cio vendrıa a estar relacionado con la V de “vari-abilidad”, pues el enfoque de Big Data detecta loscambios que hay a lo largo del tiempo en los datos.

Como vemos, estos cuatro problemas son solu-cionados desde el enfoque de Big Data visto enla seccion 3, por lo tanto, es posible construiruna arquitectura de Big Data que implemente unasolucion para prevenir la portabilidad numerica.Tambien, como se menciono en la subseccion 3.1,es importante reconocer cual de estas 5 V tienemayor importancia en la arquitectura. Se esperaque la arquitectura de Big Data prediga lo masrapido posible que clientes pretenden portar, porlo tanto la arquitectura debe ser disenada tomandocomo premisa principal la velocidad.

5 Una arquitectura de Big Data parasolucionar el problema de laportabilidad numerica

Luego de haber visto la relacion que existe entrelos problemas de la solucion clasica y como BigData y las 5 V ofrecen una solucion a cada prob-lema, pasamos a explicar los detalles de la arqui-tectura que se plantea en el presente trabajo.

5.1 Descripcion de la solucion

La solucion propuesta en el presente trabajoaprovechara las nuevas fuentes de informacion conlas que Big Data trabaja, especıficamente las deredes sociales, explicadas en la subseccion 3.2.El objetivo de la solucion propuesta es obteneren tiempo real los comentarios dejados en lasfanpages oficiales de Facebook de las operadorasmoviles, y analizar el sentimiento expresado parapoder predecir si un cliente tiene intencion de re-alizar una portabilidad hacia la competencia.

5.2 Componentes de la arquitectura

En la Figura 6 mostramos la arquitectura disenadaen el presente trabajo para poder predecir laportabilidad numerica de clientes. Fue disenadatomando como referencia la subseccion sub-seccion 3.4.

Figura 6: Arquitectura de Big Data para laprediccion de la portabilidad numerica

Esta arquitectura esta conformada por seis com-ponentes:

El modulo “extractor de datos” es el encar-gado de revisar la pagina oficial de Facebook de laoperadora movil y descargar las publicaciones y/ocomentarios que en ella se realicen. El moduloesta encargado de extraer los datos cada hora y al-macenarlos en la “base de datos de publicaciones”.El modulo extractor de datos tambien es ejecutadopara generar la “base de datos de entrenamiento”y entrenar al modelo. Esta implementado en Javay utiliza el API de OpenGraph para conectarse aFacebook.

La base de datos de publicaciones, la cualalmacena las publicaciones y/o comentarios deFacebook, guarda los datos de manera distribuidapor el HDFS de Hadoop y utiliza Hive para ges-tionarlos, permitiendo trabajar con una sintaxissimilar a SQL.

La base de datos de entrenamiento es elcomponente que almacena las publicaciones queserviran para entrenar al modelo de prediccion.Cada publicacion y/o comentario almacenado aquıdebe indicarse si es “negativo”, en el caso de opin-iones que muestren intenciones de portar, o “pos-itivo”, en caso contrario. Esta base de datos estaimplementada como una base de datos relacionalOracle.

El modulo “actualizador del modelo”, es elencargado de generar y actualizar el modelo de

112

prediccion usando como entrada la base de datosde entrenamiento. Esta implementado en Ma-hout para aprovechar el procesamiento paralelo deMapReduce en Hadoop.

El modulo “predictor” tiene implementado elmodelo de prediccion y se encarga de predecir siel comentario de un cliente indica una portabilidado no. Tambien esta implementado en Mahout paraaprovechar el procesamiento paralelo de MapRe-duce en Hadoop.

Finalmente, se encuentra la base de datosde predicciones que almacena los resultadosobtenidos por el modulo predictor, implementadaen Oracle.

5.3 Algoritmo de prediccion

El algoritmo de prediccion usado en la arquitec-tura de Big Data es el de “Naive Bayes”. Segun(Shruti et al., 2014), en el aprendizaje automatico,el clasificador Naive Bayes es parte de la familiade los clasificadores de Bayes, pero asume la in-dependencia de las variables y gracias a esto elcalculo de las probabilidades se simplifica. Unaventaja de este clasificador es que requiere unapequena cantidad de datos de entrenamiento paraestimar los parametros necesarios para la clasifi-cacion. Para el calculo de probabilidades se usanlas formulas mostradas por (Shruti et al., 2014)adaptandolas a nuestro caso.

Figura 7: Probabilidad de que una palabra sea pos-itiva o negativa

Primero, con las formulas mostradas en laFigura 7, evaluamos el conjunto de publicacionesde entrenamiento y obtenemos la probabilidad deque cada palabra sea positiva o negativa.

Luego, con las formulas mostradas en la Figura8, evaluamos todo el conjunto de publicacionesde entrenamiento y calculamos la probabilidad deque el dataset sea positivo o negativo.

Figura 8: Probabilidad de que el dataset sea posi-tivo o negativo

Posteriormente, para calcular la probabilidad deque una publicacion sea positiva o negativa, dadaslas palabras que contienen, usaremos las formulasde la Figura 9.

Figura 9: Probabilidad de que una publicacion seapositiva o negativa

Como “P(palabras en publicacion)” es “1”,puesto que cada palabra siempre esta presente enla publicacion, al aplicar Naive Bayes, tenemos lasformulas mostradas en la Figura 10.

Figura 10: Naive Bayes aplicado en las probabili-dadesa

Finalmente, para elegir si una publicacion espositiva o negativa, se verifica cual de las dosprobabilidades es mayor por medio de la formulamostrada en la Figura 11.

Figura 11: Clasificacion de una publicacion

Para mejorar aun mas la calidad del clasificadorNaive Bayes, se uso el analisis de frecuencias deTF-IDF (Ambele et al., 2014) el cual permitemedir la importancia relativa de las palabras yhacer que las palabras menos significativas (stop-words) sean ignoradas en el calculo de las proba-bilidades.

El algoritmo clasificador de Naive Bayes fueimplementado en Java por medio de la librerıa Ma-hout.

5.4 Flujo de prediccionEl flujo de prediccion que definimos para nuestraarquitectura es el mostrado en la Figura 12.

Primero, los comentarios son extraıdos desde lapagina oficial de Facebook de la operadora movily almacenados en la base de datos de publica-ciones. Esta extraccion se realiza cada hora bus-cando aquellos comentarios que tengan una fecha

113

Figura 12: Flujo seguido en la arquitectura pararealizar la prediccion

posterior a la ultima extraccion realizada. Luego,el modulo predictor analiza todos aquellos comen-tarios obtenidos con la ultima extraccion y paracada uno predice si es una portabilidad o no. Sila prediccion indicara una portabilidad, el comen-tario es almacenado en la base de datos de predic-ciones, ademas, si es la primera vez que un usuariorealiza una publicacion con intencion de portar, losdatos del usuario son almacenados.

6 Pruebas realizadas

Para analizar el comportamiento de nuestra arqui-tectura de Big Data, se realizaron dos tipos depruebas. La primera de ellas mide el porcentajede aciertos que tiene el modelo para predecir laportabilidad y la segunda mide la velocidad de re-spuesta del cluster.

Para la primera prueba se genero el modelo deprediccion con Mahout usando unos 10’000 co-mentarios publicados en las paginas de Facebookde Claro Peru. Cada uno de estos comentariosfue etiquetado como “negativo” en caso de que laopinion indique intencion de realizar una portabil-idad, y “positivo” en caso contrario. Para etiquetara un comentario como negativo este debıa cumplircon al menos alguna de las siguientes condiciones:manifestar que algun producto o servicio de la

competencia era mejor, manifestar alguna quejasobre un servicio o producto de Claro Peru, man-ifestar directamente que realizarıa una portabili-dad, o sugerir una portabilidad a otros clientes. Laforma en como debıa etiquetarse cada comentariocomo positivo o negativo fue sugerido por analis-tas de negocio de Claro Peru.

Al ser la pagina de Facebook de Claro Peruuna pagina orientada al publico peruano, el id-ioma de los comentarios escritos es el espanol,la lengua mas extendida del Peru, sin embargo,segun (Shruti et al., 2014) los algoritmos de clasi-ficacion de texto son disenados en su mayorıa paratrabajar con el idioma ingles y lenguajes europeos,por lo que esta arquitectura tambien puede serprobada con alguno de estos otros lenguajes.

Con el modelo de prediccion generado, se car-garon otros 10’000 comentarios para su validaciony se construyo una matriz de confusion para medirsu efectividad. En total, para generar el modelo yvalidarlo se trabajo con 127MB de informacion.

Para las pruebas de velocidad del cluster, seanalizo la mejora en tiempos de respuesta que seobtenıa al incrementar el numero de nodos en elcluster. Se midieron los tiempos de respuesta delcluster al procesar las 10’000 publicaciones conuno, dos, tres y cuatro nodos.

Todos los nodos usados para las pruebas tenıanla misma configuracion de software y hardware.Cada uno contaba con un procesador Intel Corei5, 4 GB de RAM, un disco duro rıgido de 500 GBy Ubuntu 14.02 con Hadoop 1.2.1.

7 Resultados obtenidos

Los resultados obtenidos al medir el porcentajede aciertos de publicaciones positivas y negativasfueron calculados a partir de la matriz de con-fusion generada al realizar las pruebas, la cual esmostrada en la Figura 13.

Figura 13: Matriz de confusion

Por el lado de las predicciones realizadas paralos comentarios positivos, se obtuvo un total de5’839 aciertos y un total de 722 errores, por lo que

114

el porcentaje de aciertos para la prediccion de co-mentarios positivos fue de 88.99%.

Por el lado de las predicciones realizadas paralos comentarios negativos, se obtuvo un total de3’164 aciertos y un total de 275 errores, por lo queel porcentaje de aciertos para la prediccion de co-mentarios negativos es de 92.00%.

En conjunto, para los comentarios positivos ynegativos, la arquitectura de Big Data propuesta haobtenido un porcentaje de acierto de un 90.03%.

Los resultados obtenidos en las pruebas delcluster Hadoop, al medir la mejora en tiempos derespuesta agregandole mas nodos, son mostradosen la Figura 14.

Figura 14: Tiempos de respuesta

Inicialmente, el tiempo de respuesta con un solonodo era de 158 segundos. Al agregarle otro nodo,el tiempo de respuesta mejora pues disminuye en58 segundos, al agregarle dos nodos se produceuna mejora de 95 segundos menos, y al agregarletres nodos, el tiempo de respuesta disminuye en144 segundos.

En la Figura 15, puede verse que al aumentarel numero de servidores, los tiempos de respuestadisminuyen de manera lineal.

Figura 15: Nodos Vs Tiempos de respuesta

Esta escalabilidad lineal es obtenida gracias aMapReduce, por las razones explicadas en la sub-seccion 3.3

8 Conclusiones y trabajos futuros

En el presente artıculo se implemento una arqui-tectura basada en Big Data la cual permite prede-cir la portabilidad numerica de clientes en empre-sas de telefonıa movil. Para ello, se utilizo comofuente de datos los comentarios realizados en lapagina publica de Facebook de Claro Peru y conellos se creo un modelo de prediccion de analisisde sentimientos en Naive Bayes, el cual obtuvoun alto porcentaje de aciertos (90.03%) y permitioprocesar 10’000 comentarios en 14 segundos. Laarquitectura permite que la empresa de telefonıamovil pueda identificar en tiempo real que clientestienen intencion de irse a la competencia, tomandocomo fuente los datos dejados en redes sociales.

Se comprobo que las 5 V de Big Data se encuen-tren relacionadas con los problemas planteados enla seccion numero cuatro del artıculo y fueronresueltos, pues las predicciones se realizaron demanera rapida, se trabajo con datos publicos deFacebook y se realizo un proceso en el cual elcliente desconocıa el analisis realizado sobre suscomentarios, el proceso fue realizado en tiemporeal y sin necesidad de estandarizar los datos, y fueposible hacer seguimiento a la preferencia cam-biante del cliente respecto a los servicios que lasempresas de telefonıa ofrecen.

Por otro lado, (Alan et al., 2015) mencionaque los microblogs como Twitter tambien son uti-lizados a diario para expresar pensamientos per-sonales en la web, y permite adquirir una valiosacantidad de opiniones a los investigadores. Comotrabajo futuro se propone incluir a Twitter en laarquitectura expuesta como una nueva fuente dedatos. Para incluirla sera necesario utilizar las APIde REST y Streaming que Twitter provee de man-era similar al OpenGraph de Facebook visto en elpresente artıculo.

Para la implementacion de la arquitectura, seusaron las tecnologıas Hadoop, Mahout y Hive,pero Mike (2013) tambien propone otras tec-nologıas como Spark, Storm e Impala que ayu-dan a mejorar las capacidades de una arquitecturaen tiempo real. Como trabajo futuro, estas her-ramientas de Big Data pueden implementarse enla arquitectura propuesta y podemos llegar a com-probar si llegan a convertirse en una mejor opciontecnologica que solucione el problema.

Por ultimo, es importante destacar que laprediccion de la portabilidad numerica juega unrol importante en la industria de la telefonıa movil,

115

pues con el fin de reducir los diversos costos asoci-ados a la perdida de clientes, es imperativo que lasempresas de telefonıa movil desplieguen modelospredictivos que permitan identificar que clientesportaran a la competencia. Con estos modelos lasempresas podran formular estrategias de retencionde clientes con el objetivo de aumentar sus utili-dades y la rentabilidad del negocio.

ReferenciasAbdullah Gani, Aisha Siddiqa, Fariza Hanum, y Shaha-boddin Shamshirband. 2015. A survey on indexing tech-niques for big data: taxonomy and performance evalua-tion, Knowledge and Information Systems, vol. 44, n. 2,p. 1-44.

Alan Ritter, Preslav Nakov, Saif Mohammad, Sara Rosen-thal, Svetlana Kiritchenko y Veselin Stoyanov. 2015.SemEval-2015 Task 10: Sentiment Analysis in Twitter,9th International Workshop on Semantic Evaluation (Se-mEval 2015), p. 451-463.

Ambele Robert Mtafya, Dongjun Huang y GaudenceUwamahoro. 2014. On Objective Keywords Extraction:Tf-Idf based Forward Words Pruning Algorithm for Key-words Extraction on YouTube, International Journal ofMultimedia and Ubiquitous Engineering, vol. 9, n. 12, p.97-106.

Carlos Acevedo Miranda, Consuelo V. Garcıa Mendoza,Ricardo Clorio Rodriguez y Roberto Zagal Flores. 2014.Arquitectura Web para analisis de sentimientos en Face-book con enfoque semantico, Research in Computing Sci-ence, n. 75, p. 59-69.

Clement Kirui, Hillary Kirui, Li Hong y WilsonCheruiyot. 2013. Predicting Customer Churn in Mo-bile Telephony Industry Using Probabilistic Classifiers inData Mining, International Journal of Computer ScienceIssues, vol. 10, n. 1, p. 165-172.

Debajyoti Mukhopadhyay, Chetan Agrawal, DeveshMaru, Pooja Yedale y Pranav Gadekar. 2014. AddressingNameNode Scalability Issue in Hadoop Distributed FileSystem using Cache Approach, 2014 International Con-ference on Information Technology, Bhubaneswar, India,p. 321-326.

Dhruva Gajjar. 2014. Implementing the Naive Bayes clas-sifier in Mahout, Journal of Emerging Technologies andInnovative Research, vol. 1, n. 6, p 449-454.

Francisco Barrientos y Sebastian A. Rıos. 2013. Apli-cacion de Minerıa de Datos para Predecir Fuga deClientes en la Industria de las Telecomunicaciones, Re-vista Ingenierıa de Sistemas, vol XXVII, p. 73-107.

G. Bramhaiah Achary, P. Venkateswarlu, y B.V. Srikant.2015. Importance of HACE and Hadoop among Big DataApplications, International Journal of Research, vol. 2, n.3, p. 266-272.

Kankana Kashyap, Champak Deka y Sandip Rakshit.2014. A Review on Big Data, Hadoop and its Impact onBusiness, International Journal of Innovatite Research andDevelopment, vol 3, n. 12, p. 78-82.

M. Vasuki, J. Arthi y K. Kayalvizhi. 2014. Decision Mak-ing Using Sentiment Analysis from Twitter, InternationalJournal of Innovative Research in Computer and Commu-nication Engineering, vol. 2, n. 12, p. 71-77.

Mario Arias, Carlos E. Cuesta, Javier D. Fernandez yMiguel A. Martınez-Prieto. 2013. SOLID: una Arqui-tectura para la Gestion de Big Semantic Data en TiempoReal, XVIII Jornadas de Ingenierıa de Software y Basesde Datos, Espana, p. 8-21.

Mike Barlow. 2013. Real-Time Big Data Analytics:Emerging Architecture, O’Really Media.

Organismo Supervisor de Inversion Privada en Telecomu-nicaciones (OSIPTEL). 2015. Estado de la portabilidadnumerica en el primer trimestre del 2015, Peru.

Pablo Gamallo, Juan Carlos Pichel, Marcos Garcia, JoseManuel Abuın y Tomas Fernandez Pena. 2014. Analisismorfosintactico y clasificacion de entidades nombradasen un entorno Big Data, Procesamiento del Lenguaje Nat-ural, n. 53, p. 17-24.

Patricio Alfredo Perez Villanueva. 2014. Modelo dePrediccion de Fuga de Cliente de Telefonıa Movil PostPago, Memoria para optar al Tıtulo de Ingeniero Civil In-dustrial. Departamento de Ingenierıa Industrial, Universi-dad de Chile, Chile.

Rakesh Kumar, Neha Gupta, Shilpi Charu, Somya Bansaly Kusum Yadav. 2014. Comparison of SQL with HiveQL,International Journal for Research in Technological Stud-ies, vol. 1, n. 9, p. 28-30.

Seyyed Mojtaba Banaei y Hossein Kardan Moghaddam.2014. Hadoop and Its Roles in Modern Image Processing,Open Journal of Marine Science, vol. 4, n. 4, p 239-245.

Shruti Bajaj Mangal y Vishal Goyal. 2014. Text NewsClassification System using Naıve Bayes Classifier, Inter-national Journal of Engineering Sciences, vol. 3, p. 209-213.

Sunil B. Mane, Yashwant Sawant, Saif Kazi y VaibhavShinde. 2014. Real Time Sentiment Analysis of TwitterData Using Hadoop, International Journal of ComputerScience and Information Technologies, vol. 5, n. 3, p.3098-3100.

Tania Lucıa Cobos. 2011. Y surge el Community Man-ager, Razon y Palabra, vol. 16, n. 75.

Yiou Wang, Koji Satake, Takeshi Onishi y Hiroshi Ma-suichi. 2015. Improving Churn Prediction with Voiceof the Customer, XXI Annual Meeting Lenguage Proces-siong Society, p. 816-819.

116