Cree modelos de segmentación de clientes, en SPSS Statistics, a partir de hojas de cálculo

Genere modelos para utilizarlos ahora y con big data

En el área de la minería de datos, las hojas de cálculo representan una gran oportunidad. Si bien no es posible utilizar programas de hojas de cálculo para hacer minería de datos real, es posible utilizarlos para recolectar datos, visualizar resultados e incorporar información revisada por el usuario en IBM y obtener conocimientos de la herramienta® SPSS® Statistics. En este artículo, aprenda cómo incorporar una hoja de cálculo de datos sin procesar en SPSS Statistics y aplicar dos algoritmos de clasificación para crear modelos de segmentación de clientes. Después, utilice opciones en SPSS Statistics para crear archivos persistentes que contengan las normas para los modelos que puedan ser utilizados para la implementación de clasificaciones de clientes de regreso en las hojas de cálculo y en un entorno de big data.

David Gillman, Director de servicios, Data Sooner

David GillmanDavid Gillman ha trabajado en áreas de inteligencia de negocio, búsqueda de minería de datos y análisis predictivo por 20 años. Cuenta con formación académica en matemática aplicada, optimización y análisis estadístico con particular énfasis en su aplicación a actividades comerciales. Cuenta con experiencia práctica en la mejora de las operaciones empresariales mediante análisis aplicado en industrias de distribución, manufactura y hospitalidad con organizaciones de varios tamaños. Es posible ponerse en contacto con David en gillman@datasooner.com.



18-02-2013

A menos que su compañía sea un gran minorista, probablemente pueda alistar a sus clientes en una sola hoja de cálculo. Aunque no es el método más avanzado o técnicamente sofisticado, es posible recolectar fácilmente los elementos de datos sobre cada cliente en una hoja de cálculo.

Una hoja de cálculo es útil cuando crea modelos de segmentación de clientes. Es posible utilizarla para recolectar datos a partir de distintos orígenes con facilidad, distribuirlos para su revisión y editarlos para incrementar la precisión.

IBM SPSS Statistics facilita el uso de esa hoja de cálculo, lo cual es bueno, ya que es posible hacerlo de forma reiterada. A medida que analiza los resultados y habla con otras personas, es posible añadir campos nuevos y luego ejecutar el proceso de modelado nuevamente.

Características del cliente

Comienza por recolectar toda la información relevante y necesaria sobre sus clientes en una hoja de cálculo. La primera pregunta normalmente es, ¿cuáles características utiliza?

Yo pienso que los tipos de características de clientes entran en tres categorías. En primer lugar, están las características con las que la mayoría de las personas se encuentran primero. ¿Dónde está ubicado el cliente? ¿Cuál es la industria del cliente? ¿Cuántos empleados tiene? ¿Cuáles son sus ingresos? ¿En cuántas regiones está el cliente? Estas son las características demográficas de sus clientes, y sus sistemas de gestión de relaciones con los clientes (CRM) frecuentemente ya contienen estos puntos de datos.

Segundo, están las características del comportamiento de sus clientes. Estas características de comportamiento son puntos de datos, tales como el número de pedidos en un mes, el valor promedio de los pedidos y el número de días para pagar. Frecuentemente, usted utiliza consultas para extraer esta información de su sistema de planificación de recursos empresariales. Quizá tenga estas características de comportamiento de sus clientes ya disponibles. Algunas veces, usted crea nuevos cálculos en consultas para obtener nuevos números.

Tercero, están las características de sus clientes que no provienen de ninguna base de datos centralizada. Ejemplos de este tipo de información incluyen una evaluación de la calidad de la relación de su agente de ventas o una clasificación que se base en el número de devoluciones o quejas. Tal vez tenga que añadir este tipo de datos manualmente.


Métodos de SPSS Statistics para crear modelos de segmentación

SPSS Statistics cuenta con varios algoritmos estadísticos para crear la segmentación. Tiene más de los que este artículo puede cubrir en su espacio asignado y más de los que usted probablemente quiera leer de una sola vez, pero a continuación puede ver una lista rápida:

  • Two step
  • K-Means
  • Hierarchical
  • Tree
  • Discriminant
  • Nearest neighbor

