Entrenamiento, validación y test

Cuando realizamos modelos hay 3 conjuntos de datos fundamentales: Conjunto de datos de entrenamiento : son los datos que entrenan los modelos Conjunto de datos de validación : selecciona el mejor de los modelos entrenados Conjunto de datos de test : Nos ofrece el error real cometido con el modelo seleccionado Para entender mejor su importancia y como funcionan he preparado el siguiente esquema/ejemplo: Una empresa de telecomunicaciones de cara a mejorar la efectividad de sus campañas comerciales decide realizar un modelo de propensión a la desconexión. Se define un un universo como los clientes activos a último día de un mes y se determina cuales de ellos han desconectado nuestra línea al mes siguiente. Podría ser recomendable utilizar varias cosechas de clientes para evitar efectos estacionales o campañas agresivas de la competencia. Para el universo seleccionado la tasa de desconexión se sitúa en un 12%. Este universo hemos de dividirlo en 2 partes. La primera de ellas formará el conjunto de datos de entrenamiento y validación y aquí es importante realizar un sobremuestreo estratificado del número de desconexiones para mejorar el entrenamiento del modelo. El estrato será tiene evento VS no tiene evento. En el esquema gráfico aumento la proporción de desconexiones hasta un 50%, no es una proporción imprescindible, si nuestra muestra no nos permite esa proporción algunos expertos con los que he trabajado y yo mismo aseguramos que un 20% de eventos puede ser suficiente; pero si es posible buscaremos el 50-50. En un árbol de decisión (por ejemplo) este sobremuestreo nos identificaría ramas extremas. Una vez definido el conjunto de datos sobremuestreado lo separamos en entrenamiento y validación. Este dinosaurio siempre deja la proporción 70-30… ...

28 de julio de 2010 · rvaquerizo

Trucos R. La función mod para R

Buscando algunas cosas sobre R he encontrado esta función que hice hace mucho tiempo. De hecho puedo decir que de las primeras que hice allá en 2001 (creo) cuando empecé a conocer esto de R. Por aquellos entonces aseguré que el futuro pasaba por R y 9 años después sigo diciendo lo mismo, el tiempo me dará la razón, lo que no me imaginaba que hacía falta tanto tiempo. En fin, historias del dinosaurio. Vamos con la función «histórica». Al no disponer de la función mod en R la programé: ...

27 de julio de 2010 · rvaquerizo

Gráficos de densidades con SAS y el PROC KDE

El PROC KDE de SAS está incluido en el módulo SAS/STAT. Es un procedimiento que nos permite estudiar gráficamente las distribuciones de variables continuas. Lo que nos produce son gráficos de densidades. Para seguir el ejemplo nos vamos a ir a Yahoo Finance y descargarnos un evolutivo del IBEX de los últimos 3 meses (yo realizo este proceso con Excel), una vez tengamos el dataset creado, para el análisis de la densidad univariante podemos hacer: ...

29 de junio de 2010 · rvaquerizo

X command (MS-DOS prompt) desde SAS.

Como veo que a Raul le faltan algunas visitas para llegar a las 5000 (mensuales?), y dado que se curra esta web para dar a conocer multiples trucos en R, SAS, WPS, et…, he decidido crear esta sencilla macro (si queremos que el X command se ejecute repetitivamente dentro de un bucle, solo puede hacerse dentro de una macro pues si la ejecutamos dentro de un paso data SOLO lo ejecuta 1 vez por más que escribamos ‘do i=1 to 100;’ ). El comando X lo que hace es traspasar la sentencia SAS a ‘cmd’ o ‘command’ del MS-DOS. Aqui solo lo limito hasta 5 en modo de ejemplo: ...

16 de junio de 2010 · danifernandez

Curso de lenguaje SAS con WPS. Ejecuciones

Hasta la fecha nos hemos aproximado al interfaz de WPS y hemos ejecutado algunos script para trabajar con conjuntos de datos SAS y sobre todo entender que hace el paso DATA, también hemos analizado que son y como trabajan las librerías WPS. En nuevas entregas nos seguiremos centrando en el trabajo con dataset temporales y permanentes. La intención es conocer bien que hace DATA y establecer una metodología de trabajo con WPS. SAS es un lenguaje orientado a la gestión de datos y las personas acostumbradas a programar en otros lenguajes pueden tener muchos problemas conceptuales. Al final, con este manual intentaremos ayudar a todos aquellos que trabajáis con SAS a crear un método que permita a nuestros procesos SAS que funcionen de la forma más óptima para ganar tiempo y espacio en disco los dos elementos más importantes cuando manejamos grandes volúmenes de datos. ...

9 de junio de 2010 · rvaquerizo

Curso de lenguaje SAS con WPS. Que hace el paso DATA

El elemento principal del lenguaje SAS es el paso DATA. Este elemento crea, modifica y transforma conjunto de datos SAS (datasets). El paso DATA se compone de 2 fases, la fase de compilación y la fase de ejecución. En la fase de compilación DATA crea una estructura de memoria, conocida como program data vector (PDV), con la estructura que SAS considera más adecuada para el conjunto de datos, paralelamente crea toda una descripción de la información del dataset. Una vez creada la estructura de la tabla SAS se pasa a la fase de ejecución en la que SAS itera con cada registro haciendo “output” en el dataset cuando SAS llega a la sentencia RUN. La iteración se lleva a cabo hasta que SAS detecta el final del archivo. ...

29 de mayo de 2010 · rvaquerizo

Curso de lenguaje SAS con WPS. Introducción

Hoy me gustaría mostraros el interfaz de WPS y cuales son las características principales de WPS y cuales son comunes entre SAS y WPS. Si pincháis este link podréis descargaros una demo de WPS y seguir este curso. Cuando lo hagáis y abráis WPS os encontraréis con esto: Este es el interfaz de WPS. Desde mi prisma es muy parecido a la versión 4 del Enterprise Guide. Se compone fundamentalmente de una ventana donde podemos editar programas con un código semafórico igual al de SAS. Tenemos una ventana donde navegamos por resultados, log y controlamos las ejecuciones. A la izquierda de ella tenemos las propiedades que se activarán cuando seleccionemos un elemento (particularmente me gusta mucho este elemento). El navegador del proyecto nos permitirá movernos entre los programas o scripts de SAS y además a la derecha tenemos una ventana que nos permite movernos entre los elementos y los procesos del código. ...

22 de mayo de 2010 · rvaquerizo

Las cuentas claras.

Si hay alguna tarea o procedimiento indispensable y más repetitivo hasta la saciedad por excelencia a la hora de trabajar con bases de datos y tener que reportar alguna información por mínima que sea, esta es contar o contabilizar el número de casos (registros) que tenemos en total o en subtotales (por grupos) dentro de una tabla (los llamados datasets en SAS). Para dar mayor utilidad a este ‘tutorial’ sobre conteo, partiré de una tabla con 2 columnas (campos) tipo cadena, es decir tipo texto, de manera que podamos ver diferentes métodos para contar-contabilizar NO solo campos tipo texto sino también trucos que nos den una solución más ‘elegante’ de la combinación de ambos campos tipo cadena. Estos 2 campos se llamarán grupo y tipo, muy empleados por muchos programadores, pero se podrían llamar tambien familia y familia_segmento o bien comunidad_1 y comunidad_2 o bien zona_tipo1 y zona_tipo2 o bien entorno_primario y entorno_secundario, o si el ejercicio tratase de contar el número de alumnos por sexo y color_ojos bastaría con sexo y color_ojos, etc etc. ...

22 de mayo de 2010 · danifernandez

Curso de lenguaje SAS con WPS

Paro algunas series de las que venía escribiendo para iniciar una que es de mucha importancia para el blog. Voy a acercar el lenguaje SAS a los lectores con un menor nivel. Se trata de crear uncurso introductorio al lenguaje SAS pero con la herramienta WPS. La metodología que seguirá el curso será muy similar a la de un manual que colgué en la red hace unos años. Pero en esta ocasión emplearé un lenguaje más apropiado para el blog y mejoraré algunos puntos del manual e incidiré en otros que no quedan muy claros. ...

21 de mayo de 2010 · rvaquerizo

Lecciones de economía de un ignorante. El Club Bilderberg en España

Resulta que el grupo de seres humanos que dirige el mundo se reune este año en la ciudad de los ingleses borrachos. El Club Bilderberg pasa este año por nuestro país y se me ha ocurrido el siguiente modelo econométrico: 2008 – EEUU – Subprime 2009 – Grecia – Rescate 2010 – España - Glub Por lo visto entre los asistentes españoles tenemos a la reina Sofía, no va el rey porque si aparece ni trabajan ni se reunen ni nada, se dedican a la fiesta, el jolgorio y se les olvida crear burbujas, crisis, virus de la gripe, etc. Ya sabéis, las cosas estas a las que se dedican «los que manejan el mundo». En fin, espero equivocarme pero el año que viene nos toca a nosotros la crisis gorda. ...

11 de mayo de 2010 · rvaquerizo