=Paper=
{{Paper
|id=None
|storemode=property
|title=A Cloud-based Architecture for an Affective Recommender System of Learning Resources
|pdfUrl=https://ceur-ws.org/Vol-945/paper9.pdf
|volume=Vol-945
|dblpUrl=https://dblp.org/rec/conf/ltec/LeonyPGK12
}}
==A Cloud-based Architecture for an Affective Recommender System of Learning Resources==
1st International Workshop on Cloud Education Environments (WCLOUD 2012) A cloud-based architecture for an affective recommender system of learning resources Derick Leony, Abelardo Pardo, Hugo A. Parada G., Carlos Delgado Kloos Department of Telematic Engineering Universidad Carlos III de Madrid Leganés, Madrid, Spain Email: {dleony, abel, hparada, cdk}@it.uc3m.es Abstract—One of the most common functionalities in cloud- recommender system, given the high level of computational based learning environments is the recommendation of learning power required by this kind of processing. resources. Many approaches have been proposed to deploy rec- The rest of the paper is structured as follows: section III ommender systems into an educational environment. Currently, there is an increasing interest in including affective information describes the proposal of a cloud-based architecture for into the process to generate the recommendations for the an affective recommender system of learning resources, learner. In this paper, we propose a cloud-based architecture Section IV provides the details of an implementation of for a system that recommends learning resources according to the architecture, and section V presents some points for the affective state of the learner. Furthermore, we provide the discussion. details of an implementation of the architecture along with a discussion on the advantages and disadvantages of the proposal. II. R ELATED WORKS Keywords-cloud educational environment; learning resource Most systems on the internet are currently supported recommendation; affective recommendation on cloud computing. This trend also is observed in the educational arena. The interest of researchers on cloud in I. I NTRODUCTION learning technologies has increased in last few years. In this An important characteristic of learning environments in section we present some of the most recent works regarding the cloud is the personalization of the environment according the application of cloud technology into the learning domain. to the learner needs, objectives and current situation. Thus, Cloud technologies are a set of easily accessible and virtu- the learning environment can adapt its interface, content, alized resources that can be dynamically adapted allowing an and capabilities according to personal characteristics of the optimum resource utilization [4]. A cloud technology allows learner: current learning objectives, learning achievements, users access onto different services on internet through skills, preferences and affective state. In addition, contextual diverse devices. It also provides service providers with sev- information is another input for personalization: current eral advantages, such as availability, integration of multiple location, time of the day and available technology. services, flexibility and scalability [5]. This makes cloud Recommender systems are among the instruments used technology an attractive option for deploying applications to provide learning environments with personalization. that require a high level of computational power. Hence Manouselis et al. [1] provide a review of the approaches cloud technology has taken into account to support services followed so far to implement and deploy recommender that offer educational resources to academic communities. systems in Technology Enhanced Learning (TEL). More re- In this sense, in [6] Mikroyannidis states that the cloud cently, some approaches are including affective information offers a lot of services for building adaptive and customis- of the learner, such as the case of the Semantic Affective able Cloud Learning Environments (CLE). He also explains Educational Recommender System proposed by Santos and how CLEs extend the borders of the learning environments Boticario [2]. beyond of educational organization. Additionally this work In this paper, we present an improvement of the archi- proposes a learning scenario based on the use of cloud tecture presented in [3] of the Learning Resource Affective learning services. Thus, to take advantage of these features Recommender (LRAR). The most relevant change for the educational institutions are also moving towards providing cloud context is the deployment of the recommending engine their services by using cloud technologies. However, in as an auto-scaling service, which allows to serve several the educational domain, services are scarcely adapted and clients with reasonable response time and performance. offered in cloud. Thus, the recommender engine is transformed into a recom- Several approaches of cloud architectures promote im- mending service based on cloud technologies. The migration provements to services in the e-learning area by using cloud to the cloud allows us to improve the scalability of the technologies. Thus, they try to overcome challenges faced 41 1st International Workshop on Cloud Education Environments (WCLOUD 2012) by educational institutions. In [7] Masud and Huang propose III. D ESCRIPTION OF THE ARCHITECTURE an e-learning cloud architecture to allow the migration The purpose of the proposed architecture is to deliver a of e-learning systems from schools to a cloud computing set of learning resources meta-data following a Software infrastructure. They describe an e-learning cloud architecture as a Service approach. The architecture is composed by made up of five layers: infrastructure, software resource, two layers: a service layer that executes the storage and resource management, service and application. This proposal recommendation tasks, and a client layer embedded in a describes a general architecture for e-learning; nevertheless learning environment. The details of each layer and their it does not focus on how to implement an e-learning service communication are described as follows. in a cloud architecture. A. Service layer As CLE appears as a set of available tools on the internet The service layer is in charge of receiving petitions that allows ubiquitous access to an academic community, it from several clients and doing the requested tasks. The is evident that the existing of Personal Learning Environ- available tasks are to update the affective information of ments in the cloud are in an early stage of its developing. a learner, to update the information of a learning resource, Currently the CLE has dealt in offering an environment and to recommend learning resources for a given learner. that allows students and teachers easy access to different The first two tasks represent an administration interface for tools for producing and consuming academic content. A the management of learners’ affective states and learner related work is also presented by Al-Zoube in [8], where resources. The third task is the main one in the service and he proposes a cloud computing based solution for building a also the one that consumes the most resources. virtual Personal Learning Environment (PLE). This proposal The service layer includes two storage elements to keep consists of allowing the learner access to different tools the information of the learning resources and the learners’ offered on internet such as iGoogle, Google docs, YouTube, affective states. The storage of learning resources only etc. however such as Stein et al. state in [9] public clouds includes their meta-data and not their content. This decision generally meet the common base of user requests, but they relies on the fact that the recommendation service is not may not be designed to meet educational needs. In addition, meant to act as a repository of learning resources but just today learners are demanding specialized learning services in as a referrer. The format of the database can be any usual order to improve the learning results. Hence, the educational specification such as Learning Object Meta-data (LOM), but domain requires design and deploy services in order to built this is decided by the implementation of the architecture. a true educational Cloud. The storage for learners’ affective state is updated by Following the above approach, in [10] Madan et al. requests from the client layer. The service is ready to create present a cloud-based learning service model. This proposal a new learner profile which consists of the learner identifier, describes comprehensively the cloud computing services current affective state and the record of the used resources as a key aspect of cloud computing model. The authors and the affective state presented when using those resources. focus on services and available models to be deployed into The format used to define the affective state is decided by cloud architecture. They claim that institutions should use the implementation of the architecture as well. The specifi- the existing cloud infrastructure offered by companies such cation EmotionML should be strongly considered because, Google, Amazon and others. Then educational institutions although still being a W3C Candidate Recommendation, it should focus on defining the cloud service layer to imple- allows flexible and complete definitions of affective states. ment it into the cloud architecture. Besides the storage elements, the service layer has a recommendation engine cluster. The engine is designed as a There is a known necessity of building a CLE based on cluster because the task to generate recommendations is the specialized services rather than the traditional tools found in most expensive in terms of computational resources, which PLEs. However as the necessities of learning resources and makes it the critical process to scale. The cluster contains as services for learners and teachers are variable, we must offer many instances of a recommending engine node as needed a service to adapt the PLE in the cloud according to these ne- to support the service demand at the moment. Each node cessities. In other words, CLE needs a recommender system is in charge of analyzing the resources, the affective states to fill this gap. Recommender systems have been extensively of a learner and generate assign a relevance score to each deployed, however few systems operate in the education resource not yet seen by the learner. arena [11]. Then in this work we propose a cloud-based The recommendation process within a node follows the architecture for a system to recommend learning resources method known as user-based collaborative filtering. In this according to the affective state of the learner. Thus learners approach, when a recommendation has to be done for a will be able to adapt their PLE and CLE. Additionally we given learner, it first finds a set of the learner’s neighbors, provide details of the architecture implementation of this learners with similar patterns of access to resources. The specialized service. level of similarity is to identify the neighbors of a learner 42 1st International Workshop on Cloud Education Environments (WCLOUD 2012) is defined by a similarity function. In the case of the recommendation engine. Figure 1, shows a diagram of the affective recommendation, the similarity of two learners is proposed architecture. The layers are displayed from bottom proportional to the amount of resources accessed by the to top. learners when indicating the same affective state. As the recommendations must take into account the af- fective state of the learner, the collaborative filtering process had to be extended to include that contextual information. The set of resources available for recommendation are a combination of the learning resources with the affective states. Thus, R=L×A where R is the set of recommendable resources, L is the complete set of resources meta-data and A is the complete set of affective states. The recommendable resources are a tuple of a resource and an affective state. After the learner’s neighborhood is defined, learning re- sources are sorted based on how relevant they have been within that neighborhood of users. The resulting list must be filtered because it contains recommended tuples (resource, affective state) and the affective state might be any stored one. Thus, the list of recommended resources are only those that appear in a tuple where the affective state is the same one the learner presents at the moment. B. Client layer In the presented architecture, the client layer is repre- sented by the learning environment that includes recommen- dations to provide adaptation. The inclusion of recommen- dations is done by an embedded element deployed within the learning environment. The embedded element communicates with the service layer to send and request information related to the recommendation based on affective states. Figure 1. Architecture of affective recommender system based on the cloud. The embedded element sends update information such as the learner identifier and any change of her affective state. The element also informs when a learner accesses a learning resource. Optionally, the embedded element can IV. E XPLANATION OF THE IMPLEMENTATION also be in charge of detecting the learning state of the learner The environment where we have implemented the af- and updates the affective state database. Other optional fective recommender service is Amazon Elastic Computing information to send is any action done by the learner; Cloud (EC2), which is part of Amazon Web Services (AWS). this allows to keep track of the learner actions for further EC2 allows us to define an image that acts as a blueprint analysis. to generate several instances of a computer with the same There can be two moments when the embedded element software configuration. Each one of these instances is what requests information from the service layer. First, when in the definition of the architecture we have called a node. accessing the learning environment the first time the client In our implementation, the storage element for learner requests the last known affective state and the last recom- resources meta-data is implemented as a database deployed mended resources. The second moment is right after the in the engine MySQL. The same database implements the affective status of the learner is updated. This is because learner affective state storage element. Since the data might a modification of the affective status implies a new set of be accessed from many nodes of the cluster, the database recommendations for the learner, so the embedded element engine is installed in an independent node, not meant to requests the list of recommended resources. After fetched, be part of the recommendation cluster. In order to manage the list is displayed showing the title and description of each the information stored in the database, the database node resource. Then, the learner is able to select a resource based implements a RESTful web services, while the technology on its description or on the relevance score given by the supporting the web application is J2EE. 43 1st International Workshop on Cloud Education Environments (WCLOUD 2012) The recommendation engine is developed on top of by the recommendation service. Currently, the list is based Apache Mahout machine learning engine. Mahout provides on the affective states used by D’Mello et al. in [14]; these a set of libraries to implement machine learning models such include frustrated, confused, bored, enthusiastic, motivated as collaborative filtering, recommender systems, clustering, and the normal state, meaning that there is no relevant pattern mining and classifiers. Mahout is implemented in affective state at the moment. Java and this allows a straightforward integration with a Resources tab also presents a list of learning resources web application developed with J2EE. As explained in [12], ordered by relevance for the learner in her current state. Mahout is conceived to be scalable through the framework Thus, once the learner submits a change on her affective for distributed processing Apache Hadoop, which allows the state, the widget send a recommendation request to the af- definition of clusters of computers with computational and fective recommender service. When the response is received, storage capabilities. the client analyzes the list of resources and embed their The algorithms for collaborative filtering use the information as the list of recommended resources. map/reduce paradigm. This paradigm consists in two pro- Second section is the Profile tab, where a time-line of cesses that can be parallelized and distributed among several the affective states reported by the learner is embedded. Its computers to increase their speed. The map process gen- objective is to provide the learner with a visualization of erates a sequence of pairs where usually the first element her emotional changes during the learning activity being is an entity identifier and the second element is an entity performed. The log of affective states is also provided by characteristic that will be needed in a further computation. the learning resource service. The reduce process receives the pairs generated by the Finally, the Settings tab allows the learner to set her map process and computes an incremental value associated learning objectives. These might be changed during the with the entity. For example, the first step to identify the learning activity, which also triggers a change of the learning neighbors of a learner is to identify the most frequent resources that are recommended. Figure 2 presents a screen occurrences of a pair (affective state, learner resource) for capture of the widget deployed in ROLE environment, with each user. In this case, the map process returns a pair with emphasis on the resources recommended to a frustrated the syntax (user identifier, (affective state, learner resource)). learner. Thus, the entity to identify is the user and the other item to include is the pair or affective state an resource. The reduce process receives the same pair and create an array for each received user. The elements of the array are complex structures with the syntax ((affective state, learner resource), count), so that by sorting the array in descendant order by the second element we obtain the top occurrences of pairs for the given learner. The advantage of using the map/reduce paradigm is that both process can be done in parallel and in several comput- ers. This allows the implementation to scale by just creating a new node with the same characteristics of a previous recommender node. Hadoop keeps control of the nodes that are available in the cluster to perform computational and storage tasks. Thus, we are provided with a simple way to auto-adjusting the size of the recommender cluster by just adding or removing nodes according to the service demand. For the implementation of the client layer element, a widget has been developed as a proof-of-concept of a tool that interacts with the affective recommender service. The widget has been developed using the Software Development Kit (SDK) provided by ROLE Project [13]. ROLE aims to provide the learner with a framework to build her Personal- ized Learning Environment. The widget is implemented in JavaScript and HTML, and it follows the OpenSocial Gadget Figure 2. Implementation of the resource visualizer in the ROLE PLE. specification. The widget interface has two functional sections repre- sented by the tabs. Resources, the main tab, allows the A use case that exemplifies the use of the widget is learner to state her affective state from a static list provided the following. Alice, a university student whose major is 44 1st International Workshop on Cloud Education Environments (WCLOUD 2012) Computer Science, is trying to complete a C programming such as the full name or email. Instead, the service can use a task that she was assigned as homework. She starts working hashed identifier of the learner and that would not interfere highly motivated on the initial details of the program and with the process of recommending learning resources. she reflects be selecting the Motivated option among the Future work consists on evaluating the performance of affective states available in the widget. The widget com- the implementation presented in the article. The evaluation municates the affective state to the recommender service objective is to analyze the improvement on the response and this returns a list of resources suitable for Alice, such time of a recommendation request to the server. Part of this as C programming references and the user’s manual of the work includes to analyze the correlation between the service compilation tool. Alice finds the resources helpful and uses performance and the amount of recommender nodes in the them to write her code more quickly. As Alice advances cluster; this would lead to a set of guidelines for deploying she realizes that the task is not as easy as she first thought the recommender service in a real learning scenario. and that she might even encounter some programming errors Another line of work consists in the development of that she was not expecting, this causes her affective state to plug-ins to include sensors as a method to populate the change. When she find that she cannot fix a compilation error affective state database. Specifically we are working with she starts feeling frustrated. Thus, she updates her affective sensors for galvanic skin response and the recognition of state to Frustrated. Again, the widget communicates the new face gestures through a video camera. These sensors have affective state to the recommender service, obtains the list of been proven to detect affective states with accuracy [15] and suitable resources and displays them as part of the widget thus might be improve the recommendation process. They content. The new list of recommended resources includes would also allow the learner to focus on the retrieval and basic programming concepts and common programming use of resources rather than constantly informing her current errors with their respective solutions (see Figure 2). Alice affective state. On the same track, it is also intended to accesses the resources and solves the error of her program. improve the interface for the learner to provide her affective After seeing that the widget helps her along the task, Alice state. Several approaches will be taken in order to obtain recovers her positive mood and continues her work to finish contextual information about what provoked a given emotion the homework. in the learner and how did the recommendation of resources affect her affective state. V. D ISCUSSION Throughout this paper we have pointed the advantages ACKNOWLEDGMENT of a cloud-based affective recommender system of learning Work partially funded by the EEE project, “Plan Nacional resources. We have emphasized that the main benefit of us- de I+D+I TIN2011-28308-C03-01”, the “Emadrid: Inves- ing cloud technologies to deploy an affective recommender tigación y desarrollo de tecnologı́as para el e-learning en system is the gain of scalability. Nevertheless, there are la Comunidad de Madrid” project (S2009/TIC-1650), and some issues that must be taken into account as possible “Consejo Social - Universidad Carlos III de Madrid”. disadvantages of the architecture such as approaches to caching and privacy issues. R EFERENCES The first issue is the difficulty to cache results in the presented architecture. Given that in a cloud recommen- [1] N. Manouselis, H. Drachsler, K. Verbert, and E. Duval, “Rec- dation service the computational workload is distributed ommender systems for learning,” SpringerBriefs in Computer among the nodes of the cluster, one node cannot cache Science, 2012. the recommendation calculate in another node. This issue [2] O. Santos and J. Boticario, “Affective issues in seman- can be addressed either at the client layer, where the client tic educational recommender systems,” in Proceedings of itself would be in charge of caching the information of the 2nd Workshop on Recommender Systems for Technol- the recommended resources. Another possible approach to ogy Enhanced Learning (RecSysTEL 2012). Manouselis, N., solve this issue is through the inclusion of a middle layer Draschler, H., Verber, K., and Santos, OC (Eds.). Published by CEUR Workshop Proceedings, 2012, pp. 71–82. that caches and dispatches the recommendations; this layer would be between the recommendation cluster and the [3] D. Leony, A. Pardo, H. A. Parada G., and C. Delgado Kloos, interface of the service. “A widget to recommend learning resources based on the Another concern is related to privacy issues, since the learner affective state,” in Proceedings of the 3rd Workshop on affective state of the learner is stored in a database accessible Motivational and Affective Aspects of Technology Enhanced from several recommender nodes. The key in this issue Learning (MATEL 2012)., In process. is that the recommending nodes are the only elements [4] L. M. Vaquero, L. Rodero-merino, J. Caceres, and M. Lind- with permission to access the affective state information. ner, “A Break in the Clouds: Towards a Cloud Definition,” Furthermore, the recommender service does not require to ACM SIGCOMM Computer Communication Review, vol. 39, store information that identifies the learner immediately, no. 1, pp. 50–55, 2009. 45 1st International Workshop on Cloud Education Environments (WCLOUD 2012) [5] N. Leavitt, “Is cloud computing really ready for prime time?” Computer, vol. 42, no. 1, pp. 15–20, jan 2009. [6] M. Alexander, “A Semantic framework for cloud learning en- vironments,” In: Chao, Lee ed. Cloud Computing for Teaching and Learning: Strategies and Implementation. Hershey, PA: IGI Global, pp. 17–31, Apr. 2012. [7] X. Huang, “An E-learning System Architecture based on Cloud Computing,” International Journal of Advanced Re- search in Computer Science and Software Engineering (IJARCSSE), vol. 2, pp. 74–78, 2012. [8] M. Al-zoube, “E-Learning on the Cloud,” International Arab Journal of e-Technology, vol. 1, no. 2, pp. 58–64, 2009. [9] S. Stein, J. Ware, J. Laboy, and H. E. Schaffer, “Im- proving K-12 pedagogy via a Cloud designed for edu- cation,” International Journal of Information Management, http://dx.doi.org/10.1016/j.ijinfomgt.2012.07.009 2012. [10] A. A. Deepanshu Madan, Suneet Kumar, “E-learning based on Cloud Computing,” International Journal of Advanced Research in Computer Science and Software Engineering (IJARCSSE), vol. 2, no. 2, 2012. [11] K. Verbert, N. Manouselis, X. Ochoa, M. Wolpers, H. Drach- sler, I. Bosnic, and E. Duval, “Context-aware Recommender Systems for Learning: a Survey and Future Challenges,” To appear in IEE Transactions on Learning Technologies, 2012. [12] S. Owen, R. Anil, T. Dunning, and E. Friedman, Mahout in action. Manning Publications Co., 2011. [13] R. Consortium, “ROLE Project,” http://www.role-project.eu/, 2009-2012, last visited September 2012. [14] S. D’Mello, A. Graesser, and R. Picard, “Toward an affect- sensitive autotutor,” Intelligent Systems, IEEE, vol. 22, no. 4, pp. 53–61, 2007. [15] R. Picard, Affective computing. The MIT Press, 2000. 46