<!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>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Detecting Stance in Czech News Commentaries</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Tomáš Hercig</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Krejzl</string-name>
          <email>krejzl@kiv.zcu.cz</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Barbora Hourová</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Josef Steinberger</string-name>
          <email>steinberger@kiv.zcu.cz</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ladislav Lenc</string-name>
          <email>llenc@kiv.zcu.cz</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science and Engineering, Faculty of Applied Sciences, University of West Bohemia</institution>
          ,
          <addr-line>Univerzitní 8, 306 14 Plzenˇ</addr-line>
          ,
          <country country="CZ">Czech Republic</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>NTIS-New Technologies for the Information Society, Faculty of Applied Sciences, University of West Bohemia</institution>
          ,
          <addr-line>Technická 8, 306 14 Plzenˇ</addr-line>
          ,
          <country>Czech</country>
          <addr-line>Republic nlp.kiv.zcu.cz</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2017</year>
      </pub-date>
      <volume>1885</volume>
      <fpage>176</fpage>
      <lpage>180</lpage>
      <abstract>
        <p>This paper describes our system created to detect stance in online discussions. The goal is to identify whether the author of a comment is in favor of the given target or against. We created an extended corpus of Czech news comments and evaluated a support vector machines classifier, a maximum entropy classifier, and a convolutional neural network.</p>
      </abstract>
      <kwd-group>
        <kwd>Stance Detection</kwd>
        <kwd>Opinion Mining</kwd>
        <kwd>Sentiment Analysis</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>Stance detection has been defined as automatically
determining from text whether the author is in favor of the given
target entity (person, movement, topic, proposition, etc.),
against it, or whether neither inference is likely.</p>
      <p>
        Stance detection can be viewed as a subtask of opinion
mining, similar to sentiment analysis. In sentiment
analysis, systems determine whether a piece of text is positive,
negative, or neutral. However, in stance detection, systems
predict author’s favorability towards a given target, which
may not even be explicitly mentioned in the text.
Moreover, the text may express positive opinion about an entity
contained in the text, but one can also infer that the
author is against the defined target (an entity or a topic). It
has been found difficult to infer stance towards a target of
interest from tweets that express opinion towards another
entity[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>There are many applications which could benefit from
the automatic stance detection, including information
retrieval, textual entailment, or text summarization, in
particular opinion summarization.</p>
      <p>We created an extended corpus for stance detection for
Czech and evaluate standard top-performing models on
this dataset and report the results.</p>
      <p>The rest of this paper is organized as follows. We
summarise the releated work in Section 2). The creation of the
used corpus is covered by Section 3. Our approach is
described in Section 4. The convolutional neural network
architecture is depicted in Section 5. Evaluation and results
discussion is in Section 6 and future work is proposed in
Section 7.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        The SemEval-2016 task Detecting Stance in Tweets1 [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
had two subtasks: supervised and weakly supervised
stance identification.
      </p>
      <p>The goal of both subtasks was to classify tweets into
three classes (In favor, Against, and Neither). The
performance was measured by the macro-averaged F1-score
of two classes (In favor and Against). This evaluation
measure does not disregard the Neither class, because
falsely labelling the Neither class as In favor or Against
still affects the scores. We use the same evaluation metric
(F1_2), accuracy, and the F1-score of all classes (F1_3).</p>
      <p>The supervised task (subtask A) tested stance towards
five targets: Atheism, Climate Change is a Real Concern,
Feminist Movement, Hillary Clinton, and Legalization of
Abortion. Participants were provided with 2814 labeled
training tweets for the five targets.</p>
      <p>A detailed distribution of stances for each target is given
in Table 1. The distribution is not uniform and there is
always a preference towards a certain stance (e.g., 63%
tweets about Atheism are labeled as Against). The
distribution reflects the real-world scenario, in which a majority of
people tend to take a similar stance. It also depends on the
source of the data. For example, in the case of
Legalization of Abortion, we can assume that the distribution will
be significantly different in religious communities than in
atheistic communities.</p>
      <p>For the weakly supervised task (subtask B), there were
no labeled training data but participants could use a large
number of tweets related to the single target: Donald
Trump.</p>
      <p>The best results for subtask A were achieved by an
advanced baseline using SVM classifier with unigrams,
bigrams, and trigrams along with character n-grams (2, 3, 4,
and 5-gram) as features.</p>
      <p>
        Wei et al. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] present the best result for subtask B and
close second team in subtask A of the SemEval stance
detection task. They used a convolutional neural network
(CNN) designed according to Kim [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. It utilizes the same
kernel widths and numbers of filters as proposed by Kim.
Pre-trained word2vec embeddings are used for
initialization of the embedding layer. The main difference from
1http://alt.qcri.org/semeval2016/task6/
Kim’s network is the used voting scheme. During each
training epoch, several iterations are selected to predict
the test set. At the end of each epoch, the majority voting
scheme is applied to determine the label for each sentence.
This is done over a specified number of epochs and finally
the same voting is applied to the results of each epoch. The
train and test data are separated according to the stance
targets.
      </p>
      <p>
        The initial research on Czech data has been done
in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. They collected 1,460 comments from a Czech news
server2 related to two topics – Czech president – “Miloš
Zeman” (181 In favor, 165 Against, and 301 Neither) and
“Smoking Ban in Restaurants” (168 In favor, 252 Against,
and 393 Neither).
      </p>
      <p>The results with maximum entropy classifier were
“Miloš Zeman” F 1_23 = 0.435, F1_34 = 0.52 and
“Smoking Ban in Restaurants” F 1_23 = 0.456, F1_34 = 0.54.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Dataset</title>
      <p>
        We extended the dataset from [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], nearly quadrupling its
size. The detailed annotation procedure was described in
master thesis [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] in Czech. The whole corpus was
annotated by three native speakers. The distribution of stances
for each target is given in Table 2.
      </p>
      <p>The target entity “Miloš Zeman” part of the dataset
was annotated by one annotator and then 302 comments
were also labeled by a second annotator to measure
interannotator agreement. The target entity “Smoking Ban in
Restaurants” part of the dataset was independently
annotated by two annotators. To resolve conflicts a third
annotator was used and then the majority voting scheme was
applied to the gold label selection. The inter-annotator
2www.idnes.cz
3F1 – (In favor/Against)
4F1 – (In favor/Against/Neither)
agreement (Cohen’s κ) was calculated between two
annotators on 2,203 comments. The finalκ is 0.579 for “Miloš
Zeman” (2,638 comments) and 0.423 for “Smoking Ban
in Restaurants” (2,785 comments).</p>
      <p>The inter-annotator agreement for the target “Smoking
Ban in Restaurants” was quite low, thus we selected a
subset of the “Smoking Ban in Restaurants” part of dataset,
where the original two annotators assigned the same label
as the gold dataset (1,388 comments).</p>
      <p>The corpus is available for research purposes at http:
//nlp.kiv.zcu.cz/research/sentiment#stance.
4</p>
    </sec>
    <sec id="sec-4">
      <title>The Approach Overview</title>
      <p>
        We evaluate common supervised classifiers, namely
maximum entropy classifier and support vector machines
(SVM) classifiers from Brainy[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We also experimented
with top-performing models for sentiment analysis and
stance detection in particular convolutional neural
network. The models were trained separately for each target
entity.
4.1
      </p>
      <sec id="sec-4-1">
        <title>Preprocessing</title>
        <p>
          The same preprocessing has been done for all datasets. We
use UDPipe [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] with Czech Universal Dependencies 1.2
models for tokenization, POS tagging and lemmatization.
Stemming has been done by the HPS stemmer [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
Preliminary experiments have shown that lower-casing the data
achieves slightly better results, thus all the experiments are
performed with lower-cased data.
4.2
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>Features</title>
        <p>We selected features commonly used in similar natural
language processing tasks e.g. sentiment analysis. The
following baseline features were used:</p>
        <p>Character n-gram – Separate binary feature for each
character n-gram in the text. We do it separately for
different orders n ∈ {3, 5, 7}.5
Bag of words – Word occurrences in the text.
Bag of adverbs – Bag of adverbs from the text.
Bag of adjectives – Bag of adjectives from the text.
Negative emoticons – We used a list of negative
emoticons6 specific to the news commentaries source. The
feature captures the presence of an emoticon within
the text.</p>
        <p>
          Word shape – We assign words into one of 24 classes7
similar to the function specified in [
          <xref ref-type="bibr" rid="ref1">1</xref>
          ].
        </p>
        <p>We experimented with additional features such as
ngrams, text length, etc. but using these features did not
lead to better results. Bag of words, adjectives and adverbs
use the word lemma or stem. We report results for various
feature combinations and perform an ablation study of the
best feature set.</p>
        <p>5Note that words e.g. emoticon “:-)” would be separated by spaces
during tokenization resulting in “: - )”.</p>
        <p>
          6 ":-(", ";-(", ":-/", "8-o", ";-e", ";-O", "Rv"
7We use edu.stanford.nlp.process.WordShapeClassifier [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ] with the
WORDSHAPECHRIS1 setting.
5
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Convolutional Neural Network</title>
      <p>
        The architecture of the proposed CNN is depicted in
Figure 1. We use similar architecture to the one proposed
in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The input layer of the network receives a sequence
of word indices from a dictionary. The input vector must
be of a fixed length. We solve this issue by padding
the input sequence to the maximum text length occurring
in the train data denoted M. A special “PADDING”
token is used for this purpose. The embedding layer maps
the word indices to the real-valued embedding vectors of
length L. The convolutional layer consists of NC kernels
containing k × 1 units and uses rectified linear unit (ReLU)
activation function. The convolutional layer is followed
by a max-pooling layer and dropout for regularization.
The max-pooling layer takes maxima from patches of size
(M − k + 1) × 1. The output of the max-pooling layer is fed
into a fully-connected layer. Follows the output layer with
3 neurons which corresponds to the number of classes. It
has softmax activation function.
      </p>
      <p>
        In our experimental setup we use the embedding
dimensionality L = 300 and NC = 40 convolutional kernels with
5 × 1 units. The penultimate fully-connected layer
contains 256 neurons. We train the network using adaptive
moment estimation optimization algorithm [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and
crossentropy is used as the loss function.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Results</title>
      <p>We used 20-fold cross-validation for models evaluation to
compensate the small size of dataset and to prevent
overfitting.</p>
      <p>
        For all experiments we report the macro-averaged
F1score of two classes F1_2 (In favor and Against) – the
official metric for the SemEval-2016 stance detection
task[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], accuracy, and the macro-averaged F1-score of all
three classes (F1_3).
      </p>
      <p>
        Table 3 shows results for each dataset. CNN-1 is
described in Section 5 and CNN-2 is the architecture
proposed in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. We achieved the best results on average with
the maximum entropy classifier with the feature set
consisting of lemma unigrams, word shape, bag of adjectives,
bag of adverbs, and character n-grams (n ∈ {3, 5, 7}). We
further performed ablation study of this combination of
features. In Table 3 the bold numbers denote five best
results for given column and in the ablation study they
denote features with no gain in the given column (i.e. feature
sets with no loss).
      </p>
      <p>Both CNNs achieved good results, CNN-2 was slightly
better, this is not surprising as it was designed for
sentiment analysis while CNN-1 was previously used for
document classification. Surprisingly stem worked better than
lemma as the word input for both neural networks. The
ablation study shows that word shape, bag of adjectives, and
bag of adverbs features present little to no information gain
for the classifier, thus these features should be discarded or
readjusted to better capture the stance in comments.
However, the selected feature combination still performed
reasonably well.</p>
      <p>The best results for the target “Miloš Zeman” were
achieved by CNN-2 in terms of accuracy and F 1_3,
F 1_2 was the highest for maximum entropy classifier with
lemma unigrams, word shape, bag of adjectives, and
character n-grams. The entity “Smoking Ban in Restaurants”
was best assessed by SVM with the selected feature set for
all data and by maximum entropy classifier with the same
feature set for the gold dataset.</p>
      <p>Character n-grams alone present a strong baseline for
this task.
7</p>
    </sec>
    <sec id="sec-7">
      <title>Conclusion</title>
      <p>The paper describes our system created to detect stance in
online discussions. We evaluated top-performing models
used for sentiment analysis and stance detection. We
conducted feature ablation and concluded that more features
still need to be readjusted for this task.</p>
      <p>The used features are very common in natural language
processing, however even in the SemEval-2016 stance
detection task, the best results were achieved by commonly
used features. This suggests that stance detection is still in
its infancy and more gain can be expected in the future as
researchers better understand this new task.</p>
      <p>In future work, we plan to extend the dataset to other
domains, include more target entities and comments, which
will let us draw stronger conclusions and move the task
closer to the industrial expectations. Given that there are
vast amounts of news comments related to highly
discussed topics, we will study stance summarization which
should aim at identifying the most important arguments.
Another interesting experiment would be supplementing
the dataset with sentiment annotation.</p>
    </sec>
    <sec id="sec-8">
      <title>Acknowledgments</title>
      <p>This publication was supported by the project LO1506 of
the Czech Ministry of Education, Youth and Sports
under the program NPU I., by Grant No. SGS-2016-018
Data and Software Engineering for Advanced
Applications and by project MediaGist, EU’s FP7 People
Programme (Marie Curie Actions), no. 630786.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Daniel</surname>
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Bikel</surname>
            , Scott Miller, Richard Schwartz, and
            <given-names>Ralph</given-names>
          </string-name>
          <string-name>
            <surname>Weischedel</surname>
          </string-name>
          .
          <article-title>Nymble: a high-performance learning name-finder</article-title>
          .
          <source>In Proceedings of the fifth conference on Applied natural language processing</source>
          , pages
          <fpage>194</fpage>
          -
          <lpage>201</lpage>
          . Association for Computational Linguistics,
          <year>1997</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Tomáš</given-names>
            <surname>Brychcín</surname>
          </string-name>
          and
          <string-name>
            <given-names>Miloslav</given-names>
            <surname>Konopík</surname>
          </string-name>
          .
          <article-title>Hps: High precision stemmer</article-title>
          .
          <source>Information Processing &amp; Management</source>
          ,
          <volume>51</volume>
          (
          <issue>1</issue>
          ):
          <fpage>68</fpage>
          -
          <lpage>91</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Barbora</given-names>
            <surname>Hourová</surname>
          </string-name>
          .
          <article-title>Automatic detection of argumentation</article-title>
          .
          <source>Master's thesis</source>
          , University of West Bohemia,
          <source>Faculty of Applied Sciences</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Yoon</given-names>
            <surname>Kim</surname>
          </string-name>
          .
          <article-title>Convolutional neural networks for sentence classification</article-title>
          .
          <source>In Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP)</source>
          , pages
          <fpage>1746</fpage>
          -
          <lpage>1751</lpage>
          , Doha, Qatar,
          <year>October 2014</year>
          .
          <article-title>Association for Computational Linguistics</article-title>
          . URL http://www.aclweb. org/anthology/D14-1181.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Diederik</given-names>
            <surname>Kingma</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jimmy</given-names>
            <surname>Ba</surname>
          </string-name>
          .
          <article-title>Adam: A method for stochastic optimization</article-title>
          .
          <source>arXiv preprint arXiv:1412.6980</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Michal</given-names>
            <surname>Konkol</surname>
          </string-name>
          .
          <article-title>Brainy: A machine learning library</article-title>
          . In Leszek Rutkowski, Marcin Korytkowski, Rafal Scherer, Ryszard Tadeusiewicz, Lotfi Zadeh, and Jacek Zurada, editors,
          <source>Artificial Intelligence and Soft Computing</source>
          , volume
          <volume>8468</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>490</fpage>
          -
          <lpage>499</lpage>
          . Springer International Publishing,
          <year>2014</year>
          . ISBN 978-3-
          <fpage>319</fpage>
          -07175-6.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Peter</given-names>
            <surname>Krejzl</surname>
          </string-name>
          , Barbora Hourová, and
          <string-name>
            <given-names>Josef</given-names>
            <surname>Steinberger</surname>
          </string-name>
          .
          <article-title>Stance detection in online discussions</article-title>
          .
          <source>In Mária Bieliková and Ivan Srba</source>
          , editors,
          <source>WIKT &amp; DaZ 2016 11th Workshop on Intelligent and Knowledge Oriented Technologies 35th Conference on Data and Knowledge</source>
          , pages
          <fpage>211</fpage>
          -
          <lpage>214</lpage>
          .
          <article-title>Vydatel'stvo STU, Vazovova 5</article-title>
          , Bratislava, Slovakia,
          <year>November 2016</year>
          .
          <source>ISBN 978-80-227-4619-9.</source>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Ladislav</given-names>
            <surname>Lenc</surname>
          </string-name>
          and
          <string-name>
            <given-names>Pavel</given-names>
            <surname>Král</surname>
          </string-name>
          .
          <article-title>Deep neural networks for czech multi-label document classification</article-title>
          .
          <source>CoRR, abs/1701.03849</source>
          ,
          <year>2017</year>
          . URL http://arxiv.org/ abs/1701.03849.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Christopher</surname>
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Manning</surname>
            , Mihai Surdeanu, John Bauer, Jenny Finkel,
            <given-names>Steven J.</given-names>
          </string-name>
          <string-name>
            <surname>Bethard</surname>
          </string-name>
          , and
          <string-name>
            <surname>David McClosky</surname>
          </string-name>
          .
          <article-title>The Stanford CoreNLP natural language processing toolkit. In Association for Computational Linguistics (ACL) System Demonstrations</article-title>
          , pages
          <fpage>55</fpage>
          -
          <lpage>60</lpage>
          ,
          <year>2014</year>
          . URL http://www.aclweb. org/anthology/P/P14/P14-5010.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Saif</surname>
            <given-names>Mohammad</given-names>
          </string-name>
          , Svetlana Kiritchenko, Parinaz Sobhani, Xiaodan Zhu, and Colin Cherry.
          <article-title>Semeval2016 task 6: Detecting stance in tweets</article-title>
          .
          <source>In Proceedings of the 10th International Workshop on Semantic Evaluation (SemEval-2016)</source>
          , pages
          <fpage>31</fpage>
          -
          <lpage>41</lpage>
          , San Diego, California, June 2016.
          <article-title>Association for Computational Linguistics</article-title>
          . URL http://www.aclweb. org/anthology/S16-1003.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Milan</surname>
            <given-names>Straka</given-names>
          </string-name>
          , Jan Hajicˇ, and Jana Straková.
          <article-title>UDPipe: trainable pipeline for processing CoNLL-U files performing tokenization, morphological analysis, pos tagging and parsing</article-title>
          .
          <source>In Proceedings of the Tenth International Conference on Language Resources and Evaluation (LREC'16)</source>
          , Paris, France, May
          <year>2016</year>
          .
          <article-title>European Language Resources Association (ELRA)</article-title>
          .
          <source>ISBN 978-2-9517408-9-1.</source>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Wan</surname>
            <given-names>Wei</given-names>
          </string-name>
          , Xiao Zhang, Xuqin Liu, Wei Chen, and
          <string-name>
            <given-names>Tengjiao</given-names>
            <surname>Wang</surname>
          </string-name>
          . pkudblab at semeval
          <article-title>-2016 task 6 : A specific convolutional neural network system for effective stance detection</article-title>
          .
          <source>In Proceedings of the 10th International Workshop on Semantic Evaluation (SemEval-2016)</source>
          , pages
          <fpage>384</fpage>
          -
          <lpage>388</lpage>
          , San Diego, California, June 2016.
          <article-title>Association for Computational Linguistics</article-title>
          . URL http://www.aclweb. org/anthology/S16-1062.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>