# Recommendation System Using Autoencoders
## 1 Introduction  
The past few years have been decisive for the foundation of a new global era, being especially notorious the impact of a diverse set of forces and trends associated with the acceleration of scientific and technological discoveries in the field of information. The flourishing of the Information Age promotes the momentum of the Internet of Things (IoT), which entails an environment pervaded by vast amounts of intelligent devices capable of sensing, capturing, computing and operating the real world [1]. Everyday, these devices generate continuous streams of real-time data. The magnitude of the daily explosion of data has led to the emergence of the Big Data paradigm. There is therefore a large amount of data being produced and disseminated throughout the world on a daily basis. Although this vast amount of data may appear to be meaningful in decision-making processes, in reality, people are overwhelmed by this continuous flow of data [2, 3]. With the evolution of technology and the exponential growth of information available, the population is starting to struggle to find what they need or prefer. The value of data is not immediate, and it must travel a long way before it reaches its highest purpose, gaining incremental value as it goes. The data flow is characterized by a variety of steps required to transform low-value inputs, the raw data, into high-value outputs, actionable information and useful insights. Manually processing existing data is tedious, inefficient, and often leads to errors. In addition, it is difficult to classify, filter and then recommend from such a huge set of data. A more efficient approach is to automatically process user's opinions, features, and other related data in orderto predict a new set of related products. Recommendation systems have appeared as a solution to this problem and have been receiving a great deal of attention and use from the scientific community in recent years. Recommender systems are information search and filtering tools that help users to discover relevant items and to make better choices while searching for products or services such as movies, books, vacations, or electronic products. The fundamental goal of a recommender system is to reduce the information overload and to provide personalized suggestions that can assist the users in the decision-making process [4; 5]. Figure 1 shows the generic operation behind the recommendation systems in a simplified way. However, these systems usually face certain limitations and challenges due to the increasing demand of high-quality personalization and recommendation [4; 6]. Recommendation systems have become a valuable asset regardless of the application domain. Nowadays, Internet users turn to the _WorldWideWeb_ for help in the planning and selection of many everyday tasks, whether it is what music to listen to (Spotify), what consumer products to purchase (Amazon, AliExpress), what movies to watch (Netflix) and so on. Furthermore, social networks such as LinkedIn, YouTube and Facebook have also included recommendation technologies to suggest groups to join, people to follow, videos to watch or posts to like [7]. Although the origins of recommender systems can be traced back to the extensive work in cognitive science [8], approximation theory [9], information retrieval [10], forecasting theories [11], and also have bonds to management science [12] and to consumer choice modeling in marketing [13], recommender systems emerged as an independent research area in the mid-1990s when investigators started focusing on recommendation problems that explicitly rely on the rating structure. In its most basic formulation, the recommendation problem is reduced to the difficulty of determining ratings for items that have not been seen by the user. Generally, this estimation is based on the ratings given by the user to other items and on some other knowledge.