Estos son los algoritmos de agrupación en clúster más importantes en el uso general. También es posible arrojar una red neural en esa lista, pero, en SPSS Statistics, ese algoritmo está listado por separado.

Cada uno de estos algoritmos tiene fortalezas y debilidades, según la cantidad de datos que tenga, el tipo de variables o sus características y su objetivo final en la clasificación de los datos. Voy a ocuparme de dos de los algoritmos en este artículo: K-Means y Tree. (Tree en este caso es más ampliamente conocido como Decision Tree.)

Una vez que los datos se encuentran en la hoja de cálculo y luego son incorporados en SPSS Statistics Data Editor, es posible elegir con qué algoritmo trabajar.


Trabajo práctico con SPSS Statistics

Los datos que se muestran en la Figura 1 provienen de una hoja de cálculo y luego son leídos en SPSS Data Viewer.

Figura 1. Datos de la hoja de cálculo en SPSS Statistics Data Editor
Image showing spreadsheet data in the SPSS Statistics Data Editor

(Vea una versión más amplia de la Figura 1.)

K-Means

K-Means es un algoritmo popular de agrupación en clúster. El concepto clave del algoritmo K-Means a entender es que elige en forma aleatoria un punto central para cada clase. Después, el algoritmo agrupa a los miembros en la clase del punto que esté más cercano al miembro. En la mayoría de los casos, esa es la distancia euclideana en el espacio multidimensional. Independientemente de eso, la siguiente subetapa es encontrar el punto central (normalmente llamado el centroide) de cada grupo. Debido a que el primer punto se eligió en forma aleatoria, es posible ver que el centro nuevo es diferente.

Una vez encontrado el nuevo centroide, se vuelve a calcular la distancia desde todos los puntos y se reagrupan los miembros con base en el centroide trasladado. Este proceso se repite hasta que el cambio en el posicionamiento central se detiene o se vuelve tan pequeño que ya no importa.

Para utilizar la opción de agrupación en clúster de K-Means, haga clic en Classify > K-Means Cluster en la lista Analyze del menú principal de Data Editor. Aparece una ventana similar a la Figura 2 .

Figura 2. Página principal del algoritmo K-Means
Image showing the K-Means algorithm's main page

(Vea una versión más amplia de la Figura 2.)

Mueva las variables que desea utilizar en su análisis de la lista izquierda a la lista Variables . De la misma forma, seleccione una columna para utilizarla como identificador de registro exclusivo y proporciónelo en el campo Label Cases by . Para la clasificación de clientes, ese ID es invariablemente un número de cliente.

En esta etapa, tenga cuidado de no soltar sin motivo todas las variables sin antes verificar su utilidad. Algunas veces, las variables anacrónicas pueden arrastrarse hasta aquí. Por ejemplo, si tiene un campo que ya cuenta con un clasificador tal como una clasificación de clientes dada por agentes de ventas, esa información puede influir en gran medida en el lugar donde terminen los clústeres. Afortunadamente, K-Means no es tan susceptible a tener esta variable ya agrupada como algunos de los otros algoritmos.

A continuación, ajuste el número de clústeres que le gustaría ver al final. Ahora, la ventana se ve como la Figura 3.

Figura 3. K-Means con opciones de configuración
Image showing K-Means with configuration options

(Vea una versión más amplia de la Figura 3.)

Cuando esté satisfecho con sus opciones, haga clic en OK. En el futuro, puede experimentar con los botones Iterate y Options . Estos pueden cambiar los resultados, pero requieren que conozca el algoritmo y el efecto que el ajuste pueda tener. En el recuadro Method , asegúrese de que la opción Iterate and classify esté seleccionada.

En el recuadro Cluster Centers , seleccione la opción Write final . Seleccione la opción Data file ; después, haga clic en File y dé al archivo un nombre en el explorador de archivos que aparece. Recuerde dónde reside este archivo.

La ventana K-Means Cluster Analysis ahora se ve como la Figura 4.

Figura 4. K-Means escribiendo resultados en un archivo
Image showing K-Means writing results to a file

Haga clic en OK. El algoritmo comienza a trabajar. Cuando haya terminado, SPSS Statistics Viewer se verá como la Figura 5.

Figura 5. Resultados de K-Means en Viewer
Image showing K-Means results in the Viewer

(Vea una versión más amplia de la Figura 5.)

¡Enhorabuena! Ha creado una clasificación de agrupación en clúster de sus clientes. Ahora, es posible aplicar el algoritmo a nuevos datos para ver cómo se muestran en comparación con un conjunto distinto de clientes o, con el tiempo, aplicarlo al archivo del cliente a medida que cambian los datos.

Para hacer eso, lleve el nuevo conjunto de datos de clientes de la hoja de cálculo a SPSS Statistics Data Viewer. Haga clic en Analyze > Classifyy después seleccione la opción K-Means Clustering . Aparece la misma ventana—K-Means Cluster Analysis—. Mueva las columnas en la hoja de cálculo hacia la lista Variables .

Aquí es donde cambia el proceso. Modifique las opciones de la primera vez que ejecutó el algoritmo para generar el modelo. Específicamente, en el recuadro Method , seleccione la opción Classify only . Luego, en Cluster Centers, marque el recuadro de selección Read initial . Seleccione las opciones External data file y después haga clic en File, use el explorador de archivos para navegar hacia el archivo que el algoritmo K-Means grabó en el proceso anterior. La ventana ahora se ve como la Figura 6.

Figura 6. K-Means leyendo en un modelo existente
Image showing K-Means reading in an existing model

Haga clic en Save. En la ventana K-Means Cluster: Save New , que se muestra en la Figura 7, marque los recuadros de selección Cluster membership y Distance from cluster center . Luego, haga clic en Continue.

Figura 7. Opciones de salvado de K-Means
Image showing K-Means Save Options

Estas opciones muestran la membresía de clúster para cada fila (caso o cliente) en la hoja de cálculo que está en la ventana Data Editor.

Ahora, haga clic en OK para permitir que SPSS Statistics utilice el modelo generado previamente para clasificar a los nuevos clientes. Aparecen dos nuevas columnas en Data Editor: la membresía de clúster y la medida de distancia para cada cliente. Haga clic en File > Save en Data Viewer para salvar esta información en una hoja de cálculo de manera que sea posible integrar la clasificación en sus procesos empresariales.

¡Listo! Trasladó la información de la hoja de cálculo al modelo y viceversa.

Tree (Decision Tree)

Los Decision Trees están lejos de ser el algoritmo más sofisticado disponible en el submenú Classify . Dicho esto, sin embargo, son quizá los más fáciles de explicar a la gente de negocios. Para utilizar el algoritmo Decision Tree, deber procesar la hoja de cálculo de todos sus clientes en SPSS Data Editor.

Hay una diferencia en los datos respecto a K-Means: en K-Means, indiqué mantener la información como las clasificaciones de vendedores fuera de los datos entrantes. En algoritmos como K-Means, dichas variables pueden influir y potencialmente abrumar las otras variables, comprobando solo que los clientes pueden ser agrupados como los vendedores ya los han agrupado.

En Decision Trees, es necesario contar con una variable que sea la variable de destino. En otras palabras, es necesario contar con una columna que ya clasifique a sus clientes. En este ejercicio, utilizo una clasificación basada en ventas, ya que dicha clasificación probablemente exista en su compañía en algún lugar. La clasificación existente puede necesitar pulido y limpieza antes de que la use formalmente, pero quizá sea el mejor lugar para obtener una variable para que la usen los Decision Trees.

Revisemos los recuadros de menú de Decision Tree para ver cómo funciona esto en SPSS Statistics:

  1. Lea la hoja de cálculo que contiene la información del cliente en Data Editor.
  2. Haga clic en Analyze > Classifyy después seleccione la opción Tree Clustering .

    A diferencia de cuando seleccionó K-Means, aparece la ventana Decision Tree , que se muestra en la Figura 8, antes de que configure el algoritmo.

    Figura 8. Ventana de advertencia de la variable del algoritmo Decision Tree
    Image showing the Decision Tree algorithm variable warning window
  3. Haga clic en Define Variable Properties.

    Aparece la ventana Define Variable Properties , que se muestra en la Figura 9, pero con todas las variables en la lista Variables . Mueva las variables en las que desea ajustar las propiedades hacia la lista Variables to Scan .

    Figura 9. Recuadro Decision Tree Variable Definition
    Image showing the Decision Tree Variable Definition box
  4. Seleccione aquellas variables que puedan representar un orden, tales como A, B y C, donde A es la mejor y C es la peor.

    Una variable cuyos valores de miembro representan una clasificación o un orden que el software no detectará—se denomina variable ordinal. De la misma forma, una variable nominal es una en la que los valores son categorías, pero no hay un orden. Ejemplos conocidos de esto son los colores. No hay un orden para el azul, el negro y el amarillo en los datos comerciales. Utilice la misma lista desplegable para crear variables nominales apropiadas.

    También, esté atento a variables que piense que puedan estar en el medio. Por ejemplo, las tallas de la ropa pueden ser consideradas nominales u ordinales según las circunstancias. Cuando llegue a este punto, se encontrará en las minucias de las estadísticas aplicadas.

  5. Haga clic en Continue.

