4. Qué es Data Science?
• Disciplina en evolución, no tiene una definición especifica
• Requiere una variedad de habilidades
Data Science implica explorar y analizar cuantitativamente las
fuentes de datos estructurados y no estructurados para extraer
conocimiento y formular resultados que lleven a la acción
5. Data Science se enfoca en los datos
• Ubicar fuentes de datos
• Obtener datos para analizar
• Limpiar y transformar los datos
• Entender relaciones entre los datos
• Entregar valor a partir de los datos
7. El proceso de descubrir conocimiento (1 de 2)
• Término “Big Data”, acuñado por astrónomos Cox y Ellsworth en 1997
Computing Community Consortium Big Data Pipeline from 2012
Acquisition
/
Recording
Extraction /
Cleaning
/
Annotation
Integration
/
Aggregation
/
Representation
Analysis
/
Modeling
Interpretation
Knowledge Discovery in Databases Process 1996
8. El proceso de descubrir conocimiento (2 de 2)
• CRoss Industry Standard Process for Data Mining (CRISP-DM) 2000
Business
Understanding
Data
Understanding
Data
Preparation
Modeling Evaluation Deployment
Identify project
objectives
Collect and review
data
Select and cleanse
data
Manipulate data and
draw conclusions
Evaluate model
and conclusions
Apply conclusions to
business
9. Ejemplo
• Objetivo: Prevenir fallas en estaciones eléctricas
• Meta 1: predecir eventos de falla un año antes de que ocurran
• Meta 2: Determinar frecuencia de inspección de estaciones
• Datos: Reportes de problemas, fichas técnicas de las estaciones, fichas
técnicas de los cables, reportes de inspección
• Limpieza:
• Eliminar información incompleta
• identificar vectores:
• Evento grave, importante, leve
• Año, mes, día
• Estaciones involucradas
• Creación del modelo:
• Respuesta a pregunta Si/No: clasificación
• Predecir un valor numérico: regresión
• Agrupar elementos: clustering
10. Qué es el lenguaje de programación R?
• Entorno y lenguaje para estadística y gráficos
• Proyecto GNU – GPL - Free
• Multiplataforma Windows, Macintosh, Unix y GNU/Linux
• Lenguaje muy utilizados en investigación estadística
• modelos lineales y no lineales, pruebas estadísticas ,
análisis de series de tiempo, clasificación, agrupación
(clustering)
• Comunidad extensa para soporte
• Existe mucho antes de SQL Server
• Lenguaje S - 1970
12. Retos de implementar R
MOVER LOS DATOS
• Grandes volúmenes de datos
• Riesgo de error
• Riesgo de seguridad
USO DE LOS DATOS
• Acceso a datos externos
• Llamadas a scripts de R desde
producción
ESCALABILIDAD Y
DESEMPEÑO
• R usa solo un hilo de proceso
• Acomoda datos solo en la
memoria disponible
13. Retos de implementar R - SQL Server al rescate
MOVER LOS DATOS
USO DE LOS DATOS
ESCALABILIDAD Y
DESEMPEÑO
Reducir o eliminar los movimientos
de datos con In-Database Analytics
Operar directamente
scripts y modelos R
Utilizar plataforma SQL Server
para escalar y optimizar
Los mecanismo de extensibilidad de SQL
Server 2016 permite la ejecución de Script de
R en el motor de SQL Server
Uso de T-SQL para invocar
script R desde las aplicaciones
Embeber en las aplicaciones
los resultados retornados
Usar SQL Server In-Memory Computing
e Índices ColumnStore
Aprovechar soporte de RevoScaleR
para grandes cargas
14. Escenarios clave para R-Services
Exploración de datos y modelos predictivos (Data Science)
Trabajar desde el IDE de R y ejecutar scripts de R que se ejecuten en la base de datos y
obtener los resultados de vuelta
Operativizar código R (Desarrollador)
Llamar un procedimiento almacenado desarrollado con T-SQL desde una aplicación y que
llame a un script de R para ejecución In-Database. Los resultados son regresados a la
aplicación (predicciones, plots)
Administrar el servidor (DBA)
Administrar, asegurar y gobernar la ejecución de R en SQL Server
15. R Services con
SQL Server 2016
Introducción a
Lenguaje R
Ejecutar Código R
Título
16. Ejecutar código R en SQL Server
1. Intalar R Services
2. Habilitar la ejecución de scripts externos
Exec sp_configure 'external scripts enabled', 1
Reconfigure with override
17. Manipulación de datos con R
Col1 Col2 Col3
2012 14 45
2013 13 76
2013 34 65
2014 23 47
frame1
18. Manipulación de datos con R
frame1
frame1 <- filter(frame1, Col1 == 2013)
Col1 Col2 Col3
2013 13 76
2013 34 65
19. Manipulación de datos con R
frame1
frame1 <- filter(frame1, Col1 == 2013)
Col1 Col3
2012 45
2013 76
2013 65
2014 47
frame1 <- select(frame1, Col1, Col3)
21. Manipulación de datos con R
frame1 <- group_by(frame1, Col1)
frame1 <- distinct(frame1, Col1)
frame1 <- sample_n(frame1, 500)
frame1 <- sample_frac(frame1, 0.5)
frame1 <- summarize(frame1, m1 = mean(Col1))
22. Funciones estadísticas
FUNCION DESCRIPCION BREVE
mean(x) Mediana de x
sd(x) Desviación estándar de x
median(x) Mediana de x
dnorm(x) Densidad normal
pnorm(q) Probabilidad normal acumulada para q
qnorm(p) Quantil normal para p
rnorm(n, m=0, sd=1) Desviación normal aleatoria de la mediana m con desviación estándar sd
scale(x, center) Escala de x
Dbinom(x, size, prob) Distribución binormal de x
Dposis(x, lambda) Distribución de Poisson
Dunif(x, min, max) Distribución uniforme
26. Cursos en línea y presenciales a demanda
Alianza:
Cursos:
• SQL Server / SQL Server para Linux
• .NET / .Net Core para línex
• Xamarin para aplicaciones móviles
27. Links de interés
• SQL Server R Services - https://msdn.microsoft.com/en-us/library/mt604845.aspx
• R Project - https://www.r-project.org/
• Microsoft Professional Degree in Data Science - https://www.edx.org/course/introduction-r-data-science-microsoft-
dat204x-0#!
• Introduction to R for Data Science - https://www.edx.org/course/programming-r-data-science-microsoft-dat209x-0
• Tutorial RevoScalerR - https://msdn.microsoft.com/en-us/library/mt637368.aspx
• Revolution Analytics - http://www.revolutionanalytics.com/whitepaper/revolution-r-enterprise-scaler-fast-highly-scalable-r-
multiple-processors
• Computing Community Consortium Big Data Whitepaper: http://www.cra.org/ccc/files/docs/init/bigdatawhitepaper.pdf
• From Data Mining to Knowledge Discovery: http://www.aaai.org/ojs/index.php/aimagazine/article/view/1230