20130620 Streamlining Analytics extern

959 views

Published on

Smals Research infosession on Predictive Analytics. Strategies for Big Data analysis, assuring process driven Data Quality, best practices for ETL (Extract-Transform-Load), sources for anomalies, OLAP (Online Analytical Processing), roadblocks for Predictive Analysis projects, Hardware appliances for Analytics, Massively Parallel Processing (MPP), In-database analytics, hands-on tests of IBM Netezza - Pure Data, MapReduce, EMC Greenplum, R, Revolution Analytics, SQL, Data Quality Tools, Data Profiling, Methodologies, KDD, CRISP-DM, SEMMA (Sample-Explore-Modify-Model-Assess), more info: @SmalsResearch, @Smals_ICT, http://blogresearch.smalsrech.be

Published in: Technology
2 Comments
2 Likes
Statistics
Notes
No Downloads
Views
Total views
959
On SlideShare
0
From Embeds
0
Number of Embeds
46
Actions
Shares
0
Downloads
0
Comments
2
Likes
2
Embeds 0
No embeds

No notes for slide

20130620 Streamlining Analytics extern

  1. 1. 1 Streamlining Analytics Jan.Meskens@smals.be Dries.VanDromme@smals.be Onderzoek - @SmalsResearch http://blogresearch.smalsrech.be
  2. 2. 2 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  3. 3. 3 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  4. 4. 44 Data Voorspellingen over de toekomst
  5. 5. 55 Voorspellingen over de toekomst Predictief Model Fase 1: Training Fase 2: Toepassing Algoritmes Historische data Nieuwe data
  6. 6. 66 PA voorbeeld: marketing analytics Voorspel wat kopers nodig hebben Toon advertenties voor deze producten
  7. 7. 77 PA voorbeeld: fraudebestrijding Voorspel of een transactie frauduleus is Blokkeer automatisch kaarten, rekeningen,…
  8. 8. 8 PA voorbeeld: churn prediction Voorspel of een klant gaat overlopen naar de concurrentie Aangepaste acties om potentiële overlopers te behouden
  9. 9. 9 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  10. 10. 1010 Analytics vs. Productie-applicaties Applicatie Data Analytics
  11. 11. 11 Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain »
  12. 12. 12 Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain » Production Databases
  13. 13. 13 ETL: Extract Transform Load Bron Doel Omvormen data-schema Ster-schemaDerde normaalvorm
  14. 14. 14 ETL: Extract Transform Load Bron Doel Data-quality operaties Fonsnylaan/Avenue Fonsny 20 Fonsnylaan/Avenue Fonsny 20 SPRL 2200 N.v.. NV Adres correcties Harmonisatie afkortingen … Missing values?
  15. 15. 15 Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain »
  16. 16. 16 Het data warehouse (DWH) Veel toepassingenVeel operationele data sources Analytics Reporting … Consistent Uniform data-schema Historieken - versies Geoptimaliseerd voor output
  17. 17. 17 Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain »
  18. 18. 18 Data Warehouse Data marts Bedrijf Team A Departement 2 Team B Team C
  19. 19. 19 Vaak gebruikt data-model: OnLine Analytical Processing (OLAP)
  20. 20. 20 Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain »
  21. 21. 21 Set independent variables (X1,…,Xn) en 1 dependent variable (Y) Netwerk data Images, Video Continuous data Time series Data-warehouse / data-mart Analytics personal datastore
  22. 22. 22 Set independent variables (X1,…,Xn) en 1 dependent variable (Y) Netwerk data Images, Video Continuous data Time series Data-warehouse / data-mart Analytics personal datastore Feature extraction Graaf algoritmes Discretisatie Herschaling
  23. 23. 23 Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting De « data supply chain »
  24. 24. 24 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  25. 25. 25[Eric Siegel, Predictive Analytics, 2013] Lancering van het predictive analytics project! Uitstel, uitstel, uitstel, … , afstel? « Atypische/onbekende techniek » « Modellen verouderd » « Servers niet krachtig genoeg » « Waar is de data? » « Betrokkenheid van veel rollen/teams »
  26. 26. 26 Barrière 1: Complexe en trage architectuur Analytics Reporting Copy Copy
  27. 27. 27 Barrière 1: Complexe en trage architectuur Maandag Dinsdag Woensdag Donderdag Vrijdag Zaterdag Zondag Copy 1 Copy 2 Copy 3 Copy 4 Copy 5
  28. 28. 28 Betekenis van bepaalde values wordt onduidelijk Barrière 2: Dataquality management Analytics Reporting Data Quality evolueert doorheen de ketting
  29. 29. 29 Barrière 2: Dataquality management Analytics Reporting Betekenis van bepaalde values wordt onduidelijk NULL U SPRL 155
  30. 30. 30 Barrière 3: Atypische projectstructuur Operationele systemen Data warehouse Data-mart Analytics RequestRequest’Request’’Request’’’
  31. 31. 31 Barrière 3: Atypische projectstructuur Analytics Data discovery Data preprocessing Model development … Project team Atypischetaken
  32. 32. 32 Barrière 3: Atypische projectstructuur Analytics Data discovery Data preprocessing Model development … Project team Atypischetaken
  33. 33. 3333 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  34. 34. 34 Hardware appliances? Toaster Koffiezet Blender Microwave Strijkijzer
  35. 35. 35 Hardware appliances? An appliance has one function (toasting, making coffee, …), is easy to use and its internals are not relevant A hardware appliance for analytics has one function (executing complex queries), is easy to install, manage, tune, … and its internals are not relevant [Rick van der Lans, http://www.b-eye-network.com/view/13506]
  36. 36. 36 « Supercomputers voor analytics » Deep Blue Chess Appliance NVIDIA Grid Visual Computing Appliance knoSYS 100 Genomic Analysis Appliance
  37. 37. 37 Hardware appliance voor analytics (Data Warehouse appliance) DWH Appliance Optimized Database Optimized OS Optimized HardwareOptimized Hardware
  38. 38. 38 DiskDisk Massively Parallel Processing (MPP) CPU Memory Disks CPU Memory CPU Memory CPU Memory DiskDiskDisks DiskDiskDisks DiskDiskDisks … CPU Memory Metadata Node Master Netwerk
  39. 39. 39 DiskDisk Data loading CPU Memory Disks CPU Memory CPU Memory CPU Memory DiskDiskDisks DiskDiskDisks DiskDiskDisks … CPU Memory Metadata Part 4Part 3Part 2Part 1 1. Profile data 2. Partition & distribute data
  40. 40. 40 DiskDisk Data querying CPU Memory Disks CPU Memory CPU Memory CPU Memory DiskDiskDisks DiskDiskDisks DiskDiskDisks … CPU Memory Metadata SELECT * FROM X WHERE id=1000 Part 4Part 3Part 2Part 1 1. Bouw queryplan 2. Voer query uit 3. Combineer resultaten
  41. 41. 41 DiskDisk Data querying CPU Memory Disks CPU Memory CPU Memory CPU Memory DiskDiskDisks DiskDiskDisks DiskDiskDisks … CPU Memory Metadata SELECT * FROM X WHERE id=1000 Part 4Part 3Part 2Part 1 1. Bouw queryplan 2. Voer query uit 3. Combineer resultaten
  42. 42. 42 CPU Memory Metadata Extra optimalisaties DiskDisk CPU Memory Disks DiskDiskDisks DiskDiskDisks DiskDiskDisks … CPU Memory Metadata CPU CPU Memory CPU CPU Memory CPU CPU Memory CPU Multi-core nodes Hardware supported query & compressie Parallel loading (In memory DB’s, Distributed FS, …)
  43. 43. 43 Data querying vs. data loading - Performant - Benut MPP optimaal - Maar: afhankelijk van hoe dataloading gebeurd is! - Traag - Veel processing & scanning - Optimalisaties mogelijk
  44. 44. 44 Hardware appliance voor analytics (Data Warehouse appliance) DWH Appliance Optimized Database Optimized OS Optimized Hardware
  45. 45. 45 … In-database analytics Database server software SASprocsql SAS Datasteps R MapReduce SQL Custom Vendor-specific Translators/connectors Client software Rstudio Oracle BI SQL Client … DB Query Analytics Query
  46. 46. 46 SAS connectoren
  47. 47. 4747 DWH Appliances samengevat DWH Appliance Optimized Database Optimized OS Optimized Hardware  Heel performante MPP architectuur  Queries worden snel uitgevoerd  Data loading gaat vrij traag  Connectoren voor 1 of meerdere (analytics) softwares
  48. 48. 48 Marktoverzicht
  49. 49. 49 Markt in beweging 2000 2010 2012 2005 2011 2005 2010 oprichting oprichting oprichting overname nieuwe naam overname overname 2009 Commodity HardwareProprietary Hardware
  50. 50. 50 Markt in beweging 2005 2011 2013 2003 2008 2003 2006 partnership partnership overname overname lanceringoprichting oprichting oprichting 2010 overname 2004 partnership Commodity Hardware
  51. 51. 51 Generic Specific Accelerator MPP Software-stack Architectuur Meer info over dit kwadrant: contacteer Smals Onderzoek
  52. 52. 52 nCluster
  53. 53. 53 Get all the flights to London for which another flight exists to London that leaves within an hour on the same day http://www.teradata.be/white-paper/Using-SQL-MapReduce-for-Advanced-Analytical-Queries/ 16:45 17:20 < 60 min
  54. 54. 54 SELECT * FROM GET_NEXT_FLIGHT_1HR (ON DEPARTURES PARTITION BY DESTINATION) WHERE DESTINATION = 'London' ORDER BY DEP_TIME SELECT * FROM DEPARTURES AS D1 WHERE DESTINATION = 'London' AND DEP_TIME + 60 MINUTES >= ( SELECT MIN(DEP_TIME) FROM DEPARTURES AS D2 WHERE DESTINATION = 'London' AND D2.DEP_TIME > D1.DEP_TIME AND D2.DEP_DAY = D1.DEP_DAY ) ORDER BY DEP_TIME Get all the flights to London for which another flight exists to London that leaves within an hour on the same day MapReduce table function (kunnen zelf gedefinieerd worden) http://www.teradata.be/white-paper/Using-SQL-MapReduce-for-Advanced-Analytical-Queries/ SQL SQL-MapReduce
  55. 55. 55 IBM® PureData™ for Analytics, powered by Netezza technology
  56. 56. 56 IBM® PureData™ for Analytics, powered by Netezza technology In de worker nodes: Zeer snelle decompressie en windowing
  57. 57. 57
  58. 58. 58 DWH Appliances in de data supply chain Production Databases Staging Area Data Warehouse Datamarts Personal Datastores Analytics Reporting
  59. 59. 59 DWH Appliances in de data supply chain Production Databases Analytics Reporting ExtractLoadTransform(ELT)
  60. 60. 60 Barrière 1: Complexe en trage architectuur Barrière 3: Atypische projectstructuur « Data-supply chain » wordt eenvoudiger en performanter met DWH appliances Een stap in de goeie richting: Analytics-experten hebben makkelijker toegang tot alle data (met respect voor security/privacy) Barrière 2: Dataquality management Grote verbetering mogelijk dankzij vereenvoudigde architectuur mits Information/Master Data Management (Documentatie)
  61. 61. 61 Dit was de theorie… Nu de praktijk!
  62. 62. 62 POC met IBM Netezza Geanonimiseerde Data (~ 40 GB) Sas & CSV-files Netezza IBM, Evere Test-scripts SAS-script 1 SAS-script 2 R-analyse 1 R-analyse 2 Load Query Meer info over deze POC: contacteer Smals Onderzoek
  63. 63. 63 SAS code aanpassingen 2. Native ‘Nettezza SQL’ Client-PC 1. Sas code 2. Native ‘Nettezza SQL’ 1. Sas code Onaangepaste code kan niet volledig vertaald worden : Berekeningen worden gespreid over Client-PC & Netezza (= veel performantieverlies) SAS- translator Meer info over deze POC: contacteer Smals Onderzoek
  64. 64. 64 SAS code aanpassingen 2. Native ‘Nettezza SQL’ Client-PC 1. procSQL 2. Native ‘Nettezza SQL’ 1. Data steps Onaangepaste code kan niet volledig vertaald worden : Berekeningen worden gespreid over Client-PC & Netezza (= veel performantieverlies) SAS- translator Meer info over deze POC: contacteer Smals Onderzoek
  65. 65. 65 R code aanpassingen 2. Native ‘Nettezza SQL’ Client-PC 1. R code 2. Native ‘Nettezza SQL’ 1. R code Onaangepaste code kan niet volledig vertaald worden : Berekeningen worden gespreid over Client-PC & Netezza (= veel performantieverlies) R-translator Meer info over deze POC: contacteer Smals Onderzoek
  66. 66. 66 SQL is native ondersteund Client-PC SQL SQL hoeft niet vertaald te worden = enorm performant Meer info over deze POC: contacteer Smals Onderzoek
  67. 67. 67 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  68. 68. 68 … CPU Memory Metadata SELECT coffee, milk, sugar, cookies FROM regular_break INNER JOIN infosession_break ON rId = iId
  69. 69. 69 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  70. 70. 7070 Analytics & Data Quality  De ideale wereld (voorgaande studies)  best practices  De realiteit (praktijkvoorbeelden uit projecten)  typische problemen van data quality bij analytics-projecten  hoe data quality tools de aanpak ondersteunen
  71. 71. 71  Vereenvoudigde data supply chain  minder ETL, minder vertaalslagen (cfr. barrière 2)  opportuniteit voor data governance:  Data quality management  Master data management  Information management  op één plaats enten Analytics & Data Quality: de ideale wereld (1) (ELT)
  72. 72. 72 Analytics & Data Quality: de ideale wereld (2)  Best practice: « fitness for use »  100% data quality is onbereikbaar  kosten vs. baten  good enough for its (all) intended use  in scope voor intended use? Smals Research publicatie « Data Quality: Best Practices », I.Boydens, 2006 Business Applications data supply chain Reporting Analytics
  73. 73. 73 Business DB A,B,C DB A,B,C + historiek DWH DQTeam extract resultaten Batch DQ project Discovery Documen tation update gevalideerde resultaten Validation DQ Tools L Applications L L LL L L L Business Logica, kennis Business-Logica -definities (dubbels, …), -business rules, -standaardisatie of correctie, -algoritmen, controles -D Business Process -D Application, -D DB-constraints, … L Smals Research publicatie « Gestion intégrée des anomalies », I.Boydens, D. Van Dromme, e.a., 2011 Analytics & Data Quality: de ideale wereld (3)  Best practice: DQ aanpakken aan de bron, BPR data supply chain Business Process Reengineering
  74. 74. 74  De realiteit  gebrek aan data quality / best practices  hoe data quality tools de aanpak ondersteunen  a.h.v. praktijkvoorbeelden uit voorgaande projecten  typische problemen van data quality bij analytics- projecten  waarom typisch voor analytics-projecten?  net bij interessante groepen (risico’s, nieuwe opportuniteiten, …) zijn applicatie en databank (nog) onaangepast en is de data quality slechter  uitzonderingen, outliers zijn belangrijk (bv. fraude)  data quality wordt soms misbruikt om aan controles te ontsnappen Analytics & Data Quality: de realiteit
  75. 75. 75 1. Gebrek aan (up to date) documentatie  Werkelijke gebruik is geëvolueerd  documentatie echter niet aangepast  bv. niet-gedocumenteerde code  Na een vertaalslag in de data supply chain  (E)T(L)  bv. codes gewijzigd REC_ID REC_poorlyDocumentedVar 456 01 457 61 458 51 ? REC_ID OLTP1_CODACT 456 457 1 458 REC_ID DWH_CODACT 456 A 457 S 458 A
  76. 76. 76 Data Quality Tools ondersteuning: Data Profiling (formele audit) Data Profiling DQTools Business people +Analyst DB-schema, Constraints, Business Rules, Documentation, … Metadata (inaccurate, incomplete) Real data (complete, quality=?) Metadata (corrected) Facts about data (quality = !) Data Quality Issues - lack of standardisation - schema not respected - rules not respected Jack E. Olson, "Data Quality – The Accuracy Dimension"  Data Profiling met Data Quality Tools  Veld per veld: Column Property Analysis  Structuur: referentiële constraints  Consistency: business rules
  77. 77. 77 • (1)-(16) geanalyseerd tijdens load  gegenereerde metadata Min, Max, Lengtes, Null Values, Unique Values Patronen, Distributies, Business Rules, …  detectie Keys & Dependencies • Apostemp(12): postcode werkgever  vb. patronen, a.h.v. Masks • Performantie: < 5 min op 1 miljoen records Data Profiling – Column Property Analyse, drill-down (1)
  78. 78. 78 Data Profiling – Column Property Analyse, drill-down (2)
  79. 79. 79 • bron 1: Authentieke bron(44) sleutel: Ind_nr • bron 2: Source_secondaire(60) Identificatienummer verwijst naar Ind_nr's 2 miljoen 250.000 Data Profiling – Referentiële integriteit, foreign keys (1) ? • Confrontatie bron 1 – bron 2 86 waarden niet in authentieke bron in 669 records (er zijn dus dubbels)
  80. 80. 80 2 miljoen 250.000 ? Data Profiling – Referentiële integriteit, foreign keys (2)
  81. 81. 81 Data Profiling – Functional Dependencies Detectie, tijdens load quality sample 10.000 conflicten Verificatie, on demand drill-down naar overzicht van conflicten indien Quality < 100% exhaustief, 2.9 miljoen
  82. 82. 82 Data Profiling – Business Rules (1)
  83. 83. 83 Data Profiling – Business Rules (2)
  84. 84. 84 2. Data-integratie vanuit heterogene bronnen  Data Preparation & transformation  naar een vorm geschikt voor Analytics src2 src1 key X1 X2 X3 X4 … … … … … … … … … … … … … … … Y … … … Analytics Model f(x1,…,x4) = y src1_key src2_key 406798006 0406.798.006 206731645 0206.731.645 … … src1_creationdate src2_datstart 20060401 01APR06 19501001 01OCT50 … …
  85. 85. 85 Ondersteuning data integratie met dqtools: Data Standardisation – simple domains Example: country codes origineel toegevoegd m.b.v. data quality tool
  86. 86. 86 781114-269.56 Yves Bontemps Rue Prince Royal 102 Bruxelles Yves Bontemps781114-269.56 Rue Prince Royal 102 Bruxelles Parsing Yves Bontemps781114-269.56 Rue du Prince Royal 102 Ixelles Koninklijke PrinsstraatMale Elsene 1050 Enrichment  Data Quality Tools - thousands of rules for Parsing - knowledge bases for Enrichment, often Regional Ondersteuning data integration met dqtools: Data Standardisation – complex domains Example: names and adresses
  87. 87. 87 Data standardisation with Data Quality Tools What view would you rather build analytics upon? ...
  88. 88. 88 3. Netwerk-analytics met fuzzy matching  Eenvoudig geval: als de relaties in een (social) netwerk rechtstreeks uit de RDBMS-structuur kunnen gehaald worden  klanten die met elkaar getelefoneerd hebben  werkgever-werknemersrelatie  producten die samen gekocht zijn  Complex geval: «fuzzy matching»  gevestigd op « gelijkaardig adres »  Hoe?  voorbereid met data quality tools voorwerp van modeling: - risico, - opportuniteit, - …
  89. 89. 89 Fuzzy matching met data quality tools (1) 2 databanken, L en R  er bestaat geen 'vreemde sleutel'-relatie tussen L en R  DQTool detecteert dubbels en organiseert in clusters  DQTool legt link tussen beide databanken  mogelijke fraude ?
  90. 90. 90 zonder met Resultaat (fuzzy matching + adresvalidatie, adrescleansing)  gecorrigeerde postcode  gestandaardiseerde straatnaam  correct ingedeelde adreselementen (parsing)  gecorrigeerde gemeentenaam  dubbels gedetecteerd en georganiseerd in clusters Fuzzy matching met data quality tools (2)
  91. 91. 91 Fuzzy matching met data quality tools (3)  Performantie is cruciaal  in principe kwadratisch in f(aantal records)*  voorbeeld: « gelijkaardige adressen »  parsing  adresvalidatie  matching  post-processing (inspectiedistricten)  250.000 actieve: 10 min  850.000 +historiek: 1u * Cfr. Performance, Blocking  Smals Research publicatie « Data Quality II: Tools », D. Van Dromme, 2007
  92. 92. 92 Analytics & Data Quality: conclusie  Belangrijke taken van de Analytics-expert, hebben te lijden aan een gebrek aan dq 1. Kennis opbouwen bij gebrek aan (up to date) documentatie en standaardisatie 2. Data-integratie vanuit heterogene bronnen 3. Netwerk-analytics met fuzzy links  Data Quality Tools-functionaliteiten kunnen de Analytics-expert helpen  Profiling – Standardisation – Fuzzy Matching
  93. 93. 94 Predictive analytics De data supply chain Hardware appliances voor analytics Data quality Analytics project management Barrières bij de introductie van analytics Streamlining Analytics
  94. 94. 95 Analytics project management  Probleemstelling (barrière 3)  Data Mining Methodologie  Resource & project planning  Critical data miner tasks
  95. 95. 96 Probleemstelling - barrière 3: atypische projectstructuur Analytics Data discovery Data preprocessing Model development … Project team Atypischetaken
  96. 96. 97 Analytics-project-methodologie  Gelijkaardige, iteratieve methodologieën  KDD original approach: 5 key processes (Fayyad, 1996)  CRISP-DM 1.0 (1999+), 2.0 (2006+)  SEMMA by SAS KDD SEMMA CRISP-DM Pre KDD - - Business understanding Selection Sample Data understanding Pre-processing Explore Transformation Modify Data preparation Data Mining Model Modeling Interpretation Assess Evaluation Post KDD - - Deployment http://www.kdd.org/
  97. 97. 98 Analytics-project-methodologie  « CRISP-DM » Cross-Industry Standard Process for Data Mining « SEMMA » Sample Explore Modify Model Assess Karakteristieken: iteratief proces, multidisciplinair  samenstelling projectteam  projectfasen
  98. 98. 99 DM Methodologieën in tools SAS Enterprise Miner (SEMMA)  Data-input  via csv, sas7bdat, …, SQL, SQL-pushback (via DWH/appliance?)  Omgaan met beperkingen  wat als de interessantste patronen (bv. fraude) in de minderheid zijn?  sampling-strategieën, …  Training – Validation – Test sets  Niet: Welke concepten spelen een rol?  welke databronnen  input via welke weg, in welke vorm?
  99. 99. 100 DM Methodologieën in tools SAS Enterprise Miner (SEMMA)  interactief, overleg  visualisatie  bestuderen van distributies  preparatie van transformaties  unsupervised learning techniques  associatie, clustering  inzicht in de data verhogen
  100. 100. 101 DM Methodologieën in tools SAS Enterprise Miner (SEMMA)  Transformatie  naar geschikte vorm voor Data Mining  Extraheren van « gedrag », « events » en « netwerkvariabelen » uit de ruwe variabelen
  101. 101. 102 DM Methodologieën in tools SAS Enterprise Miner (SEMMA)  Welk algoritme?  interpreteerbaarheid  karakteristieken van de inputvariabelen en gezochte patronen  meervoudige classificatie  …
  102. 102. 103 DM Methodologieën in tools SAS Enterprise Miner (SEMMA) Analoog bij andere tools, zoals IBM-SPSS (CRISP-DM)  « model scoring »  hoe goed fit het model de data?  training – validation – test  Niet: feedback vanuit de acties ten gevolge van het toepassen van het model  « Monitor & maintain »
  103. 103. 105  Predictive modeler tasks Wayne Eckerson, "Predictive Analytics: Extending the Value of Your Data Warehousing Investment," 2007 [166 respondents] Analytics project (resource) planning naar een inschatting van benodigde effort … Ontbreken: - betrokkenheid andere stakeholders (Business, IT) - solution architecture - deeltaken
  104. 104. 106 CRISP-DM: onder de motorkap …
  105. 105. 107 werkbare CRISP-DM based project breakdown Effort Proces/fase Taken Stakeholder Business Analyst IT 5%-10% Problem understanding Determine & refine objective B A Define success criteria B Determine data mining goals B A 10%-15% Data Understanding Collect initial data B A Explore data & enhance insight B A Verify data quality A I 30%-60% Data Preparation Select data, extract „events‟ & „behaviour‟ A Cleanse data A I Format data A I 20%-30% Modeling Select modeling technique(s) A Build models A Revise sampling strategy & cost functions A 20%-30% Evaluation of Results Compare & select model A Validate model B A Explain model B A 5%-10% Deployment Deploy model A I Score deployment (feedback) I Monitor & maintain B A met enkele toevoegingen op basis van onze ervaring
  106. 106. 108 Analytics Project Management - caveat Effort Proces/fase Taken Stakeholder Business Analyst IT 5%-10% Problem understanding Determine & refine objective B A Define success criteria B Determine data mining goals B A 10%-15% Data Understanding Collect initial data B A Explore data & enhance insight B A Verify data quality A I 30%-60% Data Preparation Select data, extract „events‟ & „behaviour‟ A Cleanse data A I Format data A I 20%-30% Modeling Select modeling technique(s) A Build models A Revise sampling strategy & cost functions A 20%-30% Evaluation of Results Compare & select model A Validate model B A Explain model B A 5%-10% Deployment Deploy model A I Score deployment (feedback) I Monitor & maintain B A Een project is immers niet « Data Mining » of « Fraudebestrijding »  dat is een dienstverlening  een project richt zich op een welbepaalde modeling-taak (risico, fraudetype, …)
  107. 107. 109 Analytics Project Management - caveat Effort Proces/fase Taken Stakeholder Business Analyst IT 5%-10% Problem understanding Determine & refine objective B A Define success criteria B Determine data mining goals B A 10%-15% Data Understanding Collect initial data B A Explore data & enhance insight B A Verify data quality A I 30%-60% Data Preparation Select data, extract „events‟ & „behaviour‟ A Cleanse data A I Format data A I 20%-30% Modeling Select modeling technique(s) A Build models A Revise sampling strategy & cost functions A 20%-30% Evaluation of Results Compare & select model A Validate model B A Explain model B A 5%-10% Deployment Deploy model A I Score deployment (feedback) I Monitor & maintain B A Pitfall: blijven exploreren en verfijnen Remedie: « agile », « timeboxing », milestones iteratief karakter maakt oplevering van telkens accuratere modellen mogelijk bv. 1ste model na 3 maand
  108. 108. 110 Analytics Project Management - caveat Effort Proces/fase Taken Stakeholder Business Analyst IT 5%-10% Problem understanding Determine & refine objective B A Define success criteria B Determine data mining goals B A 10%-15% Data Understanding Collect initial data B A Explore data & enhance insight B A Verify data quality A I 30%-60% Data Preparation Select data, extract ‘events’ & ‘behaviour‟ A Cleanse data A I Format data A I 20%-30% Modeling Select modeling technique(s) A Build models A Revise sampling strategy & cost functions A 20%-30% Evaluation of Results Compare & select model A Validate model B A Explain model B A 5%-10% Deployment Deploy model A I Score deployment (feedback) I Monitor & maintain B A Extract ‘events’, ‘behaviour’, ‘network’ vars uit ruwe variabelen  bv. Aantal adreswijzigingen in bepaald tijdsvenster vóór event X Een woordje extra uitleg over het selecteren van de juiste modeling-techniek
  109. 109. 111 Selecteren van modeling-techniek: bestaat een « beste » techniek?  Een ideale techniek  moet kunnen omgaan met:  mixed datatypes (continu, discreet, ordinaal, categorisch)  missing values  irrelevante input  gecorreleerde input  grote datasets  en is bovendien:  robuust t.o.v. outliers in de input  ongevoelig voor monotone transformaties van invoervariabelen  vlot interpreteerbaar  accuraat & stabiel  Zo’n techniek zou dan zonder veel pre-processing van invoerdata en zonder veel tuning van parameters toepasbaar zijn
  110. 110. 112 Selecteren van modeling-techniek vuistregels Smals Research Predictive Analytics Competence Center Criterium Perceptron Logistic Regression Linear Discriminant Analysis Decision Trees Neural Nets Nearest Neighbors Support Vector Machines Boosted/ Bagging Trees* Mixed data No No No Yes No No No Yes Missing values No No Yes Yes No +/- No Yes Outliers No Yes No Yes Yes Yes Yes Yes Monotone transfo No No No Yes +/- No No Yes Schaleerbaar Yes Yes Yes Yes Yes No No Yes Irrelevante input No No No +/- No No Yes Yes Gecorreleerde input Yes Yes Yes No Yes +/- Yes +/- Interpreteerbaar Yes Yes Yes Yes No No +/- « No » Accuraat/Stabiel Yes Yes Yes No Yes No Yes Yes *gebruikte techniek: Random Forest vrij naar: cursussen Data Mining, KUL Leerstoel “FAIR”, Fraud Analytics Training, BI-Community, ir. PhD Patrice Latinne, CSC ingezet voor Sociale Fraudebestrijding
  111. 111. 113 Analytics Project Management - caveat Effort Proces/fase Taken Stakeholder Business Analyst IT 5%-10% Problem understanding Determine & refine objective B A Define success criteria B Determine data mining goals B A 10%-15% Data Understanding Collect initial data B A Explore data & enhance insight B A Verify data quality A I 30%-60% Data Preparation Select data, extract „events‟ & „behaviour‟ A Cleanse data A I Format data A I 20%-30% Modeling Select modeling technique(s) A Build models A Revise sampling strategy & cost functions A 20%-30% Evaluation of Results Compare & select model A Validate model B A Explain model B A 5%-10% Deployment Deploy model A I Score deployment (feedback) I Monitor & maintain B A Succes van het project is slechts meetbaar, traceerbaar ALS ook de feedback (de resultaten van acties ten gevolge van het toegepaste model) deftig geregistreerd en opnieuw geëxploiteerd geraakt
  112. 112. 114  Dit vergt:  nieuwe business-processen  afhandelprocessen  actie t.g.v. modelpredicties  registratie van feedback  gestructureerd  exploiteerbaar  gestuurd  de juiste informatie met de juiste granulariteit  bijsturen van modellen in f(feedback)  Dit betekent meestal dat de solution architecture voor dit volledige proces een stuk ruimer is dan typisch voorzien  positief is dat vele elementen hiervan herbruikbaar zijn voor een volgende predictief model Analytics Project Management - caveat Succes van het project is slechts meetbaar, traceerbaar ALS ook de feedback (de resultaten van acties ten gevolge van het toegepaste model) deftig geregistreerd en opnieuw geëxploiteerd geraakt
  113. 113. 115  De meeste methodologieën en succesverhalen gaan ervan uit dat supervised learning-technieken toepasbaar zijn  Dit veronderstelt:  voldoende voorbeelden zijn beschikbaar  voor de trainingsfase van een eerste (predictief) model  van het welbepaald type probleem waarvoor men een predictief model wenst te deployen  Zoniet  dient men te vertrekken van hypothesen,  zullen andere technieken ingezet worden, en  zullen de eerste resultaten slechts dienen om echte feedback / de gezochte feedback te verzamelen  Ook dit zijn nieuwe business-processen  waarvoor de organisatie doorgaans niet klaar is Analytics Project Management - caveat "You can’t model what you don’t have (examples for)"
  114. 114. 116 Conclusie
  115. 115. 117 Barrières bij de introductie van analytics Reporting Analytics Copy Copy 1. Complexe & trage architectuur Analytics 3. Atypische projectstructuur 2. Data quality doorheen de supply chain
  116. 116. 118 Streamlining analytics Reporting Analytics Copy Copy Complexe & trage architectuur Hardware appliance Reporting Analytics
  117. 117. 119 Streamlining analytics Data quality doorheen de supply chain Analytics Analytics Data Quality Data quality aan de bron
  118. 118. 120 Streamlining analytics Analytics Atypische projectstructuur Effort Proces/fase 5%-10% Problem understanding 10%-15% Data Understanding 30%-60% Data Preparation 20%-30% Modeling 20%-30% Evaluation of Results 5%-10% Deployment CRISP-DM based project breakdown
  119. 119. 121 Barrières hangen samen met de analytics/BI behoeftes Interactieve visualisatie van Big Data Operational BI Mobile BI
  120. 120. 122 Bibliografie Jack E. Olson, "Data Quality – The Accuracy Dimension" http://www.teradata.be/white-paper/Using-SQL- MapReduce-for-Advanced-Analytical-Queries/ http://www.b-eye-network.com/view/13506
  121. 121. 123 Wayne Eckerson, "Predictive Analytics: Extending the Value of Your Data Warehousing Investment," 2007 [166 respondents] http://www.kdd.org Bibliografie
  122. 122. 124 Documentatie.smals.be  Dries Van Dromme, 09/2007, Data Quality: Tools - Evaluer et améliorer la qualité des données  Dries Van Dromme, 03/2011, Gestion intégrée des anomalies - Evaluer et améliorer la qualité des données  Isabelle Boydens, 05/2006, Data Quality – Best Practices  Jan Meskens, 12/2011, Predictive Analytics  Grégory Ogonowski, NoSQL – Hype ou Innovation?
  123. 123. 125 Vragen? Jan.Meskens@smals.be Dries.VanDromme@smals.be Onderzoek - @SmalsResearch http://blogresearch.smalsrech.be

×