¿Cuáles son los componentes de la caja de herramientas para científicos de datos?
La ciencia de los datos es un campo multidisciplinario muy amplio que incluye varias subdivisiones como la visualización de datos, el aprendizaje automático y la inteligencia artificial. Debido a la amplitud del campo y a que la ciencia de los datos está cambiando constantemente debido a las innovaciones tecnológicas y el desarrollo de nuevos algoritmos, un científico de datos exitoso tiene que mantener una caja de herramientas grande y actualizada en todo momento. Tenga en cuenta que como científico de datos, sólo puede realizar tareas para las que tenga las herramientas adecuadas. Este artículo discutirá varias herramientas que uno puede incluir en su caja de herramientas de ciencia de datos.
Las herramientas basadas en el conocimiento pueden agruparse en tres categorías principales basadas en el nivel de las tareas de ciencia de los datos que intervienen: nivel 1 (nivel básico); nivel 2 (nivel intermedio); y l evel 3 (nivel avanzado).
1 Herramientas básicas
Las herramientas básicas son herramientas que permitirían realizar tareas de nivel 1. En el nivel uno, un aspirante a ciencia de datos debería poder trabajar con conjuntos de datos presentados generalmente en formato de archivo de valores separados por comas (CSV). Deben tener competencia en datos básicos; visualización de datos; y regresión lineal.
1.1 Datos básicos
Ser capaz de manipular, limpiar, estructurar, escalar y diseñar datos. Deben ser expertos en el uso de pandas y NumPy bibliotecas. Deben tener las siguientes competencias:
- Saber importar y exportar datos almacenados en formato de archivo CSV
- Ser capaz de limpiar, disputar y organizar datos para análisis o construcción de modelos adicionales
- Ser capaz de lidiar con los valores que faltan en un conjunto de datos
- Comprender y ser capaz de aplicar técnicas de imputación de datos tales como media o mediana imputación
- Ser capaz de manejar datos categóricos
- Saber cómo particionar un conjunto de datos en conjuntos de entrenamiento y pruebas
- Ser capaz de escalar datos utilizando técnicas de escalado tales como normalización y estandarización
- Ser capaz de comprimir datos a través de técnicas de reducción de dimensionalidad como el análisis de componentes principales (PC)
1.2 Visualización de datos
Ser capaz de entender los componentes esenciales de una buena visualización de datos. Ser capaz de utilizar herramientas de visualización de datos, incluyendo los paquetes matplotlib y seaborn de Python; y el paquete ggplot2 de R. Debe entender los componentes esenciales de la buena visualización de datos:
- Componente de datos : Un primer paso importante para decidir cómo visualizar los datos es saber qué tipo de datos son, por ejemplo, datos categóricas, datos discretos, datos continuos, datos de series temporales, etc.
- Componente de cartografía: Aquí, usted necesita decidir qué variable utilizar como su X-variable y qué utilizar como su Y-variable . Esto es importante especialmente cuando su conjunto de datos es multidimensional con varias características.
- Componente ético : Aquí, usted quiere asegurarse de que su visualización cuenta la historia verdadera. Usted necesita ser consciente de sus acciones al limpiar, resumir, manipular y producir una visualización de datos y asegurarse de que no está utilizando su visualización para engañar o manipular a su audiencia.
1.3 Aprendizaje supervisado (predecir variables de objetivo continuas)
Esté familiarizado con la regresión lineal y otros métodos avanzados de regresión. Ser competente en el uso de paquetes como scikit-learn y caret para la construcción de modelos de regresión lineal. Tener las siguientes competencias:
2.2 Evaluación de modelos y ajuste del hiperparametro
- Saber cómo depurar algoritmos de clasificación con curvas de aprendizaje y validación
- Ser capaz de diagnosticar problemas de sesgo y varianza con las curvas de aprendizaje
- Capaz de abordar la sobreadaptación y subadaptación con curvas de validación
- Saber cómo ajustar los modelos de aprendizaje automático a través de la búsqueda en cuadrícula
- Comprender cómo sintonizar hiperparametros a través de la búsqueda de cuadrícula
- Ser capaz de leer e interpretar una matriz de confusión
- Ser capaz de trazar e interpretar una curva de características operativas del receptor (ROC)
2.3 Combinación de diferentes modelos para el aprendizaje en conjunto
- Ser capaz de utilizar el método de conjunto con diferentes clasificadores
- Ser capaz de combinar diferentes algoritmos para la clasificación
- Saber cómo evaluar y afinar el clasificador de conjuntos
3. Herramientas avanzadas
Puede trabajar con conjuntos de datos avanzados como texto, imágenes, voz y videos. Además de las competencias básicas e intermedias, deben tener las siguientes competencias:
- Algoritmo de agrupación (aprendizaje no supervisado)
- Significa K
- Aprendizaje profundo
- Redes neuronales
- Keras
- TensorFlow
- Theano
- Sistemas de nube (AWS, Azure)
Estas herramientas le ayudarán a trabajar en proyectos de ciencia de datos a gran escala, y le ayudarán a implementar su modelo al nivel de producción. También le ayudarán a mostrar sus habilidades en ciencia de datos, y a conectarse con otros profesionales de la ciencia de datos.
1. Herramientas para proyectos a gran escala
En los proyectos de ciencia de datos del mundo real, los conjuntos de datos podrían ser bastante complejos, y la tarea a realizar puede implicar problemas computacionalmente intensivos como el procesamiento de imágenes, el análisis del habla o la construcción de un modelo de aprendizaje profundo usando un conjunto de datos complejo con cientos de características y miles de observaciones. Este tipo de problemas requieren herramientas avanzadas de productividad.
1.1. Computación de alto rendimiento
Los proyectos de ciencia de datos altamente intensivos se pueden ejecutar utilizando instalaciones de computación de alto rendimiento (HPC). HPC es un clúster de computadoras que contiene varios nodos. HPC puede realizar cálculos en serie o en modo paralelo. Con el fin de utilizar los recursos de HPC, un científico de datos tiene que dominar las siguientes habilidades:
a) Interfaz de línea de comandos o UNIX (Linux) : Esto es necesario para interactuar con un servidor informático. Hay varios sistemas operativos basados en UNIX que se pueden utilizar para HPC. Mi favorito es Ubuntu . Ubuntu proporciona un sistema UNIX similar a las ventanas que es muy fácil de usar, especialmente para individuos que no están familiarizados con la línea de comandos.
b) Conocimiento del programador de lotes: Esto es necesario para realizar trabajos no interactivos en un clúster de HPC. Supongamos que nos gustaría ejecutar un modelo de aprendizaje automático en un ordenador HPC que permite MPI (comunicación entre nodos) para la transmisión de mensajes. Supongamos que el código pitón para nuestro modelo se almacena en un archivo llamado “ my_script.py .” Para ejecutarlo en el clúster HPC, podríamos crear el siguiente script por lotes en el mismo directorio que nuestro script Python, que llamamos “ Mi trabajo. " de la manera siguiente:
Correr “ my_script.py ” en modo por lotes en el HPC, enviamos el script por lotes desde la línea de comandos usando el comando sbatch, y esperamos a que se ejecute hasta su finalización:
% sbatch mi trabajo.sh
1.2. Servicios en la nube
Construir una plataforma de computación HPC puede ser muy caro para las pequeñas empresas. También requiere un equipo de técnicos de HPC para operar y mantener la instalación, así como proporcionar apoyo técnico y capacitación a los científicos de datos. Debido a que la mayoría de las empresas no pueden mantener estas instalaciones, se inclinan más hacia los servicios en la nube como herramientas de productividad para su proyecto a gran escala de ciencia de datos y aprendizaje automático.
En la computación en nube, los tres principales proveedores son Amazon, Microsoft e IBM. Las plataformas en la nube proporcionan algoritmos incorporados que le permiten construir, probar e implementar modelos de aprendizaje automático. AWS y Azure son las plataformas de nube más populares para construir e implementar modelos de aprendizaje automático. Los científicos de datos deben aprender a utilizar los servicios en la nube.
2. Herramientas de construcción de carteras
La ciencia de los datos es un campo práctico. Las habilidades prácticas son muy importantes especialmente cuando usted está interesado en trabajar fuera de la academia como un científico de datos que practica. Una manera de mostrar sus proyectos completados es mediante la construcción de una cartera muy grande. Las empresas interesadas en contratarte definitivamente te pedirían una cartera, ya que da evidencia de tus fortalezas en conceptos fundamentales de ciencia de datos. Hay varias plataformas que se pueden utilizar para la creación de carteras y la creación de redes, tales como:
En resumen, hemos discutido varias herramientas para mantener en su caja de herramientas de ciencia de datos. Dependiendo de la organización para la que usted trabaja o anticipa trabajar para, su papel en el trabajo puede no requerir que usted utilice todas las herramientas enumeradas en este artículo. Sin embargo, para ser considerado un científico de datos exitoso, usted tendrá que mantener una caja de herramientas grande y actualizada en todo momento. Tenga en cuenta que como científico de datos, sólo puede realizar tareas para las que tenga las herramientas adecuadas. Por lo tanto, ¿por qué no poner en marcha todas sus herramientas en preparación para futuros puestos de trabajo.
Artículos Relacionados: