Transfer Learning for Improving Model Predictions in Highly - - PowerPoint PPT Presentation

transfer learning for improving model predictions in
SMART_READER_LITE
LIVE PREVIEW

Transfer Learning for Improving Model Predictions in Highly - - PowerPoint PPT Presentation

Transfer Learning for Improving Model Predictions in Highly Configurable Software Pooyan Jamshidi, Miguel Velez , Christian Kstner, Norbert Siegmund, Prasad Kawthekar Highly Configurable Systems In Dynamic Environments [Credit to CMU


slide-1
SLIDE 1

Transfer Learning for Improving Model Predictions 
 in Highly Configurable Software

Pooyan Jamshidi, Miguel Velez, Christian Kästner, Norbert Siegmund, Prasad Kawthekar

slide-2
SLIDE 2
slide-3
SLIDE 3
slide-4
SLIDE 4

Highly Configurable Systems In Dynamic Environments

[Credit to CMU CoBot]

slide-5
SLIDE 5

Options Influence Performance

slide-6
SLIDE 6

Adapt to Different Environments

TurtleBot

slide-7
SLIDE 7

Adapt to Different Environments

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

slide-8
SLIDE 8

Adapt to Different Environments

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

slide-9
SLIDE 9

Classic Sensitivity Analysis

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

slide-10
SLIDE 10

Classic Sensitivity Analysis

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure

slide-11
SLIDE 11

Classic Sensitivity Analysis

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Learn

slide-12
SLIDE 12

Classic Sensitivity Analysis

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Learn

slide-13
SLIDE 13

Applications

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Learn

Optimization Adaptation + Reasoning + Debugging +

slide-14
SLIDE 14

Measuring Performance is Expensive

25 options × 10 values = 1025 configurations Measure

[Credit to Peng Hou]

slide-15
SLIDE 15

Transfer Learning

slide-16
SLIDE 16

Reuse Data From Similar System

TurtleBot

Measure

slide-17
SLIDE 17

Reuse Data From Similar System

TurtleBot

Measure

Simulator (Gazebo)

slide-18
SLIDE 18

Reuse Data From Similar System

TurtleBot

Measure Measure

Simulator (Gazebo)

slide-19
SLIDE 19

Reuse Data From Similar System

TurtleBot

Measure Reuse Measure

Simulator (Gazebo)

slide-20
SLIDE 20

Reuse Data From Similar System

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Reuse Measure

Learn with TL

Simulator (Gazebo)

slide-21
SLIDE 21

Reuse Data From Similar System

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Reuse Measure

Learn with TL

Simulator (Gazebo)

slide-22
SLIDE 22

Transfer Between Different Systems

slide-23
SLIDE 23

Transfer Between Different Systems

slide-24
SLIDE 24

Transfer Between Different Systems

slide-25
SLIDE 25

Transfer Between Different Systems

(0, 0) → (7, 12) (0, 0) → (0, 10)

slide-26
SLIDE 26

Exploiting Similarity

slide-27
SLIDE 27

Function Prediction

1 3 5 9 10 11 12 13 14 50 100 150 200 Target function Target samples

slide-28
SLIDE 28

Prediction without Transfer Learning

slide-29
SLIDE 29

Prediction with More Data but without Transfer Learning

slide-30
SLIDE 30

Prediction with Transfer Learning

slide-31
SLIDE 31

Technical Details

slide-32
SLIDE 32

Prediction With Transfer Learning

true function GP mean GP variance

  • bservation

selected point true minimum

Motivations:

  • 1. mean estimates + variance
  • 2. all computation are linear algebra
  • 3. good estimations with few data
slide-33
SLIDE 33

Prediction With Transfer Learning

true function GP mean GP variance

  • bservation

selected point true minimum

Motivations:

  • 1. mean estimates + variance
  • 2. all computation are linear algebra
  • 3. good estimations when few data

https://github.com/pooyanjamshidi/transferlearning

slide-34
SLIDE 34

Prediction With Transfer Learning

true function GP mean GP variance

  • bservation

selected point true minimum

Motivations:

  • 1. mean estimates + variance
  • 2. all computation are linear algebra
  • 3. good estimations when few data

https://github.com/pooyanjamshidi/transferlearning pjsamshid@cs.cmu.edu

slide-35
SLIDE 35

Evaluation

slide-36
SLIDE 36

RQ1: Improve prediction accuracy? RQ2: Tradeoffs among number of source and target samples? RQ3: Fast enough for self-adaptive systems?

Case Study and Controlled Experiments

slide-37
SLIDE 37

Autonomous service robot Environmental change 3 stream processing apps Workload change NoSQL DBMS Workload & hardware changes

Analyzed Systems

slide-38
SLIDE 38

Prediction Accuracy

slide-39
SLIDE 39

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Performance Prediction for CoBot

Source Model

slide-40
SLIDE 40

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Performance Prediction for CoBot

Source Model Target Model

slide-41
SLIDE 41

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Performance Prediction for CoBot

Source Model Target Model

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Prediction with 4 samples

CPU usage[%]

slide-42
SLIDE 42

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Performance Prediction for CoBot

Source Model Target Model

5 10 15 20 25 5 10 15 20 25 5 10 15 20 25

Prediction with 4 samples Prediction with TL

CPU usage[%] CPU usage[%]

slide-43
SLIDE 43

Number of Source and Target Samples

slide-44
SLIDE 44

Prediction Error with Different Source and Target Samples

% Source %Target

slide-45
SLIDE 45

Prediction Error with Different Source and Target Samples

% Source %Target

slide-46
SLIDE 46

Prediction Error with Different Source and Target Samples

% Source %Target

slide-47
SLIDE 47

Prediction Error with Different Source and Target Samples

% Source %Target

slide-48
SLIDE 48

Prediction Error with Different Source and Target Samples

% Source %Target

slide-49
SLIDE 49

Prediction Error with Different Source and Target Samples

% Source %Target

slide-50
SLIDE 50

Accuracy and Costs

% Source %Target B u d g e t

slide-51
SLIDE 51

Prediction error of other systems

slide-52
SLIDE 52

Applicable in Self-Adaptive Systems

slide-53
SLIDE 53

Low model training overhead Produces accurate models Models can improve at each adaptation cycle

Transfer Learning in Self-Adaptive Systems

slide-54
SLIDE 54

Future Work, Insights, and Ideas

slide-55
SLIDE 55

Selecting from Multiple Sources

Source Simulator Target Simulator Source Robot Target Robot (1) (2) (3) (4) (5)

C1 C2 C3

slide-56
SLIDE 56

Active Learning with Transfer Learning

50 + 3*C1 + 15*C2 - 7*C2 *C3 TurtleBot

Measure Reuse Measure

Learn with TL

Simulator (Gazebo)

Iteratively find best sample points that maximize knowledge

slide-57
SLIDE 57

Integrating Transfer Learning in MAPE-K

Contribute to Knowledge Assist in self-optimization Support online learning

slide-58
SLIDE 58

Summary

slide-59
SLIDE 59

Transfer Learning for Improving Model Prediction in Highly Configurable Software

Reuse data from similar system Improves model accuracy Applicable in self-adaptive systems

slide-60
SLIDE 60

Transfer Learning Improves Sampling