Automated Classification of Metamodel Repositories: A Machine Learning Approach

Manual classification methods of metamodel repositories require highly trained personnel and the results are usually influenced by the subjectivity of human perception. Therefore, automated metamodel classification is very desirable and stringent. In this work, Machine Learning techniques have been employed for metamodel automated classification. In particular, a tool implementing a feed-forward neural network is introduced to classify metamodels. An experimental evaluation over a dataset of 555 metamodels demonstrates that the technique permits to learn from manually classified data and effectively categorize incoming unlabeled data with a considerably high prediction rate: the best performance comprehends 95.40% as success rate, 0.945 as precision, 0.938 as recall, and 0.942 as F1 score.

[1]  Juan Manuel Cueva Lovelle,et al.  Towards a Standard-based Domain-specific Platform to Solve Machine Learning-based Problems , 2015, Int. J. Interact. Multim. Artif. Intell..

[2]  Juri Di Rocco,et al.  Automated Clustering of Metamodel Repositories , 2016, CAiSE.

[3]  Jörg Kindermann,et al.  Text Categorization with Support Vector Machines. How to Represent Texts in Input Space? , 2002, Machine Learning.

[4]  Michael J. A. Berry,et al.  Data mining techniques - for marketing, sales, and customer support , 1997, Wiley computer publishing.

[5]  Stéphane Ducasse,et al.  Enriching reverse engineering with semantic clustering , 2005, 12th Working Conference on Reverse Engineering (WCRE'05).

[6]  Ron Kohavi,et al.  A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection , 1995, IJCAI.

[7]  Yves Le Traon,et al.  The next evolution of MDE: a seamless integration of machine learning into domain modeling , 2017, 2017 ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems (MODELS).

[8]  Margaret M. Burnett,et al.  A Classification System for Visual Programming Languages , 1994, J. Vis. Lang. Comput..

[9]  Sylvain Arlot,et al.  A survey of cross-validation procedures for model selection , 2009, 0907.4728.

[10]  Anil K. Jain,et al.  Data clustering: a review , 1999, CSUR.

[11]  Massimiliano Di Penta,et al.  FOCUS: A Recommender System for Mining API Function Calls and Usage Patterns , 2019, 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE).

[12]  Miguel A. Laguna,et al.  Reuse based Analysis and Clustering of Requirements Diagrams , 2002 .

[13]  Paolo Bottoni,et al.  A Suite of Metamodels as a Basis for a Classification of Visual Languages , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[14]  I. Dimopoulos,et al.  Artificial neural networks as a classification method in the behavioural sciences , 1997, Behavioural Processes.

[15]  Yoshua Bengio,et al.  Practical Recommendations for Gradient-Based Training of Deep Architectures , 2012, Neural Networks: Tricks of the Trade.

[16]  Carlos D. Castillo,et al.  An All-In-One Convolutional Neural Network for Face Analysis , 2016, 2017 12th IEEE International Conference on Automatic Face & Gesture Recognition (FG 2017).

[17]  Mark van den Brand,et al.  Hierarchical Clustering of Metamodels for Comparative Analysis and Visualization , 2016, ECMFA.

[18]  Alfred Kobsa,et al.  The Adaptive Web, Methods and Strategies of Web Personalization , 2007, The Adaptive Web.

[19]  Raúl Rojas,et al.  Neural Networks - A Systematic Introduction , 1996 .

[20]  Adrian Rutle,et al.  Automatic model repair using reinforcement learning , 2018, MODELS Workshops.

[21]  Sébastien Gérard,et al.  Cognifying Model-Driven Software Engineering , 2017, STAF Workshops.

[22]  Kunle Olukotun,et al.  OptiML: An Implicitly Parallel Domain-Specific Language for Machine Learning , 2011, ICML.

[23]  Clémentine Nebut,et al.  Learning Transformation Rules from Transformation Examples: An Approach Based on Relational Concept Analysis , 2010, 2010 14th IEEE International Enterprise Distributed Object Computing Conference Workshops.

[24]  D. Spinellis,et al.  How is open source affecting software development? , 2004, IEEE Software.

[25]  S. Floyd,et al.  Adaptive Web , 1997 .

[26]  Juri Di Rocco,et al.  Collaborative Repositories in Model-Driven Engineering [Software Technology] , 2015, IEEE Software.

[27]  Dominic Breuker,et al.  Towards Model-Driven Engineering for Big Data Analytics -- An Exploratory Analysis of Domain-Specific Languages for Machine Learning , 2014, 2014 47th Hawaii International Conference on System Sciences.

[28]  Robert J. Kauffman,et al.  Supporting Search for Reusable Software Objects , 1996, IEEE Trans. Software Eng..

[29]  Martin Glinz,et al.  A Classification of Stereotypes for Object-Oriented Modeling Languages , 1999, UML.

[30]  Bin Tang,et al.  Document Representation and Dimension Reduction for Text Clustering , 2007, 2007 IEEE 23rd International Conference on Data Engineering Workshop.

[31]  Sotiris B. Kotsiantis,et al.  Supervised Machine Learning: A Review of Classification Techniques , 2007, Informatica.

[32]  Adam Blum,et al.  Neural Networks in C++: An Object-Oriented Framework for Building Connectionist Systems , 1992 .

[33]  Michael Y. Hu,et al.  Forecasting with artificial neural networks: The state of the art , 1997 .

[34]  Markus Völter,et al.  Model-Driven Software Development: Technology, Engineering, Management , 2006 .

[35]  Janez Bester,et al.  Introduction to the Artificial Neural Networks , 2011 .

[36]  Gabriele Taentzer,et al.  Tool support for clustering large meta-models , 2013, BigMDE '13.

[37]  eon BottouAT Stochastic Gradient Learning in Neural Networks , 2022 .

[38]  Zhiyi Ma,et al.  On the Classification of UML's Meta Model Extension Mechanism , 2004, UML.

[39]  M. F. Augusteijn,et al.  Neural network classification and novelty detection , 2002 .

[40]  Stephan Günnemann,et al.  ThingML+: Augmenting Model-Driven Software Engineering for the Internet of Things with Machine Learning , 2020, MoDELS.

[41]  Alessandro Bozzon,et al.  Textual and Content-Based Search in Repositories of Web Application Models , 2014, TWEB.

[42]  Pavel Berkhin,et al.  A Survey of Clustering Data Mining Techniques , 2006, Grouping Multidimensional Data.

[43]  Paulo S. C. Alencar,et al.  The use of machine learning algorithms in recommender systems: A systematic review , 2015, Expert Syst. Appl..

[44]  Ryen W. White,et al.  Probabilistic models for personalizing web search , 2012, WSDM '12.

[45]  Jonas Helming,et al.  EMFStore: a model repository for EMF models , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[46]  William B. Frakes Term Conflation for Information Retrieval , 1984, SIGIR.

[47]  Douglas C. Schmidt,et al.  Guest Editor's Introduction: Model-Driven Engineering , 2006, Computer.

[48]  Michael Wagner,et al.  Model-Driven Tool Integration with ModelBus , 2016 .

[49]  Daniel Svozil,et al.  Introduction to multi-layer feed-forward neural networks , 1997 .

[50]  L. R. Dice Measures of the Amount of Ecologic Association Between Species , 1945 .

[51]  Charu C. Aggarwal,et al.  Neural Networks and Deep Learning , 2018, Springer International Publishing.

[52]  Pedro M. Domingos A few useful things to know about machine learning , 2012, Commun. ACM.

[53]  Heekuck Oh,et al.  Neural Networks for Pattern Recognition , 1993, Adv. Comput..

[54]  Michel R. V. Chaudron,et al.  Online Img2UML Repository: An Online Repository for UML Models , 2013, EESSMod@MoDELS.

[55]  Jack Stilgoe,et al.  Machine learning, social learning and the governance of self-driving cars , 2017, Social studies of science.