<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Software actors for continuous social media analysis</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Paolo Fornacciari</string-name>
          <email>paolo.fornacciari@unipr.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Monica Mordonini</string-name>
          <email>monica.mordonini@unipr.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Agostino Poggi</string-name>
          <email>agostino.poggi@unipr.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michele Tomaiuolo</string-name>
          <email>michele.tomaiuolo@unipr.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universita` di Parma</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <fpage>84</fpage>
      <lpage>89</lpage>
      <abstract>
        <p>-Social media analysis is rapidly becoming a widespread tool for various applications. Motivations for interest range from commercial marketing to the monitoring of social trends and political opinions. This work presents an actorbased platform, augmented with machine learning algorithms. To evaluate its possible application for the continuous analysis of social media streams, we also present a case study about sport. We argue that the actor paradigm allows modeling well this kind of scenario, and it can scale to more complex applications, where multiple actors can cooperate to realize structured analysis tools. Results also show the advantage of a system for continuous analysis, which can learn from new data and improve its internal classification model.</p>
      </abstract>
      <kwd-group>
        <kwd>-Data analysis</kwd>
        <kwd>actor-based systems</kwd>
        <kwd>machine learning</kwd>
        <kwd>social media</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>
        Currently, people use online social networks for more and
more types of interactions, including recreational interests,
family relationships and work activities [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Consequently,
there is a strong interest to monitor such online platforms
for obtaining some early insight into societal changes, in both
online and offline life. Since the use of social networks is much
differentiated, also the kinds of analysis and studies that are
being conducted vary. While companies are mainly interested
in the public fidelity to brands, products and characters,
politicians and decision makers require instead the analysis
of emerging social trends and political opinions.
      </p>
      <p>This paper presents a system for continuous monitoring and
analysis of social streams. The system augments an actor based
software framework with a non-relational data repository and
machine learning algorithms. The actor model provides
suitable features for both simplifying the development of large
and distributed complex systems and guaranteeing scalable and
efficient applications.</p>
      <p>
        There are a multitude of actor oriented libraries and
languages, and each of them implements some variants of actor
semantics. ActoDeS (Actor Development System) is a
framework which allows developers to build heterogeneous systems
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. It allows merging thread-based programming, which eases
the development of programs, with event-based programming,
which is far more practical to develop large and efficient
concurrent systems, but also is more difficult to use.
      </p>
      <p>The ActoDeS framework can be adapted for the use on
social media. In particular, in this work we have realized a
system for monitoring some social streams. The use case we
have chosen is the topic “sport”, which we have observed on
Twitter, for gaining information about the varying popularity
of some specific sports, during the analyzed period.</p>
      <p>An automatic classifier, based on configurable supervised
learning algorithms, is trained on some initial dataset. Then,
it is applied on the stream of data collected at runtime, to
classify new instances. Downloaded data is annotated and
stored in some collections in a non-relational database, as
JSON objects. Additionally, new data can be used to augment
the initial training set. This way, the classifier can use its own
classification to produce new data to learn from and improve
its own internal prediction model.</p>
      <p>Before discussing in detail the implemented system, in the
next section we present some related work. Section 3 then
introduces the underlying software framework and provides
details about the system architecture and its implementation.
Sections 4 describes the case study and the methodology that
we have used to collect and analyze data. Section 5 presents
the experimental results obtained on the case study. Section 6
discusses how the system is being used and can be further
extended, to realize a more complex classification system.
Finally, section 7 concludes the paper by discussing the current
features of the system and evaluating the main development
lines.</p>
    </sec>
    <sec id="sec-2">
      <title>II. RELATED WORK</title>
      <p>
        The focus of social network analysis (SNA) is on
relationships among the members of social communities. This analysis
is fundamental in the social and political sciences, as well
as in economics and industrial engineering. Historically SNA
is a research strategy that allows researchers to quantify the
pattern of relations among a set of actors. A comprehensive
introduction to the theory and practice of network analysis
in the social sciences is provided in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In addition to the
structural analysis of a social entity, it is interesting to study
the emotional components of community members. This is
a research field that takes the name of Opinion Mining and
Sentiment Analysis. The growing availability and popularity of
online social media and personal blogs gives new opportunities
and challenges, in the use of information technologies and
machine learning to provide tools to understand the opinions of
others. A survey of these techniques is shown in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Examples
of applications of these methods are shown in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], where a
corpus of geotagged tweets is used for estimating happiness
in Italian cities, or in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] where the US mood throughout
the day are inferred from an analysis performed on Twitter
data. In [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] authors present a possible combined approach
between Social Network Analysis and Sentiment Analysis.
In particular, a sentiment is associated to the nodes of the
graphs showing the social connections, and this may highlight
the potential correlations. The growth and pervasiveness of
online communities allow different and new possibilities to
interact with them. For example, social networking systems
blur the distinction between the private and working spheres,
and users are known to use such systems both at home and
on the work place, both professionally and with recreational
goals [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. Moreover, social networking has a large potential
for easing collaboration, also across organizational boundaries,
but effective e-collaboration through social networks requires
the development of open and interoperable systems. This
could create some difficulties in the domains of privacy or
confidentiality [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Some work has been done in the analysis
of undesirable behavior such as trolling, such as in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Like
other organizations, sport industry groups including athletes,
teams, and leagues use social media to share information
about and promote their products. In [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], authors explore
how sporting event organizers and influential Twitter users
spread information through the online social network. In
general, data coming from online social media is an example
of Big Data, which often requires the use of distributed
and scalable software tools. Several actor oriented libraries
have been proposed in recent years, which could be used
to implement a distributed sentiment analysis system (see,
for example Scala [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] and Akka[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). Scala is an
objectoriented and functional programming language that provides
an implementation of the actor model unifying thread based
and event based programming models. In fact, in Scala an actor
can suspend with a full thread stack (receive) or can suspend
with just a continuation closure (react). Therefore, scalability
can be obtained by sacrificing program simplicity. Akka is an
alternative toolkit and runtime system for developing
eventbased actors in Scala, but also providing APIs for developing
actor-based systems in Java. One of its distinguishing features
is the hierarchical organization of actors, so that a parent actor
that creates some children actors is responsible for handling
their failures.
      </p>
    </sec>
    <sec id="sec-3">
      <title>III. SYSTEM ARCHITECTURE</title>
      <p>
        ActoDES is a software framework which aims at
simplifying the development of complex distributed systems,
implementing an actor model [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Actors are autonomous
and concurrent objects, each characterized by a state and a
behavior and the ability to interact with other agents through
the exchange of asynchronous messages. After the analysis of
its incoming messages, an actor can send more messages to
itself or to others, create new actors, update its state, change
its behaviors, terminate its own execution, etc. Each behavior
can define a policy for handling incoming messages, through
handlers called “cases”. Each case can only process messages
corresponding to a specific pattern. An actor space is intended
as a container offering the services needed for the correct
execution of a set of actors. In particular, it includes two types
of actors: a scheduler and a service provider. The former has
the duty to handle the concurrent execution of actors, while the
latter provides runtime services, needed by actors to complete
their tasks.
      </p>
      <p>
        In previous works, we have discussed the role of agents
and actors for the analysis and simulation of social networks
[
        <xref ref-type="bibr" rid="ref14">14</xref>
        ][
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and for building social networking platforms [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ][
        <xref ref-type="bibr" rid="ref17">17</xref>
        ].
In particular, these platforms may provide more control to
users for managing and protecting their own data [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ][
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. This
project is centered on the realization of new services, providing
additional functionalities to actors, for the continuous analysis
of social streams. One of such services is a Mailer service,
to which actors can send subscription requests, for a set of
addresses. A mailer service is useful in developing
collaborative applications with actors as shown in [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. This service
has the task to receive incoming messages into a specific
mailbox, and forward them to subscriber actors. The actors
can eventually handle the messages differently, according to
their own behaviors. Another module introduced in the system
is a Twitter service, to interact with the widespread social
platform. The Twitter service allows an actor to send various
kinds of requests:
• User timeline, to obtain the recent tweets of a specified
user and save them in a local storage system
• Content query, to obtain recent tweets published on
Twitter and selected according to some constraints specified
by the actor
• Stream, to receive messages published on the platform
during the execution; tweets are obtained in the form of
JSON objects, which are then store in NoSQL repository
(namely a MongoDB database [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ])
      </p>
      <p>Leveraging ActoDES and the additional mentioned
modules, we have built a software system that can be used to
track and study a certain topic, with an architecture that can
be extended to different cases and to problems that are more
complex. The implemented system allows to:
• Download tweets published by a given user
• Search data published by the community, with the ability
to set all relevant parameters
• Create collections in MongoDB, to store obtained JSON
objects
• Join different collections to create a training set, in “arff”
format
• Training a classifier on the produced training set
• Save and load a classifier model from a file
• Start observing a stream of tweets, matching a given
query
• Get the results of a classifier, on the new tweets</p>
      <p>
        Additionally, the system is able to filter out repeated
messages, or very similar messages. In fact, these messages can
alter the classifier model, if they are introduced repeatedly
into the training set. For this aim, the Levenshtein distance
has been used, to measure the similarity of texts [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. If some
tweets are measured above a configurable threshold, then they
are blocked from further processing.
      </p>
      <p>
        The classifier is an entity that requires a training set of
initial instances to create an internal prediction model, and
then it can learn to classify also new instances. To evaluate the
performance of a classifier, an annotated test set can be used.
To deal with text, Naive Bayes Classifiers usually provide good
results [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ] [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. Their simplified model is based on the
hypothesis of independence of features, i.e., the presence of a
feature is not correlated to the presence of other features.
      </p>
      <p>Being the system dedicated to the continuous analysis of
social media streams, it allows feeding the classifier with new
data, for augmenting its training set at runtime. For evaluation
purposes, it is also possible to use two different classifiers,
used to classify the same data in a parallel architecture. The
first classifier can be trained once, in a static way, with the
initial training set. The second one can learn also from new
data, by updating its own training set with new instances. In
particular, it is possible to set a confidence threshold, and add
new instances, which are classified with enough confidence,
incrementally to the original training set. In this sense, the
second classifier is continuously self-training on the data
stream it receives.</p>
      <p>Additionally, to monitor the classification results, a web
module has been introduced. The web interface updates its
representation dynamically, showing basic results about
collected tweets or observed streams. In particular, the interface
shows:
• A pie chart, to show the total number of tweets that
have been eventually classified for each class, since the
beginning of the process
• A line chart, to show how many tweets are being
classified for each class during each timeframe of the observed
period
• The results of classifiers for all tweets
• The frequency of classifications of latest tweets
• Total number of tweets
• Number of repeated tweets (retweets)
• Number of tweets discarded, for the process of online
training (described later)
• Localization of tweets, for which some form of
geographic information is available</p>
      <p>An additional level of analysis can be based on the
geolocalization of tweets and users. In the graphical interface, a
map allows to position tweets that are annotated, in different
ways, with geographical coordinates. For each localized tweet,
a marker is added on the map, representing the class associated
with the tweet after the classification process. During the
analysis of data, we noted that only a small minority of tweets
are annotated with precise geographical coordinates, i.e., only
from mobile users who enable the localization feature of their</p>
      <p>Twitter app. Fortunately, geographical data can be obtained
in different ways. In particular, two additional fields, relevant
for positioning a tweet, are its “place” and “location”. Place
can contain information about a user’s place of residence,
according to his/her own choice. This information is requested
during the registration and tends to be static, apart from manual
a-posteriori modifications. Instead, location is requested before
the publication of a tweet, optionally and with a precision level
that can be selected by the user. Both the place and location
fields contain textual information for cities and regions, which
require the use of a “reverse geocoding” service to obtain an
approximation for geographical coordinates.</p>
    </sec>
    <sec id="sec-4">
      <title>IV. A CASE STUDY</title>
      <p>We have used “sport” as a topic for conducting a case study.
In fact, sport is a widespread topic for which it is easy to
find abundance of data and news, in virtually any period. This
study, in particular, is focused on the classification of tweets
among few chosen sports: soccer, rugby, basket, tennis. For
each class, a proper training set is needed by the system, in
the form of an “arff” file, with texts annotated according to the
selected classes. An additional class is introduced for tweets
marked as “generic/others”, which deal with sport but not
specifically about the four classes of this study. For creating
the training set, we have collected tweets published on Twitter
public channels, i.e., tweets with a specific hashtag, in this
case the name of the specific sport of interest. This way,
however, a quantity of collected data is not really related to the
supposed topic, and can thus worsen the classification results.
Consequently, we have manually filtered the obtained data, for
removing spurious tweets and thus creating a better
classification model. Moreover, classical prefiltering techniques are
useful to obtain higher precision. Finally, all selected data has
to be joined into a whole “arff” file, containing instances of
the vfie classes. In this case, the training set is composed of
around 230-250 instances for each class, summing up to 1140
instances in total. The number of instances in the training set is
not large. In fact, we have decided to create a small functioning
training set, and then possibly augment it automatically at
runtime. Small initial training set allows appreciating better
any improvement in the quality of the classification model, as
it eventually matures.</p>
      <p>
        For downloading tweets, Twitter APIs [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] expose a public
stream interface. It allows to be notified at runtime about new
tweets, as soon as they are published. These messages can
be filtered according to their textual content, language and
many other parameters. Thus, an actor can use these filters
to receive and process only the tweets of its own interest.
The present study is based on Italian tweets, with the generic
hashtag #sport.
      </p>
      <p>More in detail, a listener is used to handle new tweets. At the
reception of each message, the listener performs the following
actions:
• Add the tweet, as a JSON object, to a collection in the</p>
      <p>NoSQL data repository
• Extract or estimate the geographical position of the tweet
• Update files containing the classification results
• Update the training set, augmenting it with new instances
• Update aggregated data on the stream of tweets under
analysis</p>
      <p>To evaluate results, in the case study about sport, two
classifiers are executed in parallel. Both classifiers are initially
trained on the same data set, and both have to predict the class
of the same tweets, published on the #sport channel (hashtag).
Only one of these two classifiers uses its own classification
results to augment its own training set, continuously. A tweet
is appended to the training set at the condition that it is
classified with a sufficient confidence level. In this study,
the threshold is set at 68%. Once beginning to listen on the
stream, the classification quality is re-evaluated automatically
after the reception of each 30 tweets. Both classifiers are
tested against the same test set, composed of 400 instances,
distributed almost equally among the various classes. This
way, it is possible to track any change in the quality of the
online learning classifier. In fact, after collecting 1050 tweets
and using a selection of them to update the training set, the
level of correct classifications has raised from 62.5% to 76.0%,
eventually. Moreover, the quantity of discarded tweets, i.e., for
which a class cannot be defined with sufficient confidence,
decreases during time. This is another evidence that the use
of new data can improve the classification model. It has
to be noted that received tweets, with #sport hashtag, often
contains very confused information, thus this level of quality
improvement over time could not be easily predicted.</p>
      <p>About the geo-localization of tweets, we have noted that
tweets associated directly with geographical coordinates are
quite few, around 5% in our study. However, using the place
and location fields and a reverse geocoding service (Google
Maps API, namely), around 50% of all tweets can be
associated with an estimation of their geographical position.</p>
    </sec>
    <sec id="sec-5">
      <title>VI. FURTHER WORK</title>
      <p>
        The basic case described in this work has been useful to
experiment with actor technology for social stream analysis
and online learning. However, the sport scenario does not
exploit the full benefits of a powerful actor based system. In
fact, we are already leveraging this experience for building
more complex systems. The very next step we are taking is to
implement a runtime adaptive system for automatic emotion
classification. Starting from the basic concept of sentiment
analysis, we have already demonstrated that it is possible to
discriminate more precise emotions associated with a post,
rather than simple positive or negative sentiments [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]. In
particular, the basic model of sentiment analysis can be extended
in the direction of specifying the emotions that characterize
subjective tweets. Our previous works have applied Parrott’s
socio-psychological model to social media classification [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ].
According to this model, all human feelings are divided into
six major states (three positive and three negative):
• Positive feelings of love, joy, and surprise
• Negative feelings of fear, sadness, and anger
      </p>
      <p>Thus, into the ActoDeS framework, we are building a
hierarchical classifier, composed of multiple coordinated
actors, representing the different levels and branches of the
whole classifier. The hierarchy of classification is shown in
Figure 6. In general, hierarchical classification is based on
the consistent application of multiple classifiers, organized
in a tree-like structure. In the particular case of Parrot’s
emotions, a first step uses a binary classifier that determinates
the subjectivity/objectivity of a tweet. The second step further
processes all instances that have been identified as subjective.
It uses another binary classifier that determinates the polarity
(positivity/negativity) of a tweet. Depending on the polarity
assessed at the previous level, the third step classifies the
specific emotion expressed in the text (love, joy or surprise for
positive tweets; fear, sadness or anger for negative tweets). All
these classifiers are embodied by actors, which can operate on
a stream of tweets, analyzing them and, finally, learning from
them.</p>
      <p>
        The use of a hierarchical structure of classification is
motivated by previous results, which show that the domain
knowledge embedded into the hierarchical classifier makes it
more accurate than the flat classifier. Moreover, the automatic
construction of a training set with data acquired from social
media has demonstrated to be a viable solution. In particular,
in the case of sentiment analysis and emotion classification,
it is possible to filter the training set automatically. This
eventually improves the quality of the final classifier, with
respect to a “blind” collection of raw data based only on the
hashtags. In fact, the results obtained with this approach [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]
are comparable with those found in similar works [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ].
      </p>
    </sec>
    <sec id="sec-6">
      <title>VII. CONCLUSIONS</title>
      <p>In this work, we have proposed a system for the continuous
analysis of social streams. The system is based on ActoDeS,
a software framework that allows the development of efficient
large actor based systems. It combines the possibility to
use different implementations of the components driving the
execution of actors with the delegation of the management of
the reception of messages to the execution environment.</p>
      <p>For the purpose of social media analysis, we have integrated
ActoDeS with a non-relational data storage system and
machine learning algorithms. We have tested the system with
satisfaction for automatically classifying tweets about sport.
We confronted the performances of two classifiers: one with
static training and one with online training, i.e., augmenting
its training data with new tweets obtained and analyzed at
runtime. Though data obtained from social streams is often
noisy and confused, nevertheless the second classifier quickly
gained a significant advantage over the first one.</p>
      <p>We are extending this kind of system for more complex use
cases, requiring the use of structured classifiers. In particular,
we are interested in applying a hierarchical system for emotion
detection to a continuous stream of data. For all these kinds of
applications, in our experience, the actor model provide quite
handy features which simplify the system development and its
usage for practical monitoring and analysis, in particular when
the stream requires good scalability.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>E.</given-names>
            <surname>Franchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Social media for online collaboration in firms and organizations</article-title>
          ,”
          <source>International Journal of Information System Modeling and Design (IJISMD)</source>
          , vol.
          <volume>7</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>18</fpage>
          -
          <lpage>31</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          ,
          <string-name>
            <surname>A“</surname>
          </string-name>
          <article-title>n actor based software framework for scalable applications</article-title>
          ,
          <source>” Lecture Notes in Computer Science (LNCS)</source>
          , vol.
          <volume>8729</volume>
          , pp.
          <fpage>26</fpage>
          -
          <lpage>35</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>J.</given-names>
            <surname>Scott</surname>
          </string-name>
          ,
          <article-title>Social network analysis</article-title>
          .
          <source>Sage</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>B.</given-names>
            <surname>Liu</surname>
          </string-name>
          , “
          <article-title>Sentiment analysis and opinion mining,” Synthesis lectures on human language technologies</article-title>
          , vol.
          <volume>5</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>1</fpage>
          -
          <lpage>167</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>L.</given-names>
            <surname>Allisio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Mussa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bosco</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Patti</surname>
          </string-name>
          , and G. Ruffo, “
          <article-title>Felicitt a`: Visualizing and estimating happiness in italian cities from geotagged tweets</article-title>
          .
          <source>” ESSEM@ AI* IA</source>
          , vol.
          <volume>1096</volume>
          , pp.
          <fpage>95</fpage>
          -
          <lpage>106</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>A.</given-names>
            <surname>Mislove</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Lehmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.-Y.</given-names>
            <surname>Ahn</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.-P.</given-names>
            <surname>Onnela</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J. N.</given-names>
            <surname>Rosenquist</surname>
          </string-name>
          , “
          <article-title>Pulse of the nation: Us mood throughout the day inferred from twitter</article-title>
          ,” Northeastern University,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>P.</given-names>
            <surname>Fornacciari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mordonini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Social network and sentiment analysis on twitter: Towards a combined approach</article-title>
          ,” in
          <source>KDWeb</source>
          <year>2015</year>
          , 1st International Workshop on
          <article-title>Knowledge Discovery on the WEB, ser</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          , vol.
          <volume>1489</volume>
          . CEUR-WS.org,
          <year>2015</year>
          . [Online]. Available: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1489</volume>
          /paper-06.pdf
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>G.</given-names>
            <surname>Angiani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Fornacciari</surname>
          </string-name>
          , E. Iotti,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mordonini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Models of participation in social networks,” in Social Media Performance Evaluation and Success Measurements</article-title>
          .
          <source>IGI GLobal</source>
          ,
          <year>2017</year>
          , pp.
          <fpage>196</fpage>
          -
          <lpage>224</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>E.</given-names>
            <surname>Franchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Blogracy: A peer-to-peer social network</article-title>
          ,”
          <source>International Journal of Distributed Systems and Technologies (IJDST)</source>
          , vol.
          <volume>7</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>37</fpage>
          -
          <lpage>56</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10] J. Cheng, C.
          <article-title>Danescu-Niculescu-Mizil, and</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Leskovec</surname>
          </string-name>
          ,
          <article-title>A“ntisocial behavior in online discussion communities</article-title>
          ,
          <source>” arXiv preprint arXiv:1504.00680</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>M. E.</given-names>
            <surname>Hambrick</surname>
          </string-name>
          , “
          <article-title>Six degrees of information: Using social network analysis to explore the spread of information within sport social networks</article-title>
          ,”
          <source>International Journal of Sport Communication</source>
          , vol.
          <volume>5</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>16</fpage>
          -
          <lpage>34</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>P.</given-names>
            <surname>Haller</surname>
          </string-name>
          and
          <string-name>
            <given-names>F.</given-names>
            <surname>Sommers</surname>
          </string-name>
          , Actors in Scala.
          <source>Artima Incorporation</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <article-title>A“kka toolkit</article-title>
          ,” http://akka.io/.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          , E. Franchi,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , “
          <article-title>Selected models for agent-based simulation of social networks</article-title>
          ,
          <source>” in 3rd Symposium on Social Networks and Multiagent Systems (SNAMAS</source>
          <year>2011</year>
          ),
          <year>2011</year>
          , pp.
          <fpage>27</fpage>
          -
          <lpage>32</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>F.</given-names>
            <surname>Bergenti</surname>
          </string-name>
          , E. Franchi,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <article-title>A“gent-based interpretations of classic network models,” Computational and Mathematical Organization Theory</article-title>
          , vol.
          <volume>19</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>105</fpage>
          -
          <lpage>127</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          ,
          <article-title>A“ dht-based multi-agent system for semantic information sharing</article-title>
          ,
          <source>” Studies in Computational Intelligence</source>
          , vol.
          <volume>439</volume>
          , pp.
          <fpage>197</fpage>
          -
          <lpage>213</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Integrating peer-to-peer and multi-agent technologies for the realization of content sharing applications</article-title>
          ,
          <source>” Studies in Computational Intelligence</source>
          , vol.
          <volume>324</volume>
          , pp.
          <fpage>93</fpage>
          -
          <lpage>107</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>E.</given-names>
            <surname>Franchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Information and password attacks on social networks: An argument for cryptography</article-title>
          ,
          <source>” Journal of Information Technology Research (JITR)</source>
          , vol.
          <volume>8</volume>
          , no.
          <issue>1</issue>
          , pp.
          <fpage>25</fpage>
          -
          <lpage>42</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>S.</given-names>
            <surname>Gallardo-Vera</surname>
          </string-name>
          and
          <string-name>
            <given-names>E.</given-names>
            <surname>Nava-Lara</surname>
          </string-name>
          , “
          <article-title>Developing collaborative applications with actors</article-title>
          ,
          <source>” in Proceedings of the World Congress on Engineering and Computer Science</source>
          , vol.
          <volume>1</volume>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>K.</given-names>
            <surname>Chodorow</surname>
          </string-name>
          ,
          <article-title>MongoDB: the definitive guide</article-title>
          . ”
          <string-name>
            <surname>O'Reilly Media</surname>
          </string-name>
          , Inc.”,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>V. I. Levenshtein</surname>
          </string-name>
          , “
          <article-title>Binary codes capable of correcting deletions, insertions</article-title>
          , and reversals,” in
          <source>Soviet physics doklady</source>
          , vol.
          <volume>10</volume>
          , no.
          <issue>8</issue>
          ,
          <issue>1966</issue>
          , pp.
          <fpage>707</fpage>
          -
          <lpage>710</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>K. P.</given-names>
            <surname>Murphy</surname>
          </string-name>
          , “Naive bayes classifiers,” University of British Columbia,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>J.</given-names>
            <surname>Chen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Huang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Tian</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Y.</given-names>
            <surname>Qu</surname>
          </string-name>
          , “
          <article-title>Feature selection for text classification with naive bayes,” Expert Systems with Applications</article-title>
          , vol.
          <volume>36</volume>
          , no.
          <issue>3</issue>
          , pp.
          <fpage>5432</fpage>
          -
          <lpage>5435</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>P.</given-names>
            <surname>Fornacciari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mordonini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          ,
          <article-title>A“ case-study for sentiment analysis on twitter,” in WOA 2015, From Objects to Agents, ser</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          , vol.
          <volume>1382</volume>
          . CEUR-WS.org,
          <year>2015</year>
          , pp.
          <fpage>53</fpage>
          -
          <lpage>58</lpage>
          . [Online]. Available: http://ceur-ws.
          <source>org/</source>
          Vol-
          <volume>1382</volume>
          /paper8.pdf
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>[25] “Twitter api,” https://dev.twitter.com/overview/api.</mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>G.</given-names>
            <surname>Angiani</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Cagnoni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Chuzhikova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Fornacciari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mordonini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Tomaiuolo</surname>
          </string-name>
          , “
          <article-title>Flat and hierarchical classifiers for detecting emotion in tweets</article-title>
          ,
          <source>” Lecture Notes in Computer Science (LNCS)</source>
          , vol.
          <volume>10037</volume>
          , pp.
          <fpage>51</fpage>
          -
          <lpage>64</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>W. G.</given-names>
            <surname>Parrott</surname>
          </string-name>
          ,
          <article-title>Emotions in social psychology: Essential readings</article-title>
          . Psychology Press,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>D.</given-names>
            <surname>Ghazi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Inkpen</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Szpakowicz</surname>
          </string-name>
          , “
          <article-title>Hierarchical versus flat classification of emotions in text,” in Proceedings of the NAACL HLT 2010 workshop on computational approaches to analysis and generation of emotion in text</article-title>
          .
          <source>Association for Computational Linguistics</source>
          ,
          <year>2010</year>
          , pp.
          <fpage>140</fpage>
          -
          <lpage>146</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>