Git Product home page Git Product logo

um-data-science's Introduction

Introducción a la Ciencia de Datos

Universidad de Montevideo

En este repositorio podrá encontrar el material necesario para poder llevar el curso con facilidad. Este repositorio consta de material teórico, material práctico, parciales anteriores, exámenes (con y sin solución) y material adicional (como notebooks para acompañar clases teóricas).

Índice

Descarga del repositorio

Existen varias maneras para descargar el repositorio:

  1. Code ---> Download ZIP.
UM
  1. Si te sentis más cómodo con la terminal podes clonar el repositorio: git clone [email protected]:alejopaullier96/um-data-science.git

Estructura del repositorio (Directory tree)

A continuación se provee un diagrama general de los archivos y carpetas del curso para que usted se familiarice con el mismo. Tenga en cuenta que en el momento que usted curse esta materia la estructura puede haber cambiado ligeramente.
├── README.md
├── ejemplos_de_clase
├── examenes
├── parcial
├── practicos
│   ├── p0
│   │    ├── data
│   │    └── p0.ipynb
│   ├── p1
│   │   ├── data
│   │   └── p1.ipynb
│   ├── p2
│   │    ├── data
│   │    ├── images
│   │    └── p2.ipynb
│   ├── p3
│   │   ├── data
│   │   ├── images
│   │   └── p3.ipynb
│   └── p4
│       ├── data
│       │
│       └── p4.ipynb
├── proyecto_final
└── teoricos
    ├── 01 Introducción.pdf
    ├── 02 Datos.pdf
    ├── 03 operaciones-con-tablas.zip
    ├── 04 Análisis Exploratorio.pdf
    ├── 05 Análisis Exploratorio.pdf
    ├── 06 Feature Engineering.pdf
    ├── 07 Pruebas Estadísticas  Correlaciones.pdf
    ├── 08 Visualización de Datos.pdf
    ├── 09 Visualización de Datos.pdf
    ├── 10 Visualización de Datos.pdf
    ├── 11 Regresión Lineal.pdf
    ├── 12 Regresión Lineal.pdf
    ├── 13 Modelos de Clasificación.pdf
    ├── 14 Series de Tiempo.pdf
    ├── 15 Unsupervised Learning.pdf
    ├── 16 NLP overview.pdf
    ├── 17 Storytelling.pdf
    └── 18 Validation.pdf

Syllabus 📚

A continuación encontrará, tema por tema, una breve descripción de las clases teóricas junto con un listado de tópicos que se cubrirán en la misma.

Nota: Tanto el listado de temas como los tópicos que se presentan no son ni cercanamente exhaustivos. Tanto las clases como sus temáticas estan sujetas a cambio para mantener el curso actualizado.

Introducción 🏁

Esta clase es de carácter introductorio. En esta clase usted verá:

  • Una visión general del curso.
  • Métodos de evaluación y la estructura del curso.
  • Breve introducción a las distintas áreas que conforman la Inteligencia Artificial (Data Science, Machine Learning, Deep Learning, Big Data, etc).
  • Casos de uso y aplicaciones de Data Science.
  • Qué es un data scientist? Diferencias con otras profesiones.
  • Data Science Workflow.

Datos 💾

Esta clase provee información acerca de los tipos existentes de datos, su clasificación y problemas comunes con su uso. En esta clase usted verá:

  • Cuales son los principales tipos de datos (estructurados, semi-estructurados, no estructurados).
  • Clasificación de datos tabulares (categóricos/númericos).
  • Limpieza de datos.
  • Outliers.
  • Datos faltantes.

Operaciones con tablas 📋

Esta clase consta de dos partes:

  1. Una breve introducción que pretende cubrir de manera general los conceptos básicos que conforman el diseño de una base de datos.
  2. Una parte teórico-práctica (hands-on) donde se le introducirá al lenguaje de programación SQL, viendo numerosas operaciones con tablas utilizando una pequeña base de datos.

Análisis exploratorio I 🧐

Esta clase a usted se le introducirá al análisis exploratorio de datos, un proceso crítico que pretende realizar investigaciones iniciales sobre los datos para descubrir patrones, detectar anomalías, probar hipótesis y verificar suposiciones con la ayuda de estadísticas resumidas y representaciones gráficas. En esta sección, que consta de dos partes, no se hará enfasis en el análisis exploratorio gráfico ya que se más adelante esto se cubrirá en la sección de visualización.

En esta sección usted verá:

  • Conceptos básicos de distribuciones estadísticas (media, moda, mediana, desviación estándar, varianza, etc).
  • Distribuciones estadísticas (normal, skewed, bimodal, etc).
  • Asimetría, sesgo, Kurtosis, etc.

Análisis exploratorio II 🧐🧐

Continuación de la clase anterior. Verá nuevos conceptos como:

  • Población vs. Muestra.
  • Sampling.
  • Intervalos de confianza.
  • Pruebas de hipótesis.
  • p-value.
  • Test estadísticos (Z-test, ANOVA, chi-cuadrado, etc).

Feature engineering 👷🏼‍♂️

La ingeniería de atributos (feature engineering) se refiere al proceso de utilizar el conocimiento del dominio para seleccionar y transformar las variables más relevantes a partir de datos sin procesar. En esta clase usted verá métodos de feature engineering tales como:

  • Encoders: Ordinal encoding, Label encoding, One Hot encoding, etc.
  • PCA y la maldición de la dimensionalidad.
  • Normalización y estandarización.
  • Remoción y manejo de outliers.
  • Métodos de discretización supervisados y no supervisados.
  • Imputación de valores faltantes.

Pruebas estadísticas 🧮

En esta clase usted profundizará sus conocimientos de estadística, usted verá:

  • Correlaciones: Pearson, Spearman, espúrea, etc.
  • t-test, two sample t-test.
  • z-test, two sample z-test.
  • ANOVA.
  • Probabilidad.
  • Test chi-cuadrado.

Visualización de datos I 📈

La visualización de datos es la práctica de traducir información a un contexto visual, como un mapa o un gráfico, para que el cerebro humano pueda comprender los datos y extraer información de ellos con mayor facilidad. Esta clase es la primer clase de una serie de clases sobre visualización, usted verá:

  • Importancia, características y herramientas de visualización.
  • Gráficas como: single number, icon array, donut graph, pie chart, bar chart, visualización de intervalos de confianza, slope graph, back-to-back bars, dumbell plots, dot plots, small multiples, etc.

Visualización de datos II 📉

Esta clase es la segunda clase de una serie de clases sobre visualización, usted verá:

  • Objetivos y relevancia de la visualización.
  • Gráficas como: benchmark line, combo chart, bullet graph, indicator dots, stacked bars, diverging stack bars, aggregated stack bar, rating column graph, lollipop variation, histogram, tree map, geographical maps.

Visualización de datos III 📊

Esta clase es la tercer clase de una serie de clases sobre visualización, usted verá:

  • Tipos de audiencia y qué clase de historias podemos contar
  • Gráficas como: scatterplots, diagramas, word clouds, heatmap, line graph, area graph, stacked columns, deviation bar, sankey diagram.
  • Anti-ejemplos de visualizaciones.

Regresión Lineal 🔢

La regresión es una técnica de aprendizaje automático supervisado que se utiliza para predecir valores continuos. En esta clase se pretende introducirlo al algoritmo más sencillo de esta rama: la regresión lineal. En esta clase usted verá:

  • Regresión lineal simple.
  • Como entrenar un algoritmo y hacer predicciones.
  • Interpretación de los coeficientes.
  • R-cuadrado.
  • Cómo se realiza el ajuste de parámetros internos del algoritmo.
  • Supuestos, ventajas y desventajas.

Modelos de clasificación 🌳

La clasificación es un tarea de aprendizaje automático supervisado que se enfoca en categorizar datos en clases o categorías. En esta clase se pretende introducirlo a este problema introduciendo algoritmos sencillos como regresión logística, árboles de decisión y K-nearest neighbours. En esta clase usted verá:

  • Conceptos básicos asociados a problemas de clasificación como entropía y ganancia de información.
  • K-nearest neighbours.
  • Árboles de decisión.
  • Regresión logística.

Series de tiempo ⏳

El análisis de series de tiempo comprende los métodos para analizar datos de series temporales con el fin de extraer estadísticas significativas y generar predicciones. En esta clase usted verá:

  • Conceptos básicos como: estacionalidad, tendencia, cambios cíclicos, cambios irregulares.
  • Modelos como: zero mean, random walk, seasonality models, trend models.
  • Concepto de estacionariedad.
  • Modelos más avanzados como: moving average, auto-regressive models, ARIMA, etc.

Aprendizaje no supervisado 🁋

El aprendizaje no supervisado es un tipo de problema de machine learning donde se pretende aprender patrones a partir de datos no etiquetados y agrupar los datos en conjuntos con características similares. En esta clase usted verá:

  • Conceptos básicos de clustering.
  • Algoritmos de clustering como: hierarchical clustering, K-Means, DBSCAN, etc.
  • Mecanismos de evaluación de clustering.
  • Problemas asociados.

Procesamiento de Lenguaje Natural 📘📗📕

El procesamiento del lenguaje natural es un subcampo de la lingüística, la informática y la inteligencia artificial que se ocupa de las interacciones entre las computadoras y el lenguaje humano, en particular, cómo programar las computadoras para procesar y analizar grandes cantidades de datos del lenguaje natural. En esta clase usted verá:

  • Problemas clásicos.
  • Mecanismos de pre-procesamiento de textos como: tokenización, remoción de palabras cortas, stemming, lematización, etc.
  • Bag of words, n-gramas, TF-IDF.
  • Vector space models.
  • Latent Dirichlet allocation.

Validación 🎯

La validación del modelo es el proceso fundamental para estimar el rendimiento de generalización de un model predictivo, aumentar el rendimiento predictivo, identificar el algoritmo de aprendizaje y sus híper-parámetros. En esta clase usted verá:

  • Conceptos generales relacionados a la validación de modelos.
  • Desbalance de clases y estratificación.
  • Holdout validation.
  • Three way holdout validation.
  • Ajuste de híper-parámetros.
  • Cross-validation.

Storytelling 💬

La narración es la actividad social y cultural de compartir historias, a veces con improvisación, teatro o adornos. En esta clase usted verá:

  • Definición, características e importancia de la comunicación de resultados.
  • Cómo formular y estructurar historias utilizando diversas herramientas.
  • Técnicas de un proceso narrativo.

um-data-science's People

Contributors

alejopaullier96 avatar

Stargazers

Nimra Ghazal avatar

Watchers

 avatar

Forkers

nimrazeeshan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.