transfer learning for improving model predictions in
play

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


  1. Transfer Learning for Improving Model Predictions 
 in Highly Configurable Software Pooyan Jamshidi, Miguel Velez , Christian Kästner, Norbert Siegmund, Prasad Kawthekar

  2. Highly Configurable Systems In Dynamic Environments [Credit to CMU CoBot]

  3. Options Influence Performance

  4. Adapt to Different Environments TurtleBot

  5. Adapt to Different Environments TurtleBot 50 + 3*C1 + 15*C2 - 7*C2 *C3

  6. Adapt to Different Environments TurtleBot 50 + 3*C1 + 15*C2 - 7*C2 *C3

  7. Classic Sensitivity Analysis TurtleBot 50 + 3*C1 + 15*C2 - 7*C2 *C3

  8. Classic Sensitivity Analysis TurtleBot Measure 50 + 3*C1 + 15*C2 - 7*C2 *C3

  9. Classic Sensitivity Analysis TurtleBot Measure Learn 50 + 3*C1 + 15*C2 - 7*C2 *C3

  10. Classic Sensitivity Analysis TurtleBot Measure Learn 50 + 3*C1 + 15*C2 - 7*C2 *C3

  11. Applications TurtleBot Optimization Adaptation + Reasoning + Debugging + Measure Learn 50 + 3*C1 + 15*C2 - 7*C2 *C3

  12. Measuring Performance is Expensive 25 options × 10 values = 10 25 configurations Measure [Credit to Peng Hou]

  13. Transfer Learning

  14. Reuse Data From Similar System TurtleBot Measure

  15. Reuse Data From Similar System TurtleBot Measure Simulator (Gazebo)

  16. Reuse Data From Similar System TurtleBot Measure Simulator (Gazebo) Measure

  17. Reuse Data From Similar System TurtleBot Measure Reuse Simulator (Gazebo) Measure

  18. Reuse Data From Similar System TurtleBot Measure Learn Reuse 50 + 3*C1 + 15*C2 - 7*C2 *C3 with TL Simulator (Gazebo) Measure

  19. Reuse Data From Similar System TurtleBot Measure Learn Reuse 50 + 3*C1 + 15*C2 - 7*C2 *C3 with TL Simulator (Gazebo) Measure

  20. Transfer Between Different Systems

  21. Transfer Between Different Systems

  22. Transfer Between Different Systems

  23. Transfer Between Different Systems (0, 0) → (0, 10) (0, 0) → (7, 12)

  24. Exploiting Similarity

  25. Function Prediction Target function 200 Target samples 150 100 50 0 1 3 5 9 10 11 12 13 14

  26. Prediction without Transfer Learning

  27. Prediction with More Data but without Transfer Learning

  28. Prediction with Transfer Learning

  29. Technical Details

  30. Prediction With Transfer Learning true function GP variance GP mean observation Motivations: 1. mean estimates + variance 2. all computation are linear algebra 3. good estimations with few data selected point true minimum

  31. Prediction With Transfer Learning true function GP variance GP mean observation Motivations: 1. mean estimates + variance 2. all computation are linear algebra 3. good estimations when few data selected point true minimum https://github.com/pooyanjamshidi/transferlearning

  32. Prediction With Transfer Learning true function GP variance GP mean observation Motivations: 1. mean estimates + variance 2. all computation are linear algebra 3. good estimations when few data selected point true minimum https://github.com/pooyanjamshidi/transferlearning pjsamshid@cs.cmu.edu

  33. Evaluation

  34. Case Study and Controlled Experiments RQ1: Improve prediction accuracy? RQ2: Tradeoffs among number of source and target samples? RQ3: Fast enough for self-adaptive systems?

  35. Analyzed Systems Autonomous service robot Environmental change 3 stream processing apps Workload change NoSQL DBMS Workload & hardware changes

  36. Prediction Accuracy

  37. Performance Prediction for CoBot 25 25 20 Source 20 Model 15 15 10 10 5 5 0 5 10 15 20 25

  38. Performance Prediction for CoBot 25 25 25 25 Source Target 20 20 20 20 Model Model 15 15 15 15 10 10 10 10 5 5 5 5 0 0 5 10 15 20 25 5 10 15 20 25

  39. Performance Prediction for CoBot 25 25 25 25 Source Target 20 20 20 20 Model Model 15 15 15 15 10 10 10 10 5 5 5 5 0 0 5 10 15 20 25 5 10 15 20 25 25 CPU usage[%] 25 Prediction 20 20 with 4 samples 15 15 10 10 5 5 0 5 10 15 20 25

  40. Performance Prediction for CoBot 25 25 25 25 Source Target 20 20 20 20 Model Model 15 15 15 15 10 10 10 10 5 5 5 5 0 0 5 10 15 20 25 5 10 15 20 25 25 25 CPU usage[%] CPU usage[%] 25 25 Prediction Prediction 20 20 20 20 with 4 samples with TL 15 15 15 15 10 10 10 10 5 5 5 5 0 0 5 10 15 20 25 5 10 15 20 25

  41. Number of Source and Target Samples

  42. Prediction Error with Different Source and Target Samples % Source %Target

  43. Prediction Error with Different Source and Target Samples % Source %Target

  44. Prediction Error with Different Source and Target Samples % Source %Target

  45. Prediction Error with Different Source and Target Samples % Source %Target

  46. Prediction Error with Different Source and Target Samples % Source %Target

  47. Prediction Error with Different Source and Target Samples % Source %Target

  48. Accuracy and Costs % Source B u d g e t %Target

  49. Prediction error of other systems

  50. Applicable in Self-Adaptive Systems

  51. Transfer Learning in Self-Adaptive Systems Low model training overhead Produces accurate models Models can improve at each adaptation cycle

  52. Future Work, Insights, and Ideas

  53. Selecting from Multiple Sources C1 (1) Source Robot (4) Target Robot C2 (5) (2) C3 (3) Target Simulator Source Simulator

  54. Active Learning with Transfer Learning TurtleBot Iteratively find best sample points that maximize knowledge Measure Learn Reuse 50 + 3*C1 + 15*C2 - 7*C2 *C3 with TL Simulator (Gazebo) Measure

  55. Integrating Transfer Learning in MAPE-K Contribute to Knowledge Assist in self-optimization Support online learning

  56. Summary

  57. Transfer Learning for Improving Model Prediction in Highly Configurable Software Reuse data from similar system Improves model accuracy Applicable in self-adaptive systems

  58. Transfer Learning Improves Sampling

Recommend


More recommend