Computer Science and Engineering Theory and Applications Coll. - Read The Ebook Online or Download It To Own The Complete Version
Computer Science and Engineering Theory and Applications Coll. - Read The Ebook Online or Download It To Own The Complete Version
com
https://textbookfull.com/product/computer-science-and-
engineering-theory-and-applications-coll/
OR CLICK HERE
DOWLOAD EBOOK
https://textbookfull.com/product/algebra-topology-differential-
calculus-and-optimization-theory-for-computer-science-and-engineering-
jean-gallier/
textbookfull.com
https://textbookfull.com/product/transactions-on-engineering-
technologies-world-congress-on-engineering-and-computer-
science-2015-amouzegar/
textbookfull.com
https://textbookfull.com/product/probability-and-statistics-with-
reliability-queueing-and-computer-science-applications-trivedi/
textbookfull.com
https://textbookfull.com/product/advances-in-computer-science-for-
engineering-and-education-ii-zhengbing-hu/
textbookfull.com
https://textbookfull.com/product/advances-in-computer-science-for-
engineering-and-education-iii-zhengbing-hu/
textbookfull.com
Mauricio A. Sanchez
Leocundo Aguilar
Manuel Castañón-Puga
Antonio Rodríguez-Díaz Editors
Computer
Science and
Engineering—
Theory and
Applications
Studies in Systems, Decision and Control
Volume 143
Series editor
Janusz Kacprzyk, Polish Academy of Sciences, Warsaw, Poland
e-mail: [email protected]
The series “Studies in Systems, Decision and Control” (SSDC) covers both new
developments and advances, as well as the state of the art, in the various areas of
broadly perceived systems, decision making and control- quickly, up to date and
with a high quality. The intent is to cover the theory, applications, and perspectives
on the state of the art and future developments relevant to systems, decision
making, control, complex processes and related areas, as embedded in the fields of
engineering, computer science, physics, economics, social and life sciences, as well
as the paradigms and methodologies behind them. The series contains monographs,
textbooks, lecture notes and edited volumes in systems, decision making and
control spanning the areas of Cyber-Physical Systems, Autonomous Systems,
Sensor Networks, Control Systems, Energy Systems, Automotive Systems,
Biological Systems, Vehicular Networking and Connected Vehicles, Aerospace
Systems, Automation, Manufacturing, Smart Grids, Nonlinear Systems, Power
Systems, Robotics, Social Systems, Economic Systems and other. Of particular
value to both the contributors and the readership are the short publication timeframe
and the world-wide distribution and exposure which enable both a wide and rapid
dissemination of research output.
Editors
Computer Science
and Engineering—Theory
and Applications
123
Editors
Mauricio A. Sanchez Manuel Castañón-Puga
Calzada Universidad Calzada Universidad
Tijuana, Baja California Tijuana, Baja California
Mexico Mexico
This Springer imprint is published by the registered company Springer International Publishing AG part
of Springer Nature
The registered company address is: Gewerbestrasse 11, 6330 Cham, Switzerland
Preface
The fields of computer science and computer engineering are rich within them-
selves such that they are comprised of a vast amount of areas, such that most books
decide to better separate their contents into specialized areas, ignoring the rest
of their field. But this book takes on a different point of view when compared to
most of existing literature, that is, to collect from different areas within these two
fields to demonstrate the great variety which exists, where by harboring different
contributed research chapters in a single book, instead of granular specialized areas,
the concept of the complete fields is once again grasped.
As computer science and computer engineering are two different fields, they
have more in common than differences; therefore, the objective of this book is to
convey their involvement in society by showing advances in theoretical practices,
new uses for existing concepts, and applications.
This book is intended as a reference for pre-graduate students who wish to know
more about advances in the fields of computer science and computer engineering, or
acquire ideas as to what types of areas can be researched, exploited, or applied; for
graduate students and researchers, who might need to know the current state of
included contributed research, as well as acquire ideas for their own research; and
for professionals, who would want to know the current state of their fields, get ideas
to solve problems at their workplace, or simply to get a sense of direction as to
where these fields are going.
The contents of this book traverse various areas in the fields of computer
science and computer engineering, such as software engineering, computational
intelligence, artificial intelligence, complex systems, systems, engineering, and
embedded systems.
v
vi Preface
Provided diversity in the contents of this book is the strength between its covers,
we hope that readers enjoy our book and find some utility within its covers. And
that they start seeing that the fields of computer science and computer engineering
can also be seen as complete and diverse fields, instead of only parts of them.
vii
viii Contents
1 Introduction
CARS are based on the idea that similar user in similar context will like similar
items, and that the user preferences for certain item change according to the con-
textual situation [4].
In the beginning, the research in CARS is leaned toward the development of
new, and optimizing the existing algorithms to support contextual information and
to generate better recommendation by improving the accuracy [5].
In recent years, researchers have become more aware of the fact that effective-
ness of recommender systems goes beyond recommendation accuracy. Thus,
research in the context and human factors has gained increased interest [6] as a
potential opportunity to increase the user satisfaction with the recommendation
results.
Despite the strong tie between the recommendation algorithms and the data
about user and context factors, both elements have been treated as separated
research problems. Because of this separation, to implement a CARS nowadays,
software developers, and architects must divide their efforts into 2 topics: (i) The
recommendation system topic to choose and implement the best algorithm for their
CARS domain; (ii) The second topic that also requires a significant amount of effort
is the user modeling. In the first topic, according to [7], the implementation of
recommendation algorithms can be a complicated task, especially for developers
who are not experts in the field [5]. As for the second topic, software architects need
to come up with a data model that is capable of holding all the needed information
for the algorithms to work, if the model designer has no experience with CARS
over what aspects to model for better recommendations, this can result in an
incomplete and overspecialized model [8], that can limit the functionality of the
recommendation algorithms.
A software framework to support the development of advanced, complex con-
textual recommender systems should provide the developer both main elements of a
CARS, implemented algorithms from different recommendation techniques so
developer can select the one that better work for CARS item domains (e.g. songs,
movies, etc.) [9], as well a data model structure generic enough to work with most
CARS domains and give developers the option to adapt it to suit the specific need
of the project. Such a framework is, to the best of our knowledge, currently no
available. Even when some framework and libraries proposals exist to help in the
creation of contextual recommender systems, they are focused on either modeling
the user and context information [10] and do not include recommendation features,
or focus only in the algorithms for recommendation (like Hybreed [5]) and don’t
considered modeling the user and context information and rely on the information
being in a dataset file, which is not practical for a real-world applications.
In this paper, we introduce MoRe (Modeling and Recommendation framework),
a software framework designed to support the creation of CARS by proving
developers a set of state of the art contextual algorithms, and a generic user model
capable of structure and manage the information required by the CARS. We con-
sider MoRe to be a comprehensive framework, as in a single proposal, provides
means to solve both main problems developers encounter when implementing
CARS (i.e. data modeling and recommendation algorithms). MoRe provide
A Comprehensive Context-Aware Recommender System Framework 3
developers object-oriented classes and methods they can use to store, retrieve and
perform recommendation over the user, context and item data.
MoRe aims at serving as a tool for new CARS development, helping developers
in the algorithm implementation by providing ready to work algorithms from main
recommendation techniques for multidimensional data (transformation and adap-
tation). MoRe also helps in the creation of the data architecture by proving an
extensive class architecture capable of organizing, persisting and retrieving data
about the user, context, and items for most popular recommendation domains, like
movie, song, hotels, restaurants, and travel recommendation among others. For the
data structure, uses GUMORS, a General User Model for Recommender System
presented in our previous work [11].
The rest of this document is organized as follows: Sect. 2 describes the back-
ground and related work, Sect. 3 describes the MoRe framework, Sect. 4 present
some evaluation performed, and Sect. 5 present conclusion and future work.
Certainly, based on this definition of context, the user plays an important role,
the context of a user can include any information that describes his situation, like
his location and time, emotional, mental and physiological information, etc. The
amount and type of information to include in the contextualization of the user
depends on the system and the purpose of such information.
A system is considered to be context-aware if it can express aspects of the
environment and subsequently uses such information to adapt its functionality to
the context of use [14]. Therefore, context-awareness refers to the capability of an
application being aware of its physical environment or situation and responding
proactively and intelligently based on such awareness.
Context-aware systems aim at somehow gathering (through sensing, inferring or
directly asking for) human and environmental phenomena for later assisting users to
archive a desirable quality of living standards [15].
From an informational perspective, context provides information that systems
can use to form a contextual space, which virtually represents the situation of the
user [16].
From a software infrastructural perspective, context provides computing devices
with information about its environment as provided by other parts or modules of the
system (sensing module for example). As a consequence, different ‘types’ or ‘di-
mensions’ of context emerge, e.g. physical and computation dimensions.
There are several techniques that will allow a developer to represent the contextual
information inside a computational system, thus to be used in a CARS. Works like
[17–19] present extensive surveys on the difference of each technique. Next, we
describe and discuss the most commonly used representation techniques at
high-level, and present the main advantages and disadvantages of each one.
• Key-Value models. These models use pairs of a key and value to enumerate
attributes (key) and their values to describe the contextual and user information.
These models are the simplest data structure and are easy to manage, especially
when they have a small amount of data. However, key-value modeling is not
scalable and not suitable to represent complex data models [19]. This technique
is best suited to represent and store temporary information, therefore is
increasingly less used in recent contextual and user models.
• Markup scheme models. These models use a hierarchical data structure formed
by markup tags with attributes and content. To represent the user and context
aspect, markup models use a set of symbols and annotations inserted in a text
document that controls the structure, formatting, and relations among annota-
tions [20]. As markup languages do not provide advanced expressive capabil-
ities, reasoning over the data they represent is hard. Further, retrieval,
interoperability, and re-usability of the data over different models can be diffi-
cult, specifically if such models use different markup schemes [17].
A Comprehensive Context-Aware Recommender System Framework 5
implementation of these type of systems and compares how each of the presented
proposals relates to MoRe.
MyMediaLite [24] is a recommendation library implemented in C# and aimed
towards recommending items based on collaborative filtering recommendation
technique. Even when MyMediaLite was designed to work in traditional (2D)
recommendations, it has been used by [25] as a base-line recommender in
context-aware recommendation. MyMediaLite is similar to our proposal in the fact
that both provide the feature of 2D collaborative-filtering algorithms, but MoRe
goes far beyond providing nD recommendation algorithms.
Hybreed [5] is a Java-based recommendation framework designed specifically to
help developers in the creation CARS. Hybreed focuses on the integration of
external context to recommendation systems and the hybrid combination of dif-
ferent basic recommendation methods. A notable feature of Hybreed is its dynamic
contextualization approach that creates an in-memory temporal model of the user
containing his current situation. Hybreed and MoRe had in common the feature of
proving developers working ready algorithms to generate contextual prediction
based on filtering techniques. But unlike More, Hybreed do not provide recom-
mendation algorithms based on the context-modeling technique. In addition,
Hybreed stands behind in the data modeling technique, as it uses a limited
Key-Value pair, while MoRe uses a context-aware user model.
ConRec [1] is a context-aware recommendation framework focus on serving as a
tool for developers when implementing CARS, ConRec mainly focuses on a
temporal dynamic representation of context, which can automatically aggregate
different contextual features into a single one, so it can be easier for algorithms to
process. ConRec includes its own multi-dimensional recommendation algorithms
that works as an extension to Apache Mahout. This proposal does not describe how
user or context factors are considered into the framework, nor how they are stored.
Compared to MoRe, ConRec includes only one algorithm, that is not supported by
other literature, while MoRe contains implementation for various algorithms that
are well supported by previous research. Also, MoRe present an clear and
well-structured manner of managing the data, while ConRec only mentions that
uses it a user, item, rate and context format, and no information in how to take such
approach to implementation is described.
CoGrec [26] is a theoretical recommendation framework designed to gather
latent features of a group of users based on their social networks then uses such
gathered information to predict items that better suit the preferences of all the
individuals in the group. This proposal is described theoretical, and even when
some evaluation results are presented, no implementations details were given.
CoGrec differs from MoRe, on being a group-based recommendation only, while
MoRe is flexible in the target user(s). Also, MoRe is closer to implementation
providing a working-ready framework.
In [27] a context-aware architecture for mobile recommendation systems are
proposed. The architecture is designed to be generic enough to work in any CARS
domain, and focus on supporting the mobility of CARS, and the communication
between the mobile device and the server where the recommendation take place.
A Comprehensive Context-Aware Recommender System Framework 7
Based on related literature presented above, an in the work of [5, 15, 29, 30], this
section describes a series of high-level functional requirements any software
framework aimed to facilitate the creation of context-aware recommender systems
should fulfill.
First of all, such a framework should include recommendation algorithms from
the most relevant contextual recommendation techniques, which developers can set
up with a few lines of code, and be able to obtain the list of recommended items.
These algorithms should cover the main techniques existing nowadays, which
according to Adomavicius [31] are Contextual Filtering and Contextual Modeling.
To support contextual modeling recommendation, the framework should include
multi-dimensional recommendation algorithms, and to support contextual filtering,
traditional recommendation algorithms are needed as well. Apart from the imple-
mented and ready to work algorithms, the framework should support the integration
of custom techniques and new algorithms.
With regard to the data needed by CARS, the modeling of contextual infor-
mation has been treated separately from the recommendation functions, and none of
the currently existing frameworks support the management of the CARS data in the
same proposal as contextual recommendation algorithms. Therefore, a compre-
hensive contextual recommendation framework should provide a baseline data
structure that supports the data about the users of the system, their context, the items
that the CARS will recommend, and the relations among the different aspects. In
8 S. Inzunza and R. Juárez-Ramírez
this aspect, diversity has a great importance [6], as the framework should support
CARS from different items domains, i.e. the framework should be able to recom-
mend movies, as well as restaurants or pets.
Besides this specific requirements, a framework targeting developers should
meet general software engineering requirements, for example, the set of guidelines
for software architecture proposed by Microsoft Application Architecture Guide
[32]. Such a framework should make easy for developers to adapt existing and to
add new functionality.
According to [5], the expected solution is not as simple as combine all features
from different proposal that meets certain requirements to create a framework that
covers them all. The challenge is to select the most valuable concepts of all these
existing approaches, reduce their programming complexity and combine them, such
that the resulting framework coverts the described requirements with a rich set of
functionalities, and at the same time is easy to use and reduce development effort.
This section describes the MoRe (Modeling and Recommendation) framework that
was created to support the creation of context-aware recommender systems, by
providing a comprehensive class architecture that can model and manage the
information required for the CARS systems to work, and by incorporating a set of
state of the art recommender algorithms.
MoRe target, but is not limited to, the following users:
• Software developers who want to create a new CARS, either with or without
experienced creating this type of applications. To these users MoRe offers a data
modeling feature that developers can rely on to manage the information needed
by the recommender algorithms. MoRe also includes a set of state of the art that
with a few lines of code, developers can set up to generate the contextual
recommendations.
• Software architects who want to create a data architecture to support the user,
context and item information for a CARS. To these users MoRe presents an
extensible class structure that supports all this information, and they can extend
or user it straight into the system architecture.
• Researchers of recommendation systems area, who want to compare existing
recommendation algorithms with a new approach, as they can use load their
dataset(s) into MoRe data model and perform recommendations over it using the
contextual algorithms included. Or researchers who just want to put their
algorithms to test in a real scenario, and don’t want to spend time designing a
data model.
A Comprehensive Context-Aware Recommender System Framework 9
In our previous work [11] a Generic User Model for context-aware Recommender
System (GUMORS) was proposed to solve the problem of not existing an extensive
model that can be used as a reference to structure the user and context aspects inside
CARS. GUMORS provides a large set of user, context, and items working together
to create a CARS specific data model, that can be used into multiple CARS
domains. MoRe uses GUMORS as data structure to manage all the information
needed by prediction functions.
GUMORS organize the CARS information into 4 main top-level categories,
namely: User, Context, Item, and Activity information. Next, the four top-level
categories are briefly described, for a more detailed description please refer to [11].
10 S. Inzunza and R. Juárez-Ramírez
User aspects represent the user as a human being, which CARS can use to infer the
user preferences and behavior to better suit the recommendation results.
User aspects are categorized into Contact, Demographic, Physiological, Interest
and Preferences, Role, Personality, Emotion, and Mental information. Next Table 1
describes each category.
The activities information that can be useful for CARS are also modeled into
GUMORS. An activity relates information about the User that is performing it, in a
specified Context. A more specialized type of activity is called RatedActivity which
also includes information about the item consumed during the activity, and the
feedback (Rating) the user provided. The activity information is used for example
by Google Maps, to suggest the user navigation route according to his displacement
activity (walking, biking, driving, etc.). Spotify also uses activity information to
recommend users songs which rhythm matches his running speed. Next Table 3
shows the classes used by GUMORS to model the activity information.
GUMORS also manages the information about the Items the CARS will recom-
mend. For this feature, GUMORS uses an Item super-class that developers can
further specialize through inheritance to fit their specific needs. GUMORS also
contains a series of Item specialization based on the most commonly used items in
CARS literature and considers the commonly used attributes for each item (as
shown in Fig. 2).
The data management module is in charge of persisting the data from the model to a
database and retrieving it back when asked. MoRe uses Entity Framework [33] for
the Object-Relational Mapping (ORM). The use of an ORM for the data persistence
12 S. Inzunza and R. Juárez-Ramírez
allows the framework to perform CRUD (Create, Read, Update and Delete) oper-
ations directly over the model classes that is automatically translated into the
database without the need to directly perform queries to the db.
MoRe uses a ModelEntity superclass that contains generic methods with the
logic for all the CRUD operations, using both, synchronous and asynchronous calls.
This superclass is inherited from all the model classes that should be mapped to
database, which inherits the CRUD operations, e.g. Find, FindAll, Save, Delete,
Get, GetAll, etc.
The dataset generator is responsible for collecting the data from the database and
organize it so recommendations algorithms can understand it, e.g. Comma
Separated Values (CSV) or Binarized format [34].
MoRe uses Data Annotations to annotate the classes and attributes that will be
part of the resulting dataset. Annotating classes and attributes work as rules that
latter the framework will use to automatically create the dataset, which can be read
by algorithms from memory. As MoRe is designed to work custom internal or
external algorithms, the dataset can also be exported to a file in the specified format,
so any existing algorithm can use the data to generate recommendations.
MoRe uses a large set of algorithms for both, traditional (2D) and contextual
(nD) recommendation. For this first iteration, MoRe uses the set of algorithms
implemented by [28] and a custom wrapper to execute them from C# as originally
the implementation were made under Java development language.
A Comprehensive Context-Aware Recommender System Framework 13
As the framework contained a large set of ready to use algorithms, it can be used
by developers who don’t want to spend too much time implementing existing
recommendation techniques, or by developers that have little experience imple-
menting this type of complex systems [5], the recommendation algorithms can be
used as a black-box, that need to fed whit a dataset (described in previous section),
and will yield a list of recommended item for the specified user.
The framework also allows for custom algorithms to be included, which makes
MoRe ideal for researchers who want to test their new algorithm or recommen-
dation approach against existing state of the art algorithms.
Next, the traditional and contextual recommendation algorithms are described.
In addition to the list of implemented and ready to work algorithms, MoRe allow
developers to implement their own algorithms o to create hybridizations combining
multiple of the included ones. To implement new algorithms, developers need to
implement the IRecommender or IContextualRecommender class for a new tradi-
tional or contextual algorithms respectively and implement the methods each
interface enforces.
Contextual Filtering Algorithms, try to pre- or post-process the information and
convert it from a multi-dimensional matrix to a 2-dimensional rating matrix that
contains only the user reference (Id), item reference, and rating. Then, this
two-dimensional matrix can be used in traditional algorithms to generate recom-
mendations. There exist many contextual filtering algorithms, one of the most
effective is the context-aware splitting [39]. MoRe includes the three main variants
of this algorithm:
– UserSplitting: From a user point of view, the preference for certain items may
vary depending on the context. User Splitting group items based on the context
and the rating the user gave to them, so when a user gives items good values in a
certain context (e.g. sunny weather) and gives bad rating in another context
situation (e.g. rainy weather), the user can be divided into two users based on
such context (weather in this example).
– ItemSplitting: Separate the item that was rated differently under different context
as being different items. Based on the same rules of UserSplitting to decide
when some instances should be divided, but this process divide items instead of
users.
– UserItemSplitting: Combines both previous separations, the result is that an item
rated by a user in different context, is converted into 2 items, and the user is also
divided into 2 users.
Contextual Modeling Algorithms, unlike splitting approaches, take into account
the influence of context all context aspect on the rating prediction model, which
required the development of new algorithms capable of processing multi-
dimensional matrix and produce a recommendation. The algorithms used for con-
textual modeling supported by MoRe are:
– Tensor Factorization (TF) [40] This algorithm is based on the Matrix
Factorization (MF) dimensional reduction technique which is used for 2D rec-
ommendations. TF consist of extending the two-dimensional MF problem into a
multi-dimensional version, where the rating tensor is converted into a
lower-dimensional vector space. Such that the interactions between users, items,
and contextual factors are represented by a latent factor vector.
– Context-Aware Matrix Factorization (CAMF) [41] is a more scalable (than TF)
contextual modeling approach based on MF. CAMF uses a contextual baseline
prediction function to represent the interactions of contextual information with
the items or users. Baltrunas et al. [42] proposed different variants of CAMF that
model the influence of contextual conditions at different granularities. CAMF-C
assumes that a context factor affects the user and items in the same way.
A Comprehensive Context-Aware Recommender System Framework 15
4 Evaluations
This section compares MoRe with other framework and libraries discussed in
Sect. 2 of this document.
Next Table 5 presents a comparison between MoRe and other related
context-aware recommender frameworks. The Type section describes whether the
proposal is presented as a theory, a library or a framework; the Data section
describes if the proposal presents a way to structure the information about the user,
context, and items, and if it supports a temporal state profile which maintains a
sub-profile of the user with the current information so it can be quick and easily
accessible by the application. The Algorithm section describes the recommendation
techniques supported by each proposal, and finally, the last section describes the
programming language used by the proposal and if it is available as an open source
(OS), not disclosed (ND) or not available (NA).
16 S. Inzunza and R. Juárez-Ramírez
Part of the MoRe’s core is a data structure capable of modeling the users, context,
and items information that will be used by recommendation algorithm to generate
predictions. To test this feature, the LDOS CoMoDa [43] dataset was used loaded
into MoRe’s model. LDOS CoMoDa is a movie dataset that contains 2296
instances, and 32 attributes. The attributes are 9 corresponding to user information,
9 of contextual information and 14 attributes used to describe the items (movies).
Process
The process followed was to set up a new C# project in Visual Studio, and add
references to MoRe framework. As the dataset’s data is separated in 3 files, first the
Items information was loaded into the model by reading the itemsTitles and
itemsMetaData files, then the user, context and ratings information was loaded from
the LDOS-COMODA file. Next Table 6 show the user, context and items aspects
considered in the dataset and how they were mapped to MoRe data model.
Once the data was loaded into the model, and to test the ability of the framework
to serve the data, a dataset was creating using class annotation (as described in
Sect. 3.2) to configure the exportation behavior of the classes. Such recreated
dataset set was used in the next section of use case, where the functionality of the
recommendation algorithms is tested.
Results
The use case of loading data to MoRe’s model showed that the framework was
capable of supporting all LDOS CoMoDa dataset features, most of them (93%)
without the need of any adaptation to the model. Two features (Decision and
Interaction, the first refers to what motivate the user to watch the video, and the
latter refers to the number of interactions of the user with the video) were not
directly supported by the model as shipped with the framework.
To support these two features into the model, some adaptations were required,
the adaptations consisted of further specializing (through inheritance) the Video and
ModelORM classes, adding the required features to the new video (CoMoDaVideo)
class, then registering this CoMoDaVideo class to the specialized ModeORM class.
As the data structure has changed, a database migration was required to synchronize
the data structure with the database structure.
18 S. Inzunza and R. Juárez-Ramírez
Discussion
The selected dataset can be seen as having a small number of features (32), but most
of the existing dataset for CARS have fewer features (e.g. InCarMusic [41] as 18,
DePaul Movie [28] has 6, and Trip Advisor [39] has 9). Even though, being able to
use a bigger dataset is an interesting challenge that would allow us to test more
attributes of the model, having used LDOS CoMoDa dataset allow us to test the
ability of the model to store data, to maintain the relationship between the data
categories (user, context, and item), and the ability to serve back the stored data.
The age attribute contained in the dataset was considered supported even when it
was not stored directly as an integer, rather the model stores the birthday that which
can be easily converted into age with a little processing. Maybe such processing of
converting birthday into age should be directly included in the model in a future
release of MoRe. The emotions (endEmotion and dominantEmo) and mood are
considered as part of the user information, but as they are intended to reflect the
user’s state of mind in a specific situation, they are linked to the context, as the
A Comprehensive Context-Aware Recommender System Framework 19
splitting approach yield slightly better results, especially when paired with
ItemAverage baseline recommender.
The obtained results not necessary means that this will be the better performing
algorithms in all cases, as these results are specific to recommend movies, and
taking in consideration the specific characteristics of the LDOS CoMoDa dataset
(user and context aspects considered, the data sparsity, and the number of instan-
ces). When recommending other elements, and using other contextual information,
the algorithms will perform differently, fortunately, MoRe contains a large set of
algorithms so developers can use the better performing one in their specific CARS.
Reine är vackert, och där koncentrerar sig fisket och handeln just
nu. Allt är torsk och torsklukt. Torskslem och tran ligger som en
hinna överallt, man halkar och vadar i torskavfall. Inne på telegrafen
luktade det torsk och i den enda salong jag besökte i Reine luktade
det torsk. Båt efter båt lägger till vid bryggorna med torsk upp till
relingen och karlarna diskutera lastens värde. Där är rop och glam
och skratt, mäns djupa bas och pojkars diskant. Pojkarna se helt
stolta ut i sina oljekläder, ty den uniformen likställer dem med
fäderna och i den fostras de till hjältar på havet. Kvinnor ser man ej.
De sitta hemma och vagga de sista tvillingarna. Det är gott om barn
i Lofoten, 10 till 15 barn av samma mor är icke ovanligt. Vad beror
detta på? Månne på Golfströmmen, ty den inverkar nästan på allt i
Norge.
Havet låg vitt som mjölk under den bleka solen. Och då ejdrarna
lyfte och slogo ned, sprutade det som av silver i mjölkhavet. Vi gingo
in i den beryktade Troldfjorden, "det styggeste sted i Lofoten", säga
en del Lofotenbor. Det tycker icke jag. Möjligen hemskt vackert. På
en fjällsida stod ett färskt utterspår, om det kan intressera. Och små
snöskred stodo som skidspår från fjälltinnarna ända ned i havet.
Snart glimma ljusen i Narvik, och med ljuskastaren söka vi oss väg
till kajen.
Lofoten har tagit mig och jag måste se det en gång till!
HOS LAPPAR.
Solen sken klart och snön bländade och som glada färger på en vit
palett lyste och skimrade lapparnas dräkter. Hundarna skällde, våra
hästar stegrade sig och skakade bjällrorna, man ropade hälsningar,
barnen pulsade omkring i drivorna. Där var liv och lustighet.
Vi skulle köpa torrkött och ett par färska renstekar. Handeln var
snart uppgjord och ett par pojkar gåvo sig av för att hämta en ren.
Vi hade passerat hjorden på andra sidan sjön. Under tiden skulle vi
vara gäster i kåtorna, där maten just kokades och det starka, gröna
kaffet stod på elden. Om några ögonblick lågo vi bekvämt utsträckta
på renhudarna bland hundarna, som motvilligt makade åt sig.
Det var i gubben Sarris kåta. Sarri är gammal och rik och hans
gumma, som är mörkbrun och har tusen rynkor i sitt kloka ansikte,
där ett par svarta, glänsande ögon slugt betrakta främlingarna, rör
om i grytan med doftande renkött och renben. Så småningom fylles
kåtan alltmera med lappar från andra hushåll. Där rökes och skrattas
och vår finske tolk får hundra frågor att besvara. Men han frågar
också tillbaka. En av flickorna i kåtan är 25 år gammal och ogift. Hon
säger att hon törs inte. Skoj och skratt bland oss och lapparna. En
unge kryper omkring på björkrismattan, där snön skiner igenom.
Han är naken om ben och mage, men han skrattar och leker som om
ingen köld funnes.
När vi kommo ut ur kåtan, var renen hämtad och stod bunden vid
en björk. Litet ackorderande om priset, ett par pojkar draga omkull
honom, den ena sticker sin kniv mellan hans framben, tar ett par
steg åt sidan och låter honom sköta sig själv, fast han håller fast i
grimman. Renen springer upp, gör några kast, vacklar och faller
tungt åt sidan. Han är död och om några minuter är han styckad.
Sådant är livet.
Ännu dröja vi ett par timmar hos gubben Sarri. Kaffet flödar åter
och språklådan är öppen. Men när solen börjar sjunka ta vi avsked,
ta på pälsarna och äro inom kort på återvägen.
Moln dragas ihop i söder. Snart börjar snön falla. Det mörknar och
i kolsvarta natten åker jag sovande in i Kiiruna. Dess elektriska ljus
väcker mig, och vit som en snögubbe stiger jag ur släden. En smak
av renben och buljong sitter kvar i munnen, men inom 5 minuter är
den borta. Minnet är varaktigare.
ÅTER HOS LAPPAR.
För några dagar sedan fick jag ett brev från Luleå. Där stod att solen
höll på att komma och att isarna hade gått och att allt var härligt.
Nu, när jag kom upp till Lappland igen i vintras och kom in i en
kåta, kände jag denna hemkänsla om möjligt starkare. Jag skulle
vilja följa med fjällapparna och leva mitt återstående liv med dem.
Jag känner visserligen att jag borde ha tänkt på detta förut och att
det är för sent nu, men jag känner samtidigt, att jag har gått miste
om den verkliga lyckan i livet, därför att jag icke bröt nog tidigt med
den så kallade kulturen.
Det här artar sig tydligen till ett kåseri om mig själv. Min avsikt är
emellertid att skriva något om lapparna.
Jag fick undervisning i lapparnas sätt att märka sina renar. Jag
misstänker att få svenskar söder om Jämtland ha reda på det.
Renmärkena inregistreras, och myndigheterna i Lappland ha måst
göra studiet av dem till en särskild och ganska besvärlig vetenskap.
Om det roar skall jag här nedan lämna ett litet schema över
märkningens grundtyper och några prov på renmärken. Mig
intresserar detta, och möjligen kan någon annan bli intresserad.
Man påstår, och jag anser det ganska troligt, att en lapp bland
sina hundra renar genast upptäcker om någon med en annans
märke kommit i hjorden. Han går upp på någon höjd, så att han får
en överblick över djuren, och om något har ett hak mer eller mindre
i ena örat än hans egna, kommer lasson fram och främlingen
avlägsnas.
Vid den femte koppen kaffe börja jakthistorierna. Niia är en stor
jägare. Han har skjutit 6 björnar. Vargarna har han inte räknat, och
järvarnas antal har han glömt. Men hans svarta ögon lysa, då han
talar om, hur han skidat efter vargen, tills han måst slänga av sig
alla plaggen utom byxorna och hur svetten blev ispärlor på hans
bröst, innan han fick knäcka ryggen på fienden.
Tvärs över himlen, från horisont till horisont, står ett norrsken i
fyra böljande blåvita band. Det knarrar under medarna och kölden
biter i ögonlocken. Hästarna äro vita av rimfrost och min högra
mustasch har frusit fast vid vargskinnspälsen, men nu äro vi hemma.
REVAL
Gråt ej, om på det vida hav en enslig grav jag får. Du kan
ej pryda där min grav med rosor och en tår.
Men över den gammalvärdiga stadens grå och röda silhuett skrika
Alexander-Newskijkatedralens fem barbariskt gyllene lökkupoler, att
det gamla svenska Reval vid vårt gamla svenska hav nu är en av
trösklarna till Orienten. I väldiga slupar passera ryska matroshopar
på väg till staden. På piren mitt emot oss hojta vodkastinkande
kuskar, höljda i lumpor av orientaliskt snitt med pärlstickade skärp
och låga, på mitten åtsnörda stormar. Estniska bönder med vilda
skägg och obarmhärtiga ögon hänga över vedskutornas relingar och
bekika de ryska bönderna i röda blusar som ro stenlastade båtar,
besläktade med nordlandsbåten och dschonken. På kajen bakom vår
blågula fladdrande duk stå Yachtsmän och tala tyska, ryska, estniska
och beundra vår båt, ty den är ren och fin, ädlingen bland yachterna
i klubbhamnen. Ville jag, som jag nyss gjorde, klättra upp i
klubbhusets flaggstång, skulle jag kunna se en rysk eskader ute på
redden, farlig att skåda som ett rövarband på en sekundateater, och
bakom den utanför sandrevlarna en kappsegling — ty det är söndag
och frisk bris.
Det ligger en viss tjusning i att okänd, utan idiotiska guider ströva
igenom en gammal stad av Revals valör. Och dess valör är mycket
hög. Jag ville smeka de gamla husens buktiga, av århundradena
adlade linjer. De växa ej brutalt upp ur gatan utan deras väggar äro
en omärklig fortsättning av den. Det nyas, det oanvändas stelhet är
borta och hemmets värme och åldringens överseende slår emot dig i
varje hörn. Deras kanter äro rundade som i avsikt att ej skada dig.
Och gotikens längtan uppåt stämmer dig till poesi. Tag bara
kärleksfullt i de gamla dörrhandtagen som nötts av generationer och
stig aktsamt på trappstegen, dem århundraden ha slipat med alla
slags steg, rädda, djärva, värdiga, sorgsna.
Jag hör icke bullret på gatan bakom mig, där jag står med ansiktet
tryckt mot rutan. Jag bryr mig ej om de fulla kuskarna eller
småstadseleganternas sladder eller kvinnornas fnitter på trottoaren.
Jag lyssnar till tystnaden i själva muren, och till sorlet av skuggorna
som jag älskar att skapa därinnanför. Kanske dog någon av min egen
släkt därinne. Han slogs som en djävul under den tappre grev
Pontus och roffade åt sig så mycket av bytet att han blev en
välbesutten man, och blev kär i en halvvild estnisk bondflicka och
gifte sig och lade bort soldatmaneren och dog som jämförelsevis
hederlig borgare just i den här kammaren. Requiescat in pace!
Här ligger Pontus de la Gardie med kung Johans dotter vid sin sida
på sarkofagen. Hon är vacker och mild, han är hård och obeveklig,
men med knäppta händer vänta de på samma förintelse. Över dem
skymmer det i de grå valven. På väggarna hänga vapensköldar av
ätter, vilkas namn nu äro halvt bortglömda i det gamla fosterlandet.
Luften är tung av minnen och dammet som virvlar i solskenet är som
om det vore upprört av mäktiga vingslag från de gamla seklernas
jätteörnar, som osynliga kretsa omkring däruppe under taket med
kronor om halsarna och svärd och äpplen i klorna.
Jag är ingen Bædeker och min mening är icke att föra någon
staden runt och slösa med gamla minnen, dem jag helst behåller för
mig själv. Jag vill endast upplysa om att i Schwarzhäupterhaus finnas
goda porträtt av våra svenska regenter från Gustav Vasa till och med
Ulrika Eleonora. Två porträtt finnas av Karl XII, av vilka det ena
föreställer någon engelsk barnkung. Jag skulle kunna beskriva
vaktmästarens suveränt överlägsna min, då jag förklarade att det
ena icke är äkta. Men äkta var hans vaktmästarlogik, då han
invände: Wenn das Eine echt ist, muss auch das Andere echt sein.
Jag reser ut ur staden till Katharinenthal för att äta middag. Där
finns Peter den stores lilla hus och jag beskådar hans sängkammare,
där han sov med sina kvinnor och sina tre adjutanter. Jag gråter
nästan, icke av rörelse, ty jag är icke ryss, men något av storhet låg
i alla fall över sängarnas enkelhet och hans tofflor, som han glömt
att taga med sig i graven. Jag skulle gärna ha velat träffa honom
personligen.
Jag har nu varit i Reval i tre dagar och i natt segla vi till Wormsö.
Jag tror mig ha studerat Revals karaktär tillräckligt för att bilda
mig ett omdöme.
Så länge jag lever, skall jag minnas en liten havsvik med solbelyst
sandstrand, där små ilskna vågor krossas till skum bland lösryckt
tång och glattslipade kalkstenar. Utanför en rad klippor och grund,
där vita bränningar dåna, rullar Finska viken mörkblå med fräsande
toppar. Det blåser storm, men luften är ljum och på stranden, där
havsvinden brett ut enbuskarna som gröna mattstumpar, springa tre
män omkring som vilda och glada barn, Zorn och Gallén och jag. Vi
ha badat och dricka solen och dofterna från havet med våra munnar
och kroppar. Och när vi lägga oss på rygg på den torrbrända marken
där små tvinande blommor dofta, sveper blåsten om oss som
böljande silke och vi spänna och knyta musklerna i glädje över att
vara till. Vi känna oss i släkt med ejdrarna som kretsa utanför
näthusen och i släkt med de vita stormmolnen som jaga varandra in
mot Estland.
Båten lägger till längs Mejt, och lotsen stiger ombord. Hans gång
på vårt däck är stolt som en vikings och med sina nakna fötter går
han säkert som på sitt eget stugugolv. Lova, falla, lova, falla, och
under det han lotsar oss in i hamnen, lär han oss vägen ut därifrån,
vårt nästa behov.
— Ja.
Det var sent, men vi gåvo oss ej tid att vänta till följande morgon.
Vi rodde i land vid ett litet hus med livräddningsstationernas
allvarliga röda kors på dörren och vandrade upp mot byn, vars gråa
tak skymtade bland gröna träd på halvannan värsts avstånd. Vägen
gick över en sandslätt med låga enbuskar och här och där små
sävkantade gölar, där ejdrar, måsar och småspovar orädda simmade
omkring eller gravitetiskt spatserade på stränderna. Vi komma till det
lilla kapellet med sin kyrkogård, över vilkens port en gammal
galjonsbild, föreställande en präst i 1700-talets dräkt, tronade.
Över dörrposten läser jag årtalet 1905 och frågar, varför just det
årtalet står där. Varje nyår målas det nya årtalet dit i varje stuga för
att öborna skola komma i någon slags kontakt med tiden, som flyr.
Ty faktiskt är deras liv inrättat på samma sätt som vårt för ett halvt
årtusende sedan.
Efter pesten hade estniska sjörövare sitt tillhåll här, men Gustav II
Adolf lät befolka ön med svenskar för att få ordning i trakten. En
gång länge efteråt kommo kapare från fastlandet för att röva och
plundra. Men dimma kom från sjön, och Odensholmsborna togo sig
före att dunka på sina kokkärl, varpå kaparna blevo rädda och
lämnade ön. De hade satt sina båtar i land vid ett rev, som därefter
kallas Kaparevi.
Sagans ande fyller stugan, och det berättas den ena historien
efter den andra.
Ön har privilegier från Gustav II Adolf eller Kristina och lämnar i
skatt sedan urminnes tider 4 tunnor salt fisk och 4 tunnor torkad,
sammanskott från de 7 familjer med tillsammans omkring 100
medlemmar, som bo där. Men nu vet man icke, till vem det där skall
lämnas. En estländsk baron sades ha köpt ön och kom för att
förändra villkoren, men öboarna betrakta sig fortfarande som
svenskar och i sin goda rätt på grund av de månghundraåriga
privilegierna och underkasta sig ingen förändring.
Här oba stråndi sen I tri stor stain. Tåtå ni gå segol, tå ska kappli
bli uti räsa mä mittmillastain.
Bara uti hit hamne hövan I inga räddoa fer inga vär! (Men här i
hamnen behöver ni inte vara rädda för någon storm.)
Mitt i natten gå vi ombord igen för att sova. Skummet ryker över
jöllen och stormen tjuter i vanterna. Men vi bara längta till
morgondagen och våra släktingar i land.
*****
Deras stugor stodo öppna för oss, och vid måltiderna bullades allt
upp. Vi drucko tremännings öl ur trästånkor, där träet hade insupit
ölets själ så att kanten kändes stark och god att suga på. Torsken
doftade och brödet doftade.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade
Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.
textbookfull.com