Moderna mjukvarusystem byggs för att användas i dynamiska miljöer med hjälp av konfigurationsmöjligheter för att anpassa sig till förändringar och externa osäkerheter. I ett självanpassningssammanhang är vi ofta intresserade av att resonera om systemens prestanda under olika konfigurationer. Vanligtvis lär vi oss en svart-box modell baserad på verkliga mätningar för att förutsäga systemets prestanda med tanke på en specifik konfiguration. Men när moderna system blir mer komplexa finns det många konfigurationsparametrar som kan interagera och vi till slut lär oss ett exponentiellt stort konfigurationsutrymme. Detta skalas naturligtvis inte när man förlitar sig på verkliga mätningar i den faktiska föränderliga miljön. Vi föreslår en annan lösning: I stället för att ta mätningarna från det verkliga systemet lär vi oss modellen med hjälp av prover från andra källor, såsom simulatorer som ungefär motsvarar det verkliga systemets prestanda till låg kostnad. Vi definierar en kostnadsmodell som omvandlar den traditionella synen på modellinlärning till ett multiobjektivt problem som inte bara tar hänsyn till modellnoggrannheten utan också mäter ansträngningen. Vi utvärderar vår kostnadsmedvetna överföringslösning med hjälp av verklig konfigurerbar programvara inklusive (i) ett robotsystem, (ii) 3 olika stream processing applikationer, och (iii) ett NoSQL databassystem. De experimentella resultaten visar att vårt tillvägagångssätt kan uppnå (a) en hög förutsägelsenoggrannhet, samt (b) en hög modelltillförlitlighet.
Syftet är att förbättra inlärningsprocessen, Jamshidi et al. REF definierar en kostnadsmodell som omvandlar den traditionella synen på modellinlärning till ett multiobjektivt problem, med beaktande av modellens noggrannhet och mätinsatser.
Transfer Learning for Improving Model Predictions in Highly Configurable Software
{'venue': '2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS)', 'journal': '2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS)', 'mag_field_of_study': ['Computer Science']}