Independientemente de las variables que elija, las clasifica en la ventana Define Variable Properties , que se muestra en la Figura 10. Para este ejercicio, clasifiqué algunas de las variables, como el código SIC para el tipo de empresa en la que se encuentra el cliente, como nominales. A otras, como el campo de historial de pagos, las clasifiqué como ordinales, ya que hay una categoría para clientes que cumplen con los pagos que va en orden descendente hacia los clientes que no cumplen con los pagos.

Figura 10. La ventana del algoritmo Decision Tree para cambiar las propiedades de la variable
Image showing the Decision Tree algorithm's window for changing variable properties

(Vea una versión más amplia de la Figura 10.)

Esta ventana contiene otras opciones para definir mejor las propiedades de sus variables, pero están fuera del ámbito de este artículo.

Una vez que haya terminado de definir las características de sus variables, haga clic en OK para regresar a Data Editor. Inicie el algoritmo Tree Clustering nuevamente desde el menú. Si la opción se muestra de nuevo para configurar las propiedades de cada variable, haga clic en OK.

Ahora, se encuentra en el centro de la ventana Decision Tree .

Hay muchos recursos en Internet con los que puede aprender acerca de Decision Trees, distintos algoritmos estadísticos que puede emplear y cómo esos parámetros de los algoritmos funcionan e influyen en los resultados. Yo puedo mostrarle las funciones simples del algoritmo Tree de forma que pueda comenzar a utilizarlo ahora y aprenda las opciones más complejas más adelante. Las ventanas que aparecen cuando hace clic en Criteria o en Options contienen muchos dispositivos que pueden influir en el procesamiento del modelo de árbol, como aquellos dispositivos que afectan las clasificaciones de las variables, la poda de árboles y los costos de cálculos incorrectos.

En la ventana principal, mueva las variables que desea utilizar para desarrollar el modelo de árbol desde la lista Variables hacia la lista Independent Variables , como se muestra en la Figura 11. También, mueva una sola variable hacia la lista Dependent Variable . La variable dependiente es la variable de destino de la que hablé anteriormente.

Figura 11. Ventana del menú del algoritmo Decision Tree
Image showing the Decision Tree algorithm menu window

A continuación, haga clic en Save. Cuando la ventana Decision Tree: Output aparece, haga clic en la pestaña Rules , que se muestra en la Figura 12. En el área Syntax , seleccioné la opción SQL , marqué el recuadro de selección Export rules to a file y después especifiqué un archivo hacia el cual exportar las reglas. Este dispositivo es excelente para integrar la clasificación en aplicaciones empresariales como CRM e informes. Tal vez tenga que editar el Lenguaje de Consulta Estructurado (SQL) y pegarlo en los informes o programas, pero es un atajo excelente para desplegar el modelo Tree.

Figura 12. Determine el tipo de salida y la ubicación para el algoritmo Decision Tree
Image showing how to determine the output type and location for the Decision Tree algorithm

Haga clic en Continue. Luego, haga clic en Save. En la Figura 13, especifiqué un archivo hacia el cual deseo dirigir la salida del modelo de árbol. Con este importante dispositivo del modelo de árbol, es posible integrar las normas del modelo de árbol en otras aplicaciones. Es posible incluso utilizar las reglas en el archivo XML para alimentar un proceso de clasificación de big data.

Figura 13. Salvando el archivo XML de Decision Tree
Image showing how to save the Decision Tree XML file

