
En un
artículo anterior hablé sobre la estructura de un proyecto de Data Science basado en materiales de metodología de IBM: cómo está estructurado, en qué etapas consiste, qué tareas se resuelven en cada etapa. Ahora me gustaría dar una visión general de la etapa que requiere más tiempo, que puede tomar hasta el 90% del tiempo total del proyecto: estas son las etapas asociadas con la preparación de datos: recopilación, análisis y limpieza.
En la descripción original de la metodología, el proyecto de Data Science se compara con la preparación de un plato y el analista con un chef. En consecuencia, la etapa de preparación de datos se compara con la preparación de productos: después de haber decidido la receta para preparar el plato en la etapa de análisis de la tarea comercial, necesitamos encontrar, recolectar en un solo lugar, limpiar y cortar los ingredientes. En consecuencia, el sabor del plato dependerá de qué tan bien se realizó esta etapa (supongamos que adivinamos con la receta, especialmente porque hay muchas recetas en el dominio público). Trabajar con ingredientes, es decir, preparar datos, es siempre un negocio de joyería, laborioso y responsable: un producto estropeado o sin lavar, y todo el trabajo se desperdicia.
Recogida de datos
Después de haber recibido una lista de ingredientes que podamos necesitar, procedemos a buscar datos para resolver el problema y formar una muestra con la que trabajaremos en el futuro. Recuerde por qué necesitamos una muestra: en primer lugar, la usamos para hacer una idea de la naturaleza de los datos en la etapa de preparación de datos y, en segundo lugar, formaremos muestras de prueba y capacitación a partir de ella en las etapas de desarrollo y configuración del modelo.
Por supuesto, no tomamos casos en los que usted, bajo la amenaza de un NDA duro, debe comprender algo sobre los datos en un proyecto a gran escala, y recibe los datos de un cliente severo en una unidad flash o como un archivo adjunto a una carta. Suponga que lo está haciendo bien y tiene acceso a los datos. En esta etapa, es necesario preparar una muestra que:
- refleja todas las propiedades necesarias de la población
- Era conveniente trabajar, es decir, no demasiado grande.
Parecería, ¿por qué limitarse a la cantidad de datos en la era de los grandes datos? Esto es en sociología, como regla general, la población general no está disponible: cuando examinamos la opinión pública, es imposible cuestionar a todas las personas, incluso en teoría. O en medicina, donde se está estudiando un nuevo medicamento en un cierto número de conejos / ratones / moscas experimentales: cada objeto adicional en el grupo de estudio es costoso, problemático y difícil. Sin embargo, incluso si toda la población está realmente disponible para nosotros, Big Data requiere una infraestructura adecuada para los cálculos, y su implementación es costosa en sí misma (no estamos hablando de casos en los que una infraestructura lista para usar y configurada esté a su alcance). Es decir, incluso si es teóricamente posible calcular todos los datos, generalmente resulta que es largo, costoso y generalmente por qué, porque puede prescindir de todo esto si prepara una selección de alta calidad, aunque pequeña, que consista, por ejemplo, en varios miles de registros.
El tiempo y el esfuerzo dedicados a crear la muestra le permite dedicar más tiempo a la minería de datos: por ejemplo, los valores atípicos o faltantes pueden contener información valiosa, pero entre millones de registros es imposible de encontrar, y entre varios miles lo es por completo.
¿Cómo evaluar la representatividad de los datos?
Para comprender cuán representativa es nuestra muestra, el sentido común y las estadísticas nos son útiles. Para los datos categóricos, debemos asegurarnos de que en nuestra muestra cada atributo que importa desde el punto de vista del problema comercial se presente en las mismas proporciones que en la población general. Por ejemplo, si examinamos los datos de pacientes en la clínica y la pregunta concierne a personas de todas las edades, la muestra que incluye solo niños no será adecuada para nosotros. Para los datos históricos, vale la pena verificar que los datos cubren un intervalo de tiempo representativo en el que las características bajo investigación toman todos los valores posibles. Por ejemplo, si analizamos las apelaciones a las agencias gubernamentales, lo más probable es que los datos de la primera semana de enero no sean adecuados para nosotros, porque la caída de las apelaciones cae en este momento. Para los signos numéricos, tiene sentido calcular las estadísticas básicas (al menos estadísticas puntuales: promedio, mediana, variabilidad y comparar con estadísticas similares de la población general, si es posible, por supuesto).
Problemas de recopilación de datos
A menudo sucede que nos faltan datos. Por ejemplo, un sistema de información ha cambiado y los datos del sistema anterior no están disponibles, o la estructura de datos es diferente: se utilizan claves nuevas y es imposible establecer una conexión entre los datos antiguos y los nuevos. Los problemas de organización tampoco son infrecuentes cuando varios propietarios poseen datos y no todos pueden configurarse para gastar tiempo y recursos en la carga de un proyecto de terceros.
¿Qué hacer en este caso? A veces resulta encontrar un reemplazo: si no hay tomates frescos, entonces pueden aparecer los enlatados. Y si la zanahoria resultó estar podrida, debes ir al mercado por una nueva porción. Por lo tanto, es muy posible que en esta etapa tengamos que volver a la etapa anterior, donde analizamos la tarea comercial y nos preguntamos si era posible reformular la pregunta de alguna manera: por ejemplo, no podemos determinar claramente qué versión de la página de la tienda en línea es mejor vende un producto (por ejemplo, no hay suficientes datos de ventas), pero podemos decir en qué página los usuarios pasan más tiempo y cuáles fallan menos (sesiones de navegación muy cortas de unos segundos de duración).
Análisis exploratorio de datos
Suponga que se reciben los datos y existe la confianza de que reflejan la población general y contienen una respuesta a la tarea comercial planteada. Ahora deben examinarse para comprender qué calidad tienen los
productos de datos en nuestras manos y si son adecuados para la receta prevista. Supongamos que ya hemos tomado algunos ejemplos de registros, ordenado cuál es la clave y qué tipos de datos contiene: numérico, binario, categórico. Después de eso, puede comenzar a estudiar cada síntoma individualmente. La herramienta principal para la investigación es la estadística descriptiva.
Evaluación de posición central
En la primera etapa del estudio, sería bueno entender qué valores son típicos para cada característica. La estimación más simple es la media aritmética: un indicador simple y bien conocido. Sin embargo, si la dispersión de datos es grande, el promedio no nos dirá mucho acerca de los valores típicos: por ejemplo, queremos entender el nivel de salario en un hospital. Para hacer esto, sume el salario de todos los empleados, incluido el director, que recibe varias veces más que la enfermera. La media aritmética obtenida será más alta que el salario de cualquiera de los empleados (excepto el director) y no nos dirá nada sobre un salario típico. Dicho indicador solo es adecuado para informar al Ministerio de Salud, que con orgullo informará sobre los aumentos salariales. El valor obtenido está demasiado sujeto a la influencia de los valores límite. Para evitar la influencia de valores atípicos (valores límite atípicos), se utilizan otras estadísticas: la mediana, que se calcula como el valor central en los valores ordenados.
Si los datos son binarios o categóricos, debe averiguar qué valores son más comunes y cuáles son menos comunes. Para hacer esto, use el mod: el valor o categoría más común. Esto es útil, entre otras cosas, para comprender la representatividad de la muestra: por ejemplo, examinamos los datos de los registros médicos de los pacientes y descubrimos que las tarjetas ⅔ pertenecen a mujeres. Esto hará que se pregunte si hubo un error durante el muestreo. Para mostrar las relaciones de categoría entre sí, es útil una representación gráfica de los datos, por ejemplo, en forma de barras o gráficos circulares.
Evaluación de la variabilidad de los datos.
Después de haber determinado los valores típicos de nuestra muestra, podemos observar valores atípicos: valores atípicos. Las emisiones pueden decirnos algo sobre la calidad de los datos: por ejemplo, pueden ser signos de errores: confusión de dimensionalidad, pérdida de lugares decimales o curva de codificación. También hablan sobre cuánto varía la información, cuáles son los valores limitantes de las características estudiadas.
A continuación, podemos proceder a una evaluación general de cuánto varía la información. La variabilidad (también es dispersión) muestra cuánto difieren los valores del rasgo. Una forma de medir la variabilidad es evaluar las desviaciones típicas de las características de un valor central. Está claro que promediar estas desviaciones no nos dará mucho, ya que las desviaciones negativas neutralizan a las positivas. Las estimaciones de variabilidad más conocidas son la varianza y la desviación estándar, teniendo en cuenta el valor absoluto de las desviaciones (la varianza es la media de las desviaciones cuadradas y la desviación estándar es la raíz cuadrada de la varianza).
Otro enfoque se basa en la consideración de la propagación de datos ordenados (para conjuntos de datos grandes, estas medidas no se utilizan, ya que primero debe ordenar los valores, lo cual es costoso en sí mismo). Por ejemplo, evaluación utilizando percentiles (también puede encontrar solo percentiles). Enésimo percentil: estos son valores que al menos el N por ciento de los datos toma dicho valor o más. Con el fin de evitar una sensibilidad atípica, se pueden descartar valores de cada extremo. La medida de variabilidad generalmente aceptada es la diferencia entre los percentiles 25 y 75, el rango intercuartil.
Encuesta de distribución de datos
Después de evaluar los datos utilizando características numéricas generalizadas, podemos estimar cómo se ve la distribución de datos en su conjunto. Esto se hace más convenientemente utilizando herramientas de modelado visual: gráficos.
Los tipos de gráficos más utilizados son un gráfico de caja (o caja con bigote) y gráficos de barras. Una caja con bigote: una representación compacta conveniente de la selección, le permite ver varias de las características estudiadas en una imagen y, por lo tanto, compararlas entre sí. De lo contrario, este tipo de gráfico se llama diagrama o diagrama de caja y bigotes, diagrama de caja. Este tipo de diagrama en una forma comprensible muestra la mediana (o, si es necesario, el promedio), los cuartiles inferior y superior, los valores mínimo y máximo de la muestra y los valores atípicos. Varios de estos cuadros se pueden dibujar uno al lado del otro para comparar visualmente una distribución con otra; Se pueden colocar tanto horizontal como verticalmente. Las distancias entre las diferentes partes del cuadro le permiten determinar el grado de dispersión (dispersión), la asimetría de datos e identificar valores atípicos.

