TY - JOUR
T1 - A recommender system for component-based applications using machine learning techniques
AU - Fernández-García, Antonio Jesús
AU - Iribarne, Luis
AU - Corral, Antonio
AU - Criado, Javier
AU - Wang, James Z.
N1 - Funding Information:
This work has been funded by the EU ERDF, Spain and the Spanish Government under AEI Projects TIN2013-41576-R and TIN2017-83964-R . A.J. Fernández-García has been funded by a FPI, United States Grant BES-2014-067974 . J.Z. Wang was funded in part by the US National Science Foundation under Grant No. 1027854 .
Funding Information:
This work has been funded by the EU ERDF, Spain and the Spanish Government under AEI Projects TIN2013-41576-R and TIN2017-83964-R. A.J. Fernández-García has been funded by a FPI, United States Grant BES-2014-067974. J.Z. Wang was funded in part by the US National Science Foundation under Grant No. 1027854.
Publisher Copyright:
© 2018 Elsevier B.V.
PY - 2019/1/15
Y1 - 2019/1/15
N2 - Software designers are striving to create software that adapts to their users’ requirements. To this end, the development of component-based interfaces that users can compound and customize according to their needs is increasing. However, the success of these applications is highly dependent on the users’ ability to locate the components useful for them, because there are often too many to choose from. We propose an approach to address the problem of suggesting the most suitable components for each user at each moment, by creating a recommender system using intelligent data analysis methods. Once we have gathered the interaction data and built a dataset, we address the problem of transforming an original dataset from a real component-based application to an optimized dataset to apply machine learning algorithms through the application of feature engineering techniques and feature selection methods. Moreover, many aspects, such as contextual information, the use of the application across several devices with many forms of interaction, or the passage of time (components are added or removed over time), are taken into consideration. Once the dataset is optimized, several machine learning algorithms are applied to create recommendation systems. A series of experiments that create recommendation models are conducted applying several machine learning algorithms to the optimized dataset (before and after applying feature selection methods) to determine which recommender model obtains a higher accuracy. Thus, through the deployment of the recommendation system that has better results, the likelihood of success of a component-based application is increased by allowing users to find the most suitable components for them, enhancing their user experience and the application engagement.
AB - Software designers are striving to create software that adapts to their users’ requirements. To this end, the development of component-based interfaces that users can compound and customize according to their needs is increasing. However, the success of these applications is highly dependent on the users’ ability to locate the components useful for them, because there are often too many to choose from. We propose an approach to address the problem of suggesting the most suitable components for each user at each moment, by creating a recommender system using intelligent data analysis methods. Once we have gathered the interaction data and built a dataset, we address the problem of transforming an original dataset from a real component-based application to an optimized dataset to apply machine learning algorithms through the application of feature engineering techniques and feature selection methods. Moreover, many aspects, such as contextual information, the use of the application across several devices with many forms of interaction, or the passage of time (components are added or removed over time), are taken into consideration. Once the dataset is optimized, several machine learning algorithms are applied to create recommendation systems. A series of experiments that create recommendation models are conducted applying several machine learning algorithms to the optimized dataset (before and after applying feature selection methods) to determine which recommender model obtains a higher accuracy. Thus, through the deployment of the recommendation system that has better results, the likelihood of success of a component-based application is increased by allowing users to find the most suitable components for them, enhancing their user experience and the application engagement.
UR - http://www.scopus.com/inward/record.url?scp=85056659886&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85056659886&partnerID=8YFLogxK
U2 - 10.1016/j.knosys.2018.10.019
DO - 10.1016/j.knosys.2018.10.019
M3 - Article
AN - SCOPUS:85056659886
SN - 0950-7051
VL - 164
SP - 68
EP - 84
JO - Knowledge-Based Systems
JF - Knowledge-Based Systems
ER -