Una vez especificado el archivo en el cual va a almacenar las reglas de árbol, haga clic en Continue.

Para recapitular el último par de etapas, usted creó dos archivos de salida, cada uno de los cuales contiene las reglas de Decision Tree. Uno está en formato SQL y el otro está en formato XML.

En la ventana principal, haga clic en Validation. Aparece la ventana Decision Tree: Validation , que se muestra en la Figura 14. Aquí es donde mi desarrollo anterior sobre capacitación y conjuntos de validación se vuelve útil. Seleccione la división de porcentaje con la que desea capacitarse; el resto está dedicado a la configuración de la prueba. Yo también dejo la opción predeterminada en el área Display Results ForTraining and test samples—seleccionada.

Figura 14. Ventana Decision Tree: Validation
Image showing the Decision Tree: Validation window

Estas opciones se muestran en Data Editor en función de la forma en que el modelo clasifica cada caso o cliente. Los resultados de la comparación del rendimiento del modelo con el conjunto de datos de validación se muestran en SPSS Statistics Viewer.

Haga clic en Continue para regresar al menú principal de Decision Tree. Después, haga clic en OK para ejecutar el proceso de modelado. Las reglas se colocan en el archivo XML que especificó en las opciones de Save. De la misma forma, el archivo SQL tiene las mismas reglas.


Segmentación de clientes y big data

Ahora que tiene las bases para generar un modelo de segmentación, ampliemos el tema para ver cómo pueden aplicarse estos modelos y sus habilidades en el contexto de bases de big data.

Utilizo una definición general de big data—, es decir, cuando un flujo de datos tiene demasiada variedad y llega demasiado rápido para el análisis manual. La aplicación de un modelo de clasificación en ese contexto permite a los clasificadores automatizados graduar o segmentar a los clientes en tiempo real. A medida que llegan nuevos clientes o que los clientes antiguos cambian sus patrones de compra, con los big data es posible ajustar el proceso de marketing y ventas en tiempo real.

Imagine una situación en la que su compañía cuenta con nuevas fuentes de datos en el futuro—chips de identificación de radiofrecuencia de movimiento de productos, análisis de los sentimientos del cliente que se basa en los emails entrantes, boletines de noticias y el clima, entre otros potenciales. Utilizando una herramienta como IBM InfoSphere® BigInsights™ es posible gestionar esas fuentes de datos entrantes y almacenar los datos para su uso a largo plazo.

Combinando las herramientas dentro de InfoSphere BigInsights con las reglas de XML y SQL de SPSS Statistics, es posible clasificar y reclasificar a los clientes a medida que los datos circulan en InfoSphere BigInsights. Imagine los beneficios que obtendrá cuando la base de datos notifique automáticamente a las personas cuando un cliente se mueva de un segmento a otro. Su personal empresarial interno estará encantado de recibir esa información en tiempo real.

Por ahora, la mayoría de las personas apenas están comenzando a trabajar con el concepto de big data. Afortunadamente, por el momento es posible utilizar IBM InfoSphere BigInsights Basic Edition sin cargo (vea Resources). Cuando comience a desplegar big data en un entorno de producción, podrá avanzar con InfoSphere BigInsights Enterprise Edition.


Conclusión

SPSS Statistics puede hacer un impresionante trabajo de minería de datos y de analítica predictiva. La segmentación de clientes es una función natural cuando se trabaja con minería de datos. Puede utilizar las herramientas básicas con las que cuenta para analizar y desplegar un modelo de segmentación de clientes. Puede desplegar la información de segmentación para una amplia variedad de usos, incluso en las hojas de cálculo de sus usuarios empresariales.

Más aún, la segmentación de clientes es un área que puede utilizar ahora, con los mismos modelos desplegados en un entorno de big data y aplicar en el futuro para aprovechar el arduo trabajo analítico.

Recursos

Aprender

Obtener los productos y tecnologías

Comentar

  • Participe en la Comunidad developerWorks. Conéctese con otros usuarios de developerWorks mientras explora los blogs conducidos por desarrolladores, foros, grupos y wikis.

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Big data y analytics, Information mgmt
ArticleID=858213
ArticleTitle=Cree modelos de segmentación de clientes, en SPSS Statistics, a partir de hojas de cálculo
publish-date=02182013