Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
REASONING WITH PROBABILISTIC
GRAPHICAL MODELS IN A PROJECT
BASED BUSINESS
BY OLGA TATARYNTSEVA, DATA SCIENTIST
• Neural networks
• Deep learning
• Natural language processing
• Image processing
• Big data
• Bioinformatics
Today we are NOT about
• Neural networks
• Deep learning
• Natural language processing
• Image processing
• Big data
• Bioinformatics
• Project based business
• Company organization
• Project management and
project success
• Applying the DS methods to
business problems
• Small example
• Results we gained
Today we are NOT about We are about
Chief Technical officer
... Delivery Director
... PM
... Architects
Business
Analysts
Developers QA
Data
scientists
...
...
...
Simplified structure of delivery organization
Chief Technical officer
... Delivery Director
... PM
... Architects
Business
Analysts
Developers QA
Data
scientists
...
...
...
Simplified structure of delivery organization
PROJECT
Scope
Resources
Quality
Time
Project management triangle
ProjectTeam
Direct contacts with the
customer
Requirements
management
Solution design
Product development
Project budget planning
Working on improvements
and up-sale opportunities
Management of internal
activities
DeliveryDirector
Summarized projects’
budget and cash flow
results
Calculated CSAT
Calculated ESAT
General view of project
activities
Information from reports
built by project team
CTO
Budget flow for vertical
Tendencies of overall CSAT
Tendencies of overall ESAT
Information from reports
built by DDs
Information transfer
Chief Technical officer
Delivery director
PM PM …
Delivery Director
PM PM …
...
PM ...
1000+ employees
Simplified structure of delivery organization
Don’t panic
We have PGM
CTO at ELEKS has a BI Dashboard
• Declarative representation of our understanding of the world
• Identifies the variables and their interaction with each other
• Sources:
• experts’ knowledge
• historical data
• Representation, inference, and learning
• Handles uncertainty
Probabilistic graphical models
«As far as the laws of mathematics refer to reality, they are not certain,
as far as they are certain, they do not refer to reality»
Albert Einstein, 1921
Uncertainty
• Causal inference
• Information extraction
• Message decoding
• Speech recognition
• Computer vision
• Gene finding
• Diagnosis of diseases
• Traffic analysis
• Fault diagnosis
PGM applications
Daphne Koller
Observations:
None
Project health:
success = 68.91%
Project
health
Time: In time Time: Exceed
Budget:
Match
Budget:
Exceed
Budget:
Match
Budget:
Exceed
Success 95 50 40 10
Fail 5 50 60 90
Success = 𝑃 𝑆 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑚𝑎𝑡𝑐ℎ + 𝑃 𝑆 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑒𝑥𝑐𝑒𝑒𝑑 + 𝑃 𝑆 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑚𝑎𝑡𝑐ℎ + 𝑆 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑒𝑥𝑐𝑒𝑒𝑑 =
= 0.95*0.6659*0.8071 + 0.5*0.6659*0.1929 + 0.4*0.3341*0.8071 + 0.1*0.3341*0.1929 = 68.91%
F𝐚𝐢𝐥 = 𝑃 𝐹 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑚𝑎𝑡𝑐ℎ + 𝑃 𝐹 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑒𝑥𝑐𝑒𝑒𝑑 + 𝑃 𝐹 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑚𝑎𝑡𝑐ℎ + 𝐹 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑒𝑥𝑐𝑒𝑒𝑑 = 31.09%
Node name:
Project health
States
success
fail
Depends on
Time, Project Budget
Conditional probability distribution
Bayesian Model with pgmpy
c_maturity_cpd =
TabularCPD(variable='Customer maturity', variable_card=2,
values=[[0.4, 0.6]], evidence=[], evidence_card=[])
...
pr_health_cpd =
TabularCPD(variable='Project health', variable_card=2,
values=[[0.95, 0.5, 0.4, 0.1], [0.05, 0.5, 0.6, 0.9]],
evidence=['Project budget', 'Time schedule'], evidence_card=[2, 2])
Bayesian Model with pgmpy
pr_health_cpd =
TabularCPD(variable='Project health', variable_card=2,
values=[[0.95, 0.5, 0.4, 0.1], [0.05, 0.5, 0.6, 0.9]],
evidence=['Project budget', 'Time schedule'], evidence_card=[2, 2])
print pr_model.get_cpds('Project health')
+------------------+-----------+------------+------------+-------------+
| Project budget | match | match | exceed | exceed |
+------------------+-----------+------------+------------+-------------+
| Time schedule | in_time | exceed | in_time | exceed |
+------------------+-----------+------------+------------+-------------+
| success | 0.95 | 0.5 | 0.4 | 0.1 |
+------------------+-----------+------------+------------+-------------+
| fail | 0.05 | 0.5 | 0.6 | 0.9 |
+------------------+-----------+------------+------------+-------------+
Bayesian Model with pgmpy
pr_model =
BayesianModel([('Customer maturity', 'Requirements elicitation'),
..., ('Time schedule', 'Project health'),
('Project budget', 'Project health')])
pr_model.add_cpds(c_maturity_cpd, pr_complexity_cpd,
time_cpd, req_elicitation_cpd, req_management_cpd,
res_availability_cpd, c_budget_cpd, pr_budget_cpd,
pr_importance_cpd, pr_health_cpd)
Bayesian Model with pgmpy
res = BeliefPropagation(pr_model).query(variables=["Project health"])
print res["Project health"]
+------------------+-----------------------+
| Project health | phi(Project health) |
|------------------+-----------------------|
| success | 0.6891 |
| fail | 0.3109 |
+------------------+-----------------------+
Observations:
Customer maturity: mature
Customer budget: large
Project health:
success = 73.82% (↑4.91%)
Bayesian Model with pgmpy
res = BeliefPropagation(pr_model).query(
variables=["Project health"],
evidence={'Customer budget':1, 'Customer maturity':0})
print res["Project health"]
+------------------+-----------------------+
| Project health | phi(Project health) |
|------------------+-----------------------|
| success | 0.7382 |
| fail | 0.2618 |
+------------------+-----------------------+
Observations:
Customer maturity: mature
Customer budget: large
Resource availability: available
Project complexity: small
Project importance: very important
Project health:
success = 85.73% (↑11.91%)
Observations:
Customer maturity: mature
Customer budget: large
Resource availability: available
Project complexity: complex
Project importance: very important
Project health:
success = 79.45% (↓ 6.28%)
Maturity
level
Lead
time
Team
composition
Staffing time
Story point
time variance
Risk
management
Granularity of
stories
Stakeholders
substitution
Acceptance
criteria rating
RotationsLegal risks
DataScience Lab 2017_Графические вероятностные модели для принятия решений в проектном управлении_Ольга Татаринцева
Events:
None
Project health:
success = 87.36%
Cooperation model: fixed bid
Project stage: stable
Cycle time: decreasing
Number of the opened and reopened
bugs: decreasing
Finance: fit the company’s KPI values
Environment: tools are set and in-use
Soft- and hardware: no blocking requests
Human resources: no open vacancies
Customer satisfaction index: high
Number of tasks in the in-progress state:
increasing
Predicted release date: out of the schedule
Hypothetic Project observations
Observations:
Listed on previous slide
Project health:
success = 12.71% (↓ 74.65%)
Latest date:
2017-02-14
Project health:
success = 53.18%
Major degradation happened on:
2017-02-10
Reason:
Outage in Quality
Reason:
Descending of Project Effectiveness
Reason:
Cumulating of tasks in Progress
Real project
• New communication tool for all levels of the company which is
already in use on every day basis
• For C-level provides understanding:
• Of the department
• Of each project in particular
• For Project Manager it is an instrument:
• For project organization and control
• For the Client:
• Fair presentation of the project work
Benefits
• Improve metrics for measuring project performance
• Build even more intuitive dashboard
• Introduce the model to our customers
• Improve the reflection of the domain by fitting the model to data
Future work
Inspired by Technology.
Driven by Value.
eleks.com

