Business Intelligence, Dataviz e
Data Science
SQL Maniacs Chapter Meeting
Diego Nogare
SQL Server MVP
www.diegonogare.net
Diego Nogare?
PASS Community News
August 2015
Planning on attending PASS Summit 2015? Start
saving today!
• The world’s largest gathering of SQL Server & BI professionals
• Take your SQL Server skills to the next level by learning from the world’s
top SQL Server experts, in over 190 technical sessions
• Over 5000 registrations, representing 2000 companies, from 52
countries, ready to network & learn
Save $150 right now using
discount code LCCOMPRX86
Whatever your data passion – there’s a Virtual Chapter for you!
5
www.sqlpass.org/vc
Select Virtual Chapter Meetings
more events and info at sqlpass.org/events
VIRTUAL CHAPTER MEETING TOPIC
DBA Fundamentals and
Women in Technology
Aug 18 11:00-12:00 (UTC-06:00) Moving from Profiler to Extended Events
presented by Jes Borland
In Memory Aug 18 16:00-17:00 (UTC 00:00) Inside xVelocity in-memory engine for
PowerPivot, Power BI and Analysis Services
Tabular presented by Marco Russo
Global Spanish Aug 19 12:00-13:00 (UTC-05:00) Introducción a Data Science presented by
Jose L. Rivera
Virtualization Aug 19 12:00-13:00 (UTC-05:00) Questions & Answers presented with David
Klee
Global Russian Aug 19 15:00-16:30 (UTC+03:00) Внутри Оптимизатора Запросов:
Агрегация presented by Dmitry Pilyugin
Global Chinese Aug 20 20:00-21:30 (UTC-06:00) New Features in SQL 2016 with Lindsey Allen
Business Analytics Aug 26 15:00-16:00 (UTC-05:00) Power BI, Mission Possible! Presented by
Reza rad
Application Development Aug 27 16:00-17:00 (UTC 00:00) Entity Framework Database Performance
Anti-Patterns presented by Russ Thomas
Upcoming SQLSaturdays
North America International
• Aug 22 Louisville
• Aug 29 El Paso
• Aug 29 Oklahoma City
• Sep 12 Las Vegas
• Sep 19 San Diego
• Sep 26 Spartanburg
• Aug 18 Malaysia
• Aug 22 Guatemala
• Aug 29 Oslo
• Sep 5 Gothenburg
• Sep 5 Johannesburg
• Sept 5 Paris
• Sept 12 Bogota
• Sep 26 São Paulo
Visit www.sqlsaturday.com to
register for a event near you!
8
Volunteering Opportunities
PASS would not exist without passionate, dedicated,
and hardworking volunteers from around the globe.
Volunteer today!!
For local opportunities please visit
volunteer.sqlpass.org
For PASS HQ related activities, please update the
“MyVolunteering” section of your MyPASS profile.
9
PASSion Award 2015
The highest of PASS accolades
presented yearly to an outstanding
volunteer.
Nominations for the 2015 PASSion
Award are now open.
Email PASSionAward@sqlpass.org to
submit a nomination.
For more information visit
http://www.sqlpass.org/Community
/Volunteers/PASSionAward.aspx
Stay Involved!
• Sign up for a free membership today at sqlpass.org
• Linked In: http://www.sqlpass.org/linkedin
• Facebook: http://www.sqlpass.org/facebook
• Twitter: @SQLPASS
• PASS: http://www.sqlpass.org
Agenda
 Business Intelligence
 SSIS – SQL Server Integration Services
 SSAS – SQL Server Analysis Services
 Dataviz (Data Visualization)
 Datazen
 PowerBI
 Data Science
 Azure Machine Learning
 R
