<!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>CriCa team: MultiModal Stance Detection in tweets on Catalan 1Oct Referendum (MultiStanceCat)</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Almendros Cuquerella</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Carlos</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cervantes Rodr guez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cristo</string-name>
          <email>cristobalcervg@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universitat Politecnica de Valencia</institution>
          ,
          <addr-line>Valencia</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <fpage>167</fpage>
      <lpage>172</lpage>
      <abstract>
        <p>This paper describes the process that we followed to develop our stance analysis tool for IberEval 2018 on MultiModal Stance Detection in tweets on Catalan 1Oct Referendum (MultiStanceCat) task. Our approach is based on the tools provided by the scikit-learn toolkit[3] to develop a system capable of detect the stance of some tweets about the Catalan 1Oct Referendum, using only the text written in the body of the tweet and also using the context formed by the previous and the next tweet of the one we are analyzing.</p>
      </abstract>
      <kwd-group>
        <kwd>Stance Detection IberEval 2018</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Nowadays, the large amount of new data produced by services like Twitter brings
the opportunity to get useful and interesting information about people opinion
and feelings on a wide variety of topics. This high volume of information could
be di cult or nearly impossible to handle and process by human operators,
requiring to make use of advanced algorithms to obtain the relevant information
hidden on the data with low time and economic costs.</p>
      <p>This information can be used for tasks that improve the service quality and
security (among others) o ered by companies, which are becoming more interested
on the text classi cation eld.</p>
      <p>
        For the purpose of obtaining the opinion and feelings of the society about popular
topics, Twitter has become an attractive tool, being used for many studies [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
One important area of study is text classi cation, whose aim is to label natural
language texts into a xed number of prede ned categories (eg. favor, against,
neutral, ...).
      </p>
      <p>
        For the MultiStanceCat [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] task, we found that using Twitter as a source of
data adds the di culty of having to use text that in addition of being written in
2
informal natural language, has a limited amount of characters available, thing
that makes people use contractions or remove letters that doesn't need a
human to understand the message, but could get some trouble for our algorithm,
which would understand the correct word and the reduced one as di erent, if
no countermeasure is taken against this. Also, in tweets we can also nd
grammatical errors, vulgar vocabulary or slang, abbreviations, hashtags, links and
images, which requires a more complex analyzer to be developed to be able to
get advantage of them.
      </p>
      <p>In this task, we had to classify a set of tweets related to the Catalan 1Oct
Referendum based on the stance (Favor, Against or Neutral) of the person who
wrote it, concerning the independence of Catalonia.</p>
      <p>The paper is structured as follows. Section 2 describes our system and the
preprocessing we made to the dataset. Next, in Section 3, the obtained results are
discussed. Finally, we present our conclusions in Section 4 with a summary of
our ndings.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Dataset and system</title>
      <p>The dataset is formed by 6 les, distributed in the following way: 2 set of tweets
for training, 2 les with the labels for these tweets, and 2 les for test. One
of each of those three types of les is for Spanish language and the other for
Catalan.</p>
      <p>We joined the two train les (Catalan tweets and Spanish tweets) to compose
a bigger corpus and shu ed it, to obtain an homogeneous distribution of the
tweets, before dividing it in two parts. The rst one, containing 80% of the
texts, used for the training phase and the second one, with the remaining 20%,
used to validate the analyzer among training iterations.</p>
      <p>Our rst approach was to tokenize the tweets to separate the di erent words
before passing them to the vectorizer. Then we obtained a features matrix based
on a Tf-idf vectorizer, where we can nd a row for each tweet and a column for
the weight of each feature, related with the frequency of each token in the tweet
and in the corpus. With this features matrix and the tags obtained from the
labels les, we trained a LinearSVC classi er and got a model to classify new
tweets based on their stance.</p>
      <p>Finally, we used the development set to evaluate the classi er, vectorizing the
tweets with the same vectorizer used before and classi ed them with the
LinearSVC trained with the training set. The results of this approach can be found
in the next section (see Table 1).</p>
      <p>
        Using the previous approach as base, we tried to add new features, with the
intention of improving the obtained results. Our rst hypothesis was that we
could use the similarities between Spanish and Catalan to increase the number
MultiModal Stance Detection
3
of occurrences of each feature in the training case and to decrease the quantity
of di erent features that could appear while training or classifying.
Spanish and Catalan languages have many words that share the same stem but
have di erent ending, for example the Spanish word "television" is treated as
di erent from the same Catalan word "televisio" in our rst approximation. Our
intention is to make our analyzer capable to detect that type of situations.
We started using one of the stemmers included in the NLTK toolkit [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], the
Snowball stemmer, that is capable of stem for Spanish language (see Table 4).
Next, we tried xing the maximum length of the words, having launched the
analyzer with a maximum length of 3, 4, 5 (Table 2). In this case, a word like
"television" will be transformed to "tel", "tele" and "telev" respectively. This
gives us the advantage of making the vectorizer to treat this word and its Catalan
translation as if they were the same work. This approach had the disadvantage
of generalizing too much, causing that words like "casa" (house) and "castell"
(castle) to be recognized as the same one, when using a maximum length of 3.
This could happen for the other length too, with other words.
      </p>
      <p>After that, we tried a variation of the last experiment, using a xed length of
characters at the end of the word to be removed. The results of this experiment
with length 1, 2 and 3 are reported in Table 3. This way of processing each
word has the disadvantage of having a big impact on short words and an almost
negligible one on long words. For this reason we de ned in Table 4 ranges of
lengths and a xed quantity of characters to be removed, causing the deletion
length to be proportional to the word length.</p>
      <p>For the second part of the MultiStanceCat task, we had to study if adding
the previous and the next tweets to the current tweet that we are analyzing
could help to increase the stance classi cation accuracy. We used additional
information in 3 di erent way:
1. Concatenating these three text bodies, adding a space between them (prev
+ text + next).
2. Concatenating these three text bodies, trying to give more weight to the text
of the current tweet, duplicating it in the concatenated text (prev + text +
text + next).
3. Vectorizing each of these three tweets in an independent way and joining
their features matrix before training Linear SVC.</p>
      <p>Results are given in Table 5
4
3</p>
    </sec>
    <sec id="sec-3">
      <title>Results</title>
      <p>Experiments using both languages at the same time and using them in an
independent way have been carried out (Table 1) having obtained better results
in the rst case. Using a too short pre x length showed to worsen the obtained
results (see Table 2), but no signi cant variations on F1-macro have been seen
when trying di erent values for the xed length su x removal approach. The
best results have been obtained with the ranged su x removal length, because
the length of the removed su x is proportional to the word's length, resulting
in a bigger removal on long words and shorter in the short ones.</p>
      <p>Type F1-macro precision recall
Both languages together 0.69171 0.71692 0.67917
Only Catalan language 0.51662 0.86154 0.46529</p>
      <p>Table 1. Only text without stemmer
MultiModal Stance Detection
5
When using the context as additional information, better results have been
achieved when duplicating the tweet's text, to increase the weight of this
information in relation with the context information.
As can be seen comparing the previous results with the ones in Table 6 and
Table 7 the macro-F's obtained by us for our results were far better than the
ones provided by the organization. This happens because we used a di erent
way to evaluate the correction of our stance detector, checking the quantity of
right classi cations for all three classes, instead of only looking for the positive
and negative stances (discarding the neutral one) as done by organizers.</p>
      <p>C. Almendros, C. Cervantes</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>For this task, we have developed two models to classify tweets according to their
stance in two similar languages (Spanish and Catalan). Both were trained with
a LinearSVC classi er and the di erence was that on the second one we also
made use of the context to extract features.</p>
      <p>In the rst model (without context) we observed that using the stem of the words,
instead of the whole word, improves the accuracy of results, if these stems are
long enough. For this reason, one approach that could be tested, is to translate
one of the two corpus in order to work with the same language and extract the
features on the basis of a single language.</p>
      <p>Looking at the results of the second model, it is proved that the use of context is
relevant for this task. This can be seen in the table of results (Table 6 and Table
7) where this executions take a Macro-F of 0.3068 versus the 0.2315 obtained
without context.</p>
      <p>The good results obtained in IberEval denote that the use of this classi er along
with the data preprocessing techniques that we tried are a good election for
this task, but there is still a wide range of improvements that can be added to
increase the accuracy of our analyzer.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Taule</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rangel</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mart</surname>
            <given-names>M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosso</surname>
            <given-names>P.</given-names>
          </string-name>
          `
          <article-title>Overview of the Task on MultiModal Stance Detection in Tweets on Catalan #1Oct Referendum'</article-title>
          .
          <source>In Proceedings of the Third Workshop on Evaluation of Human Language Technologies for Iberian Languages (IberEval</source>
          <year>2018</year>
          ), Seville, 18
          <year>September 2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Taule</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mart</surname>
            ,
            <given-names>M.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rangel</surname>
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosso</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bosco</surname>
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patti</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          (
          <year>2017</year>
          )
          <article-title>Overview of the task on Stance and Gender Detection in Tweets on Catalan Independence at IberEval 2017</article-title>
          .
          <article-title>Notebook Papers of 2nd SEPLN Workshop on Evaluation of Human Language Technologies for Iberian Languages (IBEREVAL), Murcia</article-title>
          , Spain, September 19, CEUR Workshop Proceedings:
          <fpage>157</fpage>
          -
          <lpage>177</lpage>
          . CEUR-WS.org.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>3. scikit-learn: Machine Learning in Python http://scikit-learn.org</mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>4. NLTK: Natural Language Toolkit https://www.nltk.org/</mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>