También una herramienta útil es un histograma bien conocido: visualización de la tabla de frecuencias, donde se grafican los intervalos de frecuencia en el eje X y la cantidad de datos en el eje Y. Un gráfico de barras también será útil para investigar datos históricos: le ayudará a comprender cómo se distribuyeron los registros a lo largo del tiempo y ¿Puedes confiar en ellos? Usando el gráfico, es posible identificar errores de muestreo y datos rotos: las explosiones en lugares inesperados o la presencia de registros relacionados con el futuro pueden permitir detectar problemas con el formato de datos, por ejemplo, mezclando formatos de fecha en la parte de muestra.
Correlación
Después de analizar todas las variables, debemos entender si hay algunas adicionales entre ellas. Para hacer esto, se utiliza el coeficiente de correlación, un indicador métrico que mide el grado en que las variables numéricas están relacionadas entre sí y toma valores en el rango de 1 a -1. La matriz de correlación es una tabla en la que las filas y columnas son variables. y los valores de las celdas son correlaciones entre estas variables. Diagrama de dispersión: a lo largo del eje x, los valores de una variable, a lo largo del eje y, otra.
Limpieza de datos
Después de examinar los datos, es necesario limpiarlos y posiblemente transformarlos. En esta etapa, debemos obtener una respuesta a la pregunta: ¿cómo necesitamos preparar los datos para usarlos de la manera más eficiente posible? Necesitamos deshacernos de datos erróneos, procesar registros faltantes, eliminar duplicados y asegurarnos de que todo esté formateado correctamente. También en esta etapa definimos un conjunto de características sobre las cuales se desarrollará aún más el aprendizaje automático. La calidad de la ejecución de esta etapa determinará si la señal en los datos es distinguible para el algoritmo de aprendizaje automático. Si estamos trabajando con texto, se pueden requerir pasos adicionales para convertir los datos no estructurados en un conjunto de atributos adecuados para su uso en el modelo. La preparación de datos es la base sobre la cual se construirán los próximos pasos. Al igual que en la cocina, solo un ingrediente estropeado o sin pelar puede arruinar todo el plato. Cualquier descuido en el manejo de datos puede llevar al hecho de que el modelo no mostrará buenos resultados y tendrá que retroceder algunos pasos.

Eliminar entradas no deseadas
Una de las primeras operaciones de limpieza de datos es eliminar registros innecesarios. Incluye dos pasos: eliminar entradas duplicadas o erróneas. Encontramos valores erróneos en la etapa anterior, cuando estudiamos valores atípicos y atípicos. Podríamos obtener datos duplicados al recibir datos similares de varias fuentes.
Corrección de errores estructurales
Hay casos frecuentes en que las mismas categorías se pueden nombrar de manera diferente (peor, cuando diferentes categorías tienen el mismo nombre): por ejemplo, en los datos abiertos del gobierno de Moscú, los datos de construcción se presentan trimestralmente, pero el volumen total para el año se firma como un año, y en algunos registros se designan como cuarto trimestre. En este caso, restauramos los valores de categoría correctos (si es posible).
Si tiene que trabajar con datos de texto, al menos debe realizar las siguientes manipulaciones: eliminar espacios, eliminar todo el formato, alinear las mayúsculas y minúsculas, corregir los errores ortográficos.
Eliminación de valores atípicos
Para las tareas de aprendizaje automático, los datos de la muestra no deben contener valores atípicos y deben ser lo más estandarizados posible, por lo que los valores límite de la unidad deben eliminarse.
Gestión de datos faltantes
Trabajar con datos faltantes es uno de los pasos más difíciles para limpiar datos. La ausencia de una parte de los datos, como regla, es un problema para la mayoría de los algoritmos, por lo que no debe usar registros donde falta una parte de los datos, o tratar de restaurar los que faltan en función de cualquier suposición sobre la naturaleza de los datos. Al mismo tiempo, entendemos que llenar los vacíos de datos (no importa cuán sofisticada sea la forma en que lo hacemos) no es agregar nueva información, sino simplemente una muleta que le permite usar el resto de la información de manera más efectiva. Ambos enfoques no son tan disparatados, porque en cualquier caso, perdemos información. Sin embargo, la falta de datos puede ser una señal en sí misma. Por ejemplo, examinamos los datos de reabastecimiento de combustible y la falta de datos del sensor puede ser una señal clara de una violación.
Al trabajar con datos categóricos, lo mejor que podemos hacer con los datos faltantes de este tipo es marcarlos como "faltantes". Este paso en realidad implica agregar una nueva clase de datos categóricos. Una forma similar es tratar con datos faltantes de un tipo numérico: debe marcar de alguna manera los datos faltantes, por ejemplo, reemplazar los datos faltantes con cero. Pero debe tener en cuenta que el cero no siempre encaja. Por ejemplo, nuestros datos son lecturas de contador y la ausencia de lecturas no puede confundirse con ceros reales en los valores de datos.
Herramientas de limpieza de datos
Como regla general, la limpieza de datos no es un evento único; lo más probable es que tengamos que agregar nuevos datos a la muestra, que nuevamente tendrá que pasar por los procedimientos de limpieza desarrollados. Para optimizar el proceso, es bueno usar aplicaciones especializadas (además de, por supuesto, Excel 'I, que también puede ser útil), por ejemplo:
- Talend Data Preparation es una aplicación de escritorio gratuita con una interfaz visual que simplifica y automatiza las tareas de limpieza de datos: le permite crear una tubería de procesamiento de datos personalizada. Puede usar una variedad de fuentes de datos con Talend, incluidos archivos csv o datos de Excel.
- OpenRefine Esta herramienta solía llamarse Google Refine o Freebase Gridworks. Ahora OpenRefine es una aplicación de escritorio popular para limpiar y convertir formatos de datos.
- Trifacta Wrangler , una aplicación de escritorio que le permite trabajar con tipos de datos complejos, también es útil para el análisis exploratorio de datos. No requiere capacitación especial del usuario.
Bueno, por supuesto, la tubería de limpieza de datos se puede implementar en cualquier lenguaje de programación conveniente: desde Python hasta Scala, lo principal es que el procesamiento lleva un tiempo aceptable.
Y finalmente ...
Después de limpiar y transformar los datos, puede resultar que los datos de alguna manera no son suficientes, por lo que es normal si tiene que volver al paso de obtener datos de esta etapa, agregar más valores a la selección o buscar nuevas fuentes de datos. Esto es normal
Conclusión
, - , , , , : , , .
, .
PS: , , , !