1
1
Business Intelligence
SQL Server Integration Services
http://www.dbbest.com/blog/wp-content/uploads/2012/12/ETL_input_output.jpg
SQL Server Analysis Services
SQL Server Analysis Services
Tamanho
Cor
SQL Server Analysis Services
Tamanho
Cor
Camiseta
Bermuda
Calça
Azul
Amarela
Vermelha
Preta
PP MP G
4 62 3
2 15 8
9 64 0
7 42 3
SQL Server Analysis Services
Camiseta
Bermuda
Calça
Azul
Amarela
Vermelha
Preta
PP MP G
Bermuda
Azul
P
Camiseta
Preta
G
Calça
Amarela
M
1
4 62 3
2 15 8
9 64 0
7 42 3
Azul = 55
4 62 3
2 15 8
9 64 0
7 42 3
Calça = 66
Data Visualization
Datazen
2
3
PowerBI
2
4
2
5
PowerBI
Data Science
Algoritmos
Regressão
Classificação
Cluster
Detecção de
Anomalias
Fronteira de Decisão
ℎ𝜃 𝑥 = 𝑔(𝜃0 + 𝜃1x1 + 𝜃2x2)
ℎθ(𝑥) = 𝑔(𝜃00 + 𝜃1x1 +
𝜃2x2 + 𝜃3x1
2 + 𝜃4x2
2 )
Função Linear
Função Quadrática
Classificadores Binários
Classificadores Binários
ACURACY (ACURÁCIA):
Quantidade classificada como Positivos e Negativos corretamente
(True Positive + True Negative) /
((True Positive + False Negative) +(False Positive + True Negative))
Com nossos números: (16 + 54) / ((16+0) + (5+54)) => 70 / 75 = 0.9333
Classificadores Binários
PRECISION (PRECISÃO):
Quantidade classificada corretamente
True Positive / (True Positive + False Positive)
Com nossos números: (16) / (16 + 5) => 16 / 21 = 0.7619
Classificadores Binários
RECALL:
Quantidade classificada como Positivo corretamente
True Positive / (True Positive + False Negative)
Com nossos números: 16 / (16+0) => 16 / 16 = 1
Classificadores Binários
F1 SCORE:
Média harmônica entre Precisão e Recall
Precisão: True Positive / (True Positive + False Positive)
Recall: True Positive / (True Positive + False Negative)
(2* True Positive) / (2* True Positive + False Positive + False Negative)
Com nossos números: (2*16) / (2*16 + 5 + 0) => 32 / 37 = 0.8648
2* Precision*Recall / (Precision + Recall)
Com nossos números: 2*(0,76*1)/(0,76+1) => 1,52 / 1,76 = 0.8636
F1- Score – harmonic mean of Precision and Recall
2. precision .recall /(precision+recall)
ROC
Area under the
ROC curve = AUC
0.5(𝑟𝑎𝑛𝑑𝑜𝑚𝑚𝑜𝑑𝑒𝑙)<𝐴𝑈𝐶<1(𝑝𝑒𝑟𝑓𝑒𝑐𝑡𝑚𝑜𝑑𝑒𝑙)
ROC
Area under the
ROC curve = AUC
0.5(𝑟𝑎𝑛𝑑𝑜𝑚𝑚𝑜𝑑𝑒𝑙)<𝐴𝑈𝐶<1(𝑝𝑒𝑟𝑓𝑒𝑐𝑡𝑚𝑜𝑑𝑒𝑙)
Métricas de Performance
Curva ROC (Receiver Operating Characteristic)
– 1.0: Predição Perfeita
– 0.9: Predição Excelente
– 0.8: Predição Boa
– 0.7: Predição Medíocre
– 0.6: Predição Porca
– 0.5: Predição Aleatória
– <0.5: Tem alguma coisa errada!
Classificadores Binários
30times
2
conferências
25jogadoers
US$ 3,5
Bilhões em
contratos
64Jogares
1 All Star
Game
http://deadspin.com/2014-payrolls-and-salaries-for-every-mlb-team-1551868969
K-Means Cluster
Todos os dados são plotados no gráfico
Os pontos representam os indivíduos analisados, mas não estão
separados em grupos, todos fazem parte do mesmo grupo. Ao informar a
quantidade de centróides, as interções começam até o momento de convergir
e encontrar os K grupos.
Os pontos representam os dados de treinos, neste caso o dataset
K-Means Cluster
Centróides iniciais em posições aleatórias
Ao iniciar o algoritmo, os K pontos (chamados de centróides) são
plotados aleatoriamente no plano e possuem um ponto de partida para iniciar
o algoritmo.
As cruzes representam os centróides, e a linha tracejada é a borda de
separação entre os centróides, fazendo com que esse grupo seja
dividido entre os individuos da parte de cima desta linha, e da parte de
baixo.
K-Means Cluster
Com base nos pontos e centros, inicia-se o algoritmo
Os centróides são re-calculados a cada interação, calculando a
média da distância entre cada ponto e a posição do centróide. Então, com
base neste resultado o centróide muda de lugar ficando mais ao centro de seus
pontos (elementos).
Posição inicial (amarelo) do centróide seguindo para uma próxima
posição (vermelho e azul).
K-Means Cluster
Alteração dos pontos e centros
Enquanto a distância for recalculada e elementos mudarem de
centro, o algoritmo continua executando.
Reparem que os elementos marcados mudaram de centro.
K-Means Cluster
Posição final depois de uma interação.
K-Means Cluster
Com base nos pontos e centros, inicia-se o algoritmo
Mais uma interação e re-calculo das distâncias, e com isso, mais uma
vez a movimentação dos centróides.
Posição inicial (amarelo) do centróide seguindo para uma próxima
posição (vermelho e azul).
K-Means Cluster
Quando parar?
No momento que os centróides não recebem nenhum elemento novo
em seu grupo significa que eles convergiram para uma posição satisfatória, e
criou os grupos necessários.
Enquanto a média da distância calculada ainda alterar pontos entre os
grupos, o algoritmo continua interagindo e re-calculando os centróides.
K-Means Cluster
Ponto satisfatório
Ao encontrar o ponto satisfatório, o algoritmo para de executar e
mantém os elementos conectados com seus centróides.
Depois da interação não houve mudança de elementos.
K-Means Cluster
Quantos centróides usar?
Existe uma linha de pesquisa que usa esta representação de elbow
(cotovelo) para definir uma quantidade razoavel de centróides.
Esta técnica condiz em encontrar o platô e então utilizar valores
anteriores. Quando utilizar um valor que esteja estagnado no platô, o
resultado não terá tanta relevância e impacto para o agrupamento.
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
K-Means Cluster
Multidimensional Vs. Tabular
DAX – Data Analysis eXpressions
MDX – MultiDimensinal eXpressions
DMX – Data Mining eXtensions
Quer aprender
mais sobre BI?
Do Banco de Dados Relacional
à Tomada de Decisão
http://www.ngrsolutions.com.br/course/bi
Obrigado!
Diego Nogare
SQL Server MVP
www.diegonogare.net

Business Intelligence, Data Visualization and Data Science

  • 1.
    Business Intelligence, Datavize Data Science SQL Maniacs Chapter Meeting Diego Nogare SQL Server MVP www.diegonogare.net
  • 2.
  • 3.
  • 4.
    Planning on attendingPASS Summit 2015? Start saving today! • The world’s largest gathering of SQL Server & BI professionals • Take your SQL Server skills to the next level by learning from the world’s top SQL Server experts, in over 190 technical sessions • Over 5000 registrations, representing 2000 companies, from 52 countries, ready to network & learn Save $150 right now using discount code LCCOMPRX86
  • 5.
    Whatever your datapassion – there’s a Virtual Chapter for you! 5 www.sqlpass.org/vc
  • 6.
    Select Virtual ChapterMeetings more events and info at sqlpass.org/events VIRTUAL CHAPTER MEETING TOPIC DBA Fundamentals and Women in Technology Aug 18 11:00-12:00 (UTC-06:00) Moving from Profiler to Extended Events presented by Jes Borland In Memory Aug 18 16:00-17:00 (UTC 00:00) Inside xVelocity in-memory engine for PowerPivot, Power BI and Analysis Services Tabular presented by Marco Russo Global Spanish Aug 19 12:00-13:00 (UTC-05:00) Introducción a Data Science presented by Jose L. Rivera Virtualization Aug 19 12:00-13:00 (UTC-05:00) Questions & Answers presented with David Klee Global Russian Aug 19 15:00-16:30 (UTC+03:00) Внутри Оптимизатора Запросов: Агрегация presented by Dmitry Pilyugin Global Chinese Aug 20 20:00-21:30 (UTC-06:00) New Features in SQL 2016 with Lindsey Allen Business Analytics Aug 26 15:00-16:00 (UTC-05:00) Power BI, Mission Possible! Presented by Reza rad Application Development Aug 27 16:00-17:00 (UTC 00:00) Entity Framework Database Performance Anti-Patterns presented by Russ Thomas
  • 7.
    Upcoming SQLSaturdays North AmericaInternational • Aug 22 Louisville • Aug 29 El Paso • Aug 29 Oklahoma City • Sep 12 Las Vegas • Sep 19 San Diego • Sep 26 Spartanburg • Aug 18 Malaysia • Aug 22 Guatemala • Aug 29 Oslo • Sep 5 Gothenburg • Sep 5 Johannesburg • Sept 5 Paris • Sept 12 Bogota • Sep 26 São Paulo Visit www.sqlsaturday.com to register for a event near you!
  • 8.
    8 Volunteering Opportunities PASS wouldnot exist without passionate, dedicated, and hardworking volunteers from around the globe. Volunteer today!! For local opportunities please visit volunteer.sqlpass.org For PASS HQ related activities, please update the “MyVolunteering” section of your MyPASS profile.
  • 9.
    9 PASSion Award 2015 Thehighest of PASS accolades presented yearly to an outstanding volunteer. Nominations for the 2015 PASSion Award are now open. Email PASSionAward@sqlpass.org to submit a nomination. For more information visit http://www.sqlpass.org/Community /Volunteers/PASSionAward.aspx
  • 10.
    Stay Involved! • Signup for a free membership today at sqlpass.org • Linked In: http://www.sqlpass.org/linkedin • Facebook: http://www.sqlpass.org/facebook • Twitter: @SQLPASS • PASS: http://www.sqlpass.org
  • 11.
    Agenda  Business Intelligence SSIS – SQL Server Integration Services  SSAS – SQL Server Analysis Services  Dataviz (Data Visualization)  Datazen  PowerBI  Data Science  Azure Machine Learning  R 1 1
  • 12.
  • 13.
    SQL Server IntegrationServices http://www.dbbest.com/blog/wp-content/uploads/2012/12/ETL_input_output.jpg
  • 14.
  • 15.
    SQL Server AnalysisServices Tamanho Cor
  • 16.
    SQL Server AnalysisServices Tamanho Cor Camiseta Bermuda Calça Azul Amarela Vermelha Preta PP MP G 4 62 3 2 15 8 9 64 0 7 42 3
  • 17.
    SQL Server AnalysisServices Camiseta Bermuda Calça Azul Amarela Vermelha Preta PP MP G Bermuda Azul P Camiseta Preta G Calça Amarela M 1
  • 18.
    4 62 3 215 8 9 64 0 7 42 3 Azul = 55
  • 19.
    4 62 3 215 8 9 64 0 7 42 3 Calça = 66
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
    Fronteira de Decisão ℎ𝜃𝑥 = 𝑔(𝜃0 + 𝜃1x1 + 𝜃2x2) ℎθ(𝑥) = 𝑔(𝜃00 + 𝜃1x1 + 𝜃2x2 + 𝜃3x1 2 + 𝜃4x2 2 ) Função Linear Função Quadrática
  • 28.
  • 29.
    Classificadores Binários ACURACY (ACURÁCIA): Quantidadeclassificada como Positivos e Negativos corretamente (True Positive + True Negative) / ((True Positive + False Negative) +(False Positive + True Negative)) Com nossos números: (16 + 54) / ((16+0) + (5+54)) => 70 / 75 = 0.9333
  • 30.
    Classificadores Binários PRECISION (PRECISÃO): Quantidadeclassificada corretamente True Positive / (True Positive + False Positive) Com nossos números: (16) / (16 + 5) => 16 / 21 = 0.7619
  • 31.
    Classificadores Binários RECALL: Quantidade classificadacomo Positivo corretamente True Positive / (True Positive + False Negative) Com nossos números: 16 / (16+0) => 16 / 16 = 1
  • 32.
    Classificadores Binários F1 SCORE: Médiaharmônica entre Precisão e Recall Precisão: True Positive / (True Positive + False Positive) Recall: True Positive / (True Positive + False Negative) (2* True Positive) / (2* True Positive + False Positive + False Negative) Com nossos números: (2*16) / (2*16 + 5 + 0) => 32 / 37 = 0.8648 2* Precision*Recall / (Precision + Recall) Com nossos números: 2*(0,76*1)/(0,76+1) => 1,52 / 1,76 = 0.8636 F1- Score – harmonic mean of Precision and Recall 2. precision .recall /(precision+recall)
  • 33.
    ROC Area under the ROCcurve = AUC 0.5(𝑟𝑎𝑛𝑑𝑜𝑚𝑚𝑜𝑑𝑒𝑙)<𝐴𝑈𝐶<1(𝑝𝑒𝑟𝑓𝑒𝑐𝑡𝑚𝑜𝑑𝑒𝑙)
  • 34.
    ROC Area under the ROCcurve = AUC 0.5(𝑟𝑎𝑛𝑑𝑜𝑚𝑚𝑜𝑑𝑒𝑙)<𝐴𝑈𝐶<1(𝑝𝑒𝑟𝑓𝑒𝑐𝑡𝑚𝑜𝑑𝑒𝑙)
  • 35.
    Métricas de Performance CurvaROC (Receiver Operating Characteristic) – 1.0: Predição Perfeita – 0.9: Predição Excelente – 0.8: Predição Boa – 0.7: Predição Medíocre – 0.6: Predição Porca – 0.5: Predição Aleatória – <0.5: Tem alguma coisa errada!
  • 36.
  • 37.
    30times 2 conferências 25jogadoers US$ 3,5 Bilhões em contratos 64Jogares 1All Star Game http://deadspin.com/2014-payrolls-and-salaries-for-every-mlb-team-1551868969
  • 39.
    K-Means Cluster Todos osdados são plotados no gráfico Os pontos representam os indivíduos analisados, mas não estão separados em grupos, todos fazem parte do mesmo grupo. Ao informar a quantidade de centróides, as interções começam até o momento de convergir e encontrar os K grupos. Os pontos representam os dados de treinos, neste caso o dataset
  • 40.
    K-Means Cluster Centróides iniciaisem posições aleatórias Ao iniciar o algoritmo, os K pontos (chamados de centróides) são plotados aleatoriamente no plano e possuem um ponto de partida para iniciar o algoritmo. As cruzes representam os centróides, e a linha tracejada é a borda de separação entre os centróides, fazendo com que esse grupo seja dividido entre os individuos da parte de cima desta linha, e da parte de baixo.
  • 41.
    K-Means Cluster Com basenos pontos e centros, inicia-se o algoritmo Os centróides são re-calculados a cada interação, calculando a média da distância entre cada ponto e a posição do centróide. Então, com base neste resultado o centróide muda de lugar ficando mais ao centro de seus pontos (elementos). Posição inicial (amarelo) do centróide seguindo para uma próxima posição (vermelho e azul).
  • 42.
    K-Means Cluster Alteração dospontos e centros Enquanto a distância for recalculada e elementos mudarem de centro, o algoritmo continua executando. Reparem que os elementos marcados mudaram de centro.
  • 43.
    K-Means Cluster Posição finaldepois de uma interação.
  • 44.
    K-Means Cluster Com basenos pontos e centros, inicia-se o algoritmo Mais uma interação e re-calculo das distâncias, e com isso, mais uma vez a movimentação dos centróides. Posição inicial (amarelo) do centróide seguindo para uma próxima posição (vermelho e azul).
  • 45.
    K-Means Cluster Quando parar? Nomomento que os centróides não recebem nenhum elemento novo em seu grupo significa que eles convergiram para uma posição satisfatória, e criou os grupos necessários. Enquanto a média da distância calculada ainda alterar pontos entre os grupos, o algoritmo continua interagindo e re-calculando os centróides.
  • 46.
    K-Means Cluster Ponto satisfatório Aoencontrar o ponto satisfatório, o algoritmo para de executar e mantém os elementos conectados com seus centróides. Depois da interação não houve mudança de elementos.
  • 47.
    K-Means Cluster Quantos centróidesusar? Existe uma linha de pesquisa que usa esta representação de elbow (cotovelo) para definir uma quantidade razoavel de centróides. Esta técnica condiz em encontrar o platô e então utilizar valores anteriores. Quando utilizar um valor que esteja estagnado no platô, o resultado não terá tanta relevância e impacto para o agrupamento.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
    Multidimensional Vs. Tabular DAX– Data Analysis eXpressions MDX – MultiDimensinal eXpressions DMX – Data Mining eXtensions
  • 59.
  • 60.
    Do Banco deDados Relacional à Tomada de Decisão http://www.ngrsolutions.com.br/course/bi
  • 62.
    Obrigado! Diego Nogare SQL ServerMVP www.diegonogare.net