A recommender system for component-based applications using machine learning techniques

Antonio Jesús Fernández-García, Luis Iribarne, Antonio Corral, Javier Criado, James Wang

Research output: Contribution to journalArticle

2 Citations (Scopus)

Abstract

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.

Original languageEnglish (US)
Pages (from-to)68-84
Number of pages17
JournalKnowledge-Based Systems
Volume164
DOIs
StatePublished - Jan 15 2019

Fingerprint

Recommender systems
Learning systems
Learning algorithms
Feature extraction
User interfaces
Machine learning
Experiments
Learning algorithm

All Science Journal Classification (ASJC) codes

  • Software
  • Management Information Systems
  • Information Systems and Management
  • Artificial Intelligence

Cite this

Fernández-García, Antonio Jesús ; Iribarne, Luis ; Corral, Antonio ; Criado, Javier ; Wang, James. / A recommender system for component-based applications using machine learning techniques. In: Knowledge-Based Systems. 2019 ; Vol. 164. pp. 68-84.
@article{7d54eb97be424de7960d6419f86bb697,
title = "A recommender system for component-based applications using machine learning techniques",
abstract = "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.",
author = "Fern{\'a}ndez-Garc{\'i}a, {Antonio Jes{\'u}s} and Luis Iribarne and Antonio Corral and Javier Criado and James Wang",
year = "2019",
month = "1",
day = "15",
doi = "10.1016/j.knosys.2018.10.019",
language = "English (US)",
volume = "164",
pages = "68--84",
journal = "Knowledge-Based Systems",
issn = "0950-7051",
publisher = "Elsevier",

}

A recommender system for component-based applications using machine learning techniques. / Fernández-García, Antonio Jesús; Iribarne, Luis; Corral, Antonio; Criado, Javier; Wang, James.

In: Knowledge-Based Systems, Vol. 164, 15.01.2019, p. 68-84.

Research output: Contribution to journalArticle

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

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

VL - 164

SP - 68

EP - 84

JO - Knowledge-Based Systems

JF - Knowledge-Based Systems

SN - 0950-7051

ER -