¿Qué pasos iniciales debo usar para dar sentido a grandes conjuntos de datos y qué herramientas debo usar?


10

Advertencia: soy un principiante completo cuando se trata de aprendizaje automático, pero estoy ansioso por aprender.

Tengo un gran conjunto de datos y estoy tratando de encontrar un patrón en él. Es posible que exista / no una correlación entre los datos, ya sea con variables conocidas o con variables que están contenidas en los datos pero que aún no me he dado cuenta que en realidad son variables / relevantes.

Supongo que esto sería un problema familiar en el mundo del análisis de datos, así que tengo algunas preguntas:

  1. La 'bala de plata' sería arrojar todos estos datos a un programa de análisis de estadísticas / datos y analizar los datos en busca de patrones conocidos / desconocidos que intentan encontrar relaciones. ¿Es adecuado SPSS o existen otras aplicaciones que pueden ser más adecuadas?

  2. ¿Debo aprender un lenguaje como R y descubrir cómo procesar manualmente los datos? ¿Esto no comprimiría las relaciones de búsqueda ya que tendría que especificar manualmente qué y cómo analizar los datos?

  3. ¿Cómo abordaría un minero de datos profesional este problema y qué pasos tomaría?

Respuestas:


11

Trataré de responder sus preguntas, pero antes me gustaría señalar que usar el término "conjunto de datos grande" es engañoso, ya que "grande" es un concepto relativo . Tienes que proporcionar más detalles. Si se trata de datos de ofertas , este hecho probablemente afectará la selección de herramientas , enfoques y algoritmos preferidos para su análisis de datos . Espero que los siguientes pensamientos míos sobre el análisis de datos aborden sus subpreguntas. Tenga en cuenta que la numeración de mis puntos no coincide con la numeración de sus subpreguntas. Sin embargo, creo que refleja mejor el flujo de trabajo de análisis de datos generales , al menos, cómo lo entiendo.

1) En primer lugar, creo que debe tener al menos algún tipo de modelo conceptual en mente (o, mejor, en papel). Este modelo debe guiarlo en su análisis de datos exploratorios (EDA) . La presencia de una variable dependiente (DV) en el modelo significa que en su fase de aprendizaje automático (ML) más adelante en el análisis, se enfrentará al denominado ML supervisado, en oposición al ML no supervisado en ausencia de un DV identificado.

2) En segundo lugar, EDA es una parte crucial. En mi humilde opinión, EDA debe incluir múltiples iteraciones de producción de estadísticas descriptivas y visualización de datos , a medida que refina su comprensión sobre los datos. No solo esta fase le brindará información valiosa sobre sus conjuntos de datos, sino que alimentará su próxima fase importante: la limpieza y transformación de datos . Simplemente arrojar sus datos en bruto en un paquete de software estadístico no dará mucho: para cualquier análisis estadístico válido , los datos deben ser limpios, correctos y consistentes . Esta suele ser la parte que requiere más tiempo y esfuerzo, pero es absolutamente necesaria. Para más detalles sobre este tema, lea estos bonitos documentos:http://vita.had.co.nz/papers/tidy-data.pdf (por Hadley Wickham) y http://cran.r-project.org/doc/contrib/de_Jonge+van_der_Loo-Introduction_to_data_cleaning_with_R.pdf (por Edwin de Jonge y Mark van der Loo).

3) Ahora, como es de esperar que haya terminado con EDA , así como con la limpieza y transformación de datos, está listo para comenzar algunas fases más estadísticamente involucradas. Una de esas fases es el análisis factorial exploratorio (EFA) , que le permitirá extraer la estructura subyacente de sus datos. Para conjuntos de datos con gran número de variables, el efecto secundario positivo de EFA es la reducción de dimensionalidad . Y, aunque en ese sentido, la EPT es similar al análisis de componentes principales (PCA)y otros enfoques de reducción de dimensionalidad, creo que EFA es más importante ya que permite refinar su modelo conceptual de los fenómenos que sus datos "describen", lo que da sentido a sus conjuntos de datos. Por supuesto, además de EFA, puede / debe realizar análisis de regresión y aplicar técnicas de aprendizaje automático , en función de sus hallazgos en fases anteriores.

Finalmente, una nota sobre herramientas de software . En mi opinión, el estado actual de los paquetes de software estadístico es tal que prácticamente todos los paquetes de software principales tienen ofertas comparables en cuanto a características. Si estudias o trabajas en una organización que tiene ciertas políticas y preferencias en términos de herramientas de software, entonces estas limitado . Sin embargo, si ese no es el caso, recomendaría encarecidamente el software estadístico de código abierto, basado en su comodidad con su lenguaje de programación específico , curva de aprendizaje y sus perspectivas de carrera . Mi plataforma de elección actual es R Project, que ofrece software estadístico maduro, potente, flexible, extenso y abierto, junto con un sorprendente ecosistema de paquetes, expertos y entusiastas. Otras buenas opciones incluyen Python , Julia y software específico de código abierto para procesar grandes datos , como Hadoop , Spark , bases de datos NoSQL , WEKA . Para obtener más ejemplos de software de código abierto para la minería de datos , que incluye software estadístico y ML general y específico, consulte esta sección de una página de Wikipedia: http://en.wikipedia.org/wiki/Data_mining#Free_open-source_data_mining_software_and_applications .

ACTUALIZACIÓN: Olvidé mencionar Rattle ( http://rattle.togaware.com ), que también es un software GUI de código abierto orientado a R muy popular para la minería de datos.


1
Después de volver a esta pregunta más de un año después, ciertamente puedo hacerme eco de que conocer sus datos es clave y debe tener en cuenta cuáles son los datos "buenos" frente a los datos "malos". Traté de usar soluciones mágicas como redes neuronales, etc., pero el proceso de limpieza de datos no fue fácil. (Los modelos ocultos de Markov parecían responder mejor a la entrada sucia y fueron capaces de predecir mejor las salidas). De hecho, simplemente volcó sobre los datos durante muchas semanas después de que el ML fallara y después de hacer muchos gráficos (las representaciones visuales de los datos son muy importante) que pude detectar las soluciones a mis problemas!
user3791372

@ user3791372 Me alegra saber de usted! Parece claro que ese año fue productivo para usted al obtener una mejor comprensión de varios aspectos de la ciencia de datos. Desearía tener más oportunidades para aprender más, pero, por otro lado, no me puedo quejar ya que también aprendí bastante (no siempre está relacionado con la ciencia de datos, pero, tal vez, es aún mejor). ¡Seguid así!
Aleksandr Blekh

3
  1. SPSS es una gran herramienta, pero puede lograr una gran cantidad de recursos que ya tiene en su computadora, como Excel, o que son gratuitos, como el proyecto R. Aunque estas herramientas son poderosas y pueden ayudarlo a identificar patrones, necesitará tener una comprensión firme de sus datos antes de ejecutar análisis (recomendaría ejecutar estadísticas descriptivas de sus datos y explorar los datos con gráficos para asegurarse de que todo se ve normal). En otras palabras, la herramienta que use no ofrecerá una "viñeta plateada", porque la salida solo será tan valiosa como la entrada (ya sabe el dicho ... "basura adentro, basura afuera"). Gran parte de lo que digo ya ha sido expresado en la respuesta de Aleksandr: acertada.

  2. R puede ser un desafío para aquellos de nosotros que no conocemos la codificación, pero los recursos gratuitos asociados con R y sus paquetes son abundantes. Si practica aprender el programa, rápidamente ganará tracción. Una vez más, deberá estar familiarizado con sus datos y los análisis que desea ejecutar de todos modos, y ese hecho permanece independientemente de las herramientas estadísticas que utilice.

  3. Comenzaría por familiarizarme con mis datos (para empezar, siga los pasos descritos en la respuesta de Aleksandr). Podría considerar recoger el libro de John Foreman llamado Data Smart. Es un libro práctico, ya que John proporciona conjuntos de datos y usted sigue junto con sus ejemplos (usando Excel) para aprender varias formas de navegar y explorar datos. Para principiantes, es un gran recurso.


2

Aleksandr ha dado una explicación muy completa, pero brevemente, estos son los pasos que se siguen:

Extrayendo datos

Datos de limpieza

Extracción de características

La construcción de modelos

Resultados inferidos

Publicación de resultados

Repita los pasos 3,4,5 en bucle hasta obtener la precisión correcta.


0

R tiene GUI de diálogo de pnc como SPSS. Imprimen el código R para que pueda aprender y combinar sus esfuerzos. Recomendaría BlueSky por sus diálogos para todo y sonajero. Si bien estos programas son excelentes para EDA, estadísticas y visualización, el aprendizaje automático no funcionan bien.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.