More Related Content

DataScience Lab 2017_Графические вероятностные модели для принятия решений в проектном управлении_Ольга Татаринцева

  • 1. REASONING WITH PROBABILISTIC GRAPHICAL MODELS IN A PROJECT BASED BUSINESS BY OLGA TATARYNTSEVA, DATA SCIENTIST
  • 2. • Neural networks • Deep learning • Natural language processing • Image processing • Big data • Bioinformatics Today we are NOT about
  • 3. • Neural networks • Deep learning • Natural language processing • Image processing • Big data • Bioinformatics • Project based business • Company organization • Project management and project success • Applying the DS methods to business problems • Small example • Results we gained Today we are NOT about We are about
  • 4. Chief Technical officer ... Delivery Director ... PM ... Architects Business Analysts Developers QA Data scientists ... ... ... Simplified structure of delivery organization
  • 5. Chief Technical officer ... Delivery Director ... PM ... Architects Business Analysts Developers QA Data scientists ... ... ... Simplified structure of delivery organization PROJECT
  • 7. ProjectTeam Direct contacts with the customer Requirements management Solution design Product development Project budget planning Working on improvements and up-sale opportunities Management of internal activities DeliveryDirector Summarized projects’ budget and cash flow results Calculated CSAT Calculated ESAT General view of project activities Information from reports built by project team CTO Budget flow for vertical Tendencies of overall CSAT Tendencies of overall ESAT Information from reports built by DDs Information transfer
  • 8. Chief Technical officer Delivery director PM PM … Delivery Director PM PM … ... PM ... 1000+ employees Simplified structure of delivery organization
  • 10. CTO at ELEKS has a BI Dashboard
  • 11. • Declarative representation of our understanding of the world • Identifies the variables and their interaction with each other • Sources: • experts’ knowledge • historical data • Representation, inference, and learning • Handles uncertainty Probabilistic graphical models
  • 12. «As far as the laws of mathematics refer to reality, they are not certain, as far as they are certain, they do not refer to reality» Albert Einstein, 1921 Uncertainty
  • 13. • Causal inference • Information extraction • Message decoding • Speech recognition • Computer vision • Gene finding • Diagnosis of diseases • Traffic analysis • Fault diagnosis PGM applications Daphne Koller
  • 15. Project health Time: In time Time: Exceed Budget: Match Budget: Exceed Budget: Match Budget: Exceed Success 95 50 40 10 Fail 5 50 60 90 Success = 𝑃 𝑆 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑚𝑎𝑡𝑐ℎ + 𝑃 𝑆 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑒𝑥𝑐𝑒𝑒𝑑 + 𝑃 𝑆 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑚𝑎𝑡𝑐ℎ + 𝑆 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑒𝑥𝑐𝑒𝑒𝑑 = = 0.95*0.6659*0.8071 + 0.5*0.6659*0.1929 + 0.4*0.3341*0.8071 + 0.1*0.3341*0.1929 = 68.91% F𝐚𝐢𝐥 = 𝑃 𝐹 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑚𝑎𝑡𝑐ℎ + 𝑃 𝐹 𝑖𝑛_𝑡𝑖𝑚𝑒, 𝑒𝑥𝑐𝑒𝑒𝑑 + 𝑃 𝐹 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑚𝑎𝑡𝑐ℎ + 𝐹 𝑒𝑥𝑐𝑒𝑒𝑑, 𝑒𝑥𝑐𝑒𝑒𝑑 = 31.09% Node name: Project health States success fail Depends on Time, Project Budget Conditional probability distribution
  • 16. Bayesian Model with pgmpy c_maturity_cpd = TabularCPD(variable='Customer maturity', variable_card=2, values=[[0.4, 0.6]], evidence=[], evidence_card=[]) ... pr_health_cpd = TabularCPD(variable='Project health', variable_card=2, values=[[0.95, 0.5, 0.4, 0.1], [0.05, 0.5, 0.6, 0.9]], evidence=['Project budget', 'Time schedule'], evidence_card=[2, 2])
  • 17. Bayesian Model with pgmpy pr_health_cpd = TabularCPD(variable='Project health', variable_card=2, values=[[0.95, 0.5, 0.4, 0.1], [0.05, 0.5, 0.6, 0.9]], evidence=['Project budget', 'Time schedule'], evidence_card=[2, 2]) print pr_model.get_cpds('Project health') +------------------+-----------+------------+------------+-------------+ | Project budget | match | match | exceed | exceed | +------------------+-----------+------------+------------+-------------+ | Time schedule | in_time | exceed | in_time | exceed | +------------------+-----------+------------+------------+-------------+ | success | 0.95 | 0.5 | 0.4 | 0.1 | +------------------+-----------+------------+------------+-------------+ | fail | 0.05 | 0.5 | 0.6 | 0.9 | +------------------+-----------+------------+------------+-------------+
  • 18. Bayesian Model with pgmpy pr_model = BayesianModel([('Customer maturity', 'Requirements elicitation'), ..., ('Time schedule', 'Project health'), ('Project budget', 'Project health')]) pr_model.add_cpds(c_maturity_cpd, pr_complexity_cpd, time_cpd, req_elicitation_cpd, req_management_cpd, res_availability_cpd, c_budget_cpd, pr_budget_cpd, pr_importance_cpd, pr_health_cpd)
  • 19. Bayesian Model with pgmpy res = BeliefPropagation(pr_model).query(variables=["Project health"]) print res["Project health"] +------------------+-----------------------+ | Project health | phi(Project health) | |------------------+-----------------------| | success | 0.6891 | | fail | 0.3109 | +------------------+-----------------------+
  • 20. Observations: Customer maturity: mature Customer budget: large Project health: success = 73.82% (↑4.91%)
  • 21. Bayesian Model with pgmpy res = BeliefPropagation(pr_model).query( variables=["Project health"], evidence={'Customer budget':1, 'Customer maturity':0}) print res["Project health"] +------------------+-----------------------+ | Project health | phi(Project health) | |------------------+-----------------------| | success | 0.7382 | | fail | 0.2618 | +------------------+-----------------------+
  • 22. Observations: Customer maturity: mature Customer budget: large Resource availability: available Project complexity: small Project importance: very important Project health: success = 85.73% (↑11.91%)
  • 23. Observations: Customer maturity: mature Customer budget: large Resource availability: available Project complexity: complex Project importance: very important Project health: success = 79.45% (↓ 6.28%)
  • 24. Maturity level Lead time Team composition Staffing time Story point time variance Risk management Granularity of stories Stakeholders substitution Acceptance criteria rating RotationsLegal risks
  • 27. Cooperation model: fixed bid Project stage: stable Cycle time: decreasing Number of the opened and reopened bugs: decreasing Finance: fit the company’s KPI values Environment: tools are set and in-use Soft- and hardware: no blocking requests Human resources: no open vacancies Customer satisfaction index: high Number of tasks in the in-progress state: increasing Predicted release date: out of the schedule Hypothetic Project observations
  • 28. Observations: Listed on previous slide Project health: success = 12.71% (↓ 74.65%)
  • 29. Latest date: 2017-02-14 Project health: success = 53.18% Major degradation happened on: 2017-02-10 Reason: Outage in Quality Reason: Descending of Project Effectiveness Reason: Cumulating of tasks in Progress Real project
  • 30. • New communication tool for all levels of the company which is already in use on every day basis • For C-level provides understanding: • Of the department • Of each project in particular • For Project Manager it is an instrument: • For project organization and control • For the Client: • Fair presentation of the project work Benefits
  • 31. • Improve metrics for measuring project performance • Build even more intuitive dashboard • Introduce the model to our customers • Improve the reflection of the domain by fitting the model to data Future work
  • 32. Inspired by Technology. Driven by Value. eleks.com