<!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>Exploiting web-based collective knowledge for micropost normalisation</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Silvia Vazquez, Nuria Bel Universitat Pompeu Fabra Barcelona -</institution>
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The task of normalising user-generated content is a crucial step before analysing social media posts, particularly on Twitter. This paper presents a method for the morphological of tweets by the use of on-line and collectively developed resources, including Wikipedia and a SMS lexicon. The results obtained demonstrate that these resources are a valuable source of knowledge for generating the dictionaries used in the normalisation task.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction and objectives</title>
      <p>
        Microposts published on social media are
characterised by informality, brevity,
frequent grammatical errors and misspellings,
and by the use of abbreviations, acronyms,
and emoticons. These features add
additional di culties in text mining processes
that frequently make use tools designed for
dealing with texts which conform to the
canons of standard grammar and spelling
        <xref ref-type="bibr" rid="ref7">(Hovi
et al., 2013)</xref>
        .
      </p>
      <p>
        The micropost normalisation task
enhances the accuracy of NLP tools when
applied to short fragments of texts published
in social media, e.g., the syntactic
normalisation of tweets may improve the accuracy of
existing part-of-speech taggers
        <xref ref-type="bibr" rid="ref13 ref3">(Codina and
Atserias, 2012)</xref>
        .
      </p>
      <p>
        The collective knowledge freely available
on the Web, and particularly Wikipedia, has
been used in di erent NLP tasks, such as text
categorization
        <xref ref-type="bibr" rid="ref5">(Gabrilovich and Markovitch,
2006)</xref>
        , topic identi cation
        <xref ref-type="bibr" rid="ref4">(Coursey,
Mihalcea, and Moen, 2009)</xref>
        , measuring the
semantic similarity between texts
        <xref ref-type="bibr" rid="ref6">(Gabrilovich
and Markovitch, 2007)</xref>
        , and word sense
disambiguation
        <xref ref-type="bibr" rid="ref12">(Mihalcea, 2007)</xref>
        among others.
      </p>
      <p>
        This paper presents a technique for
morphological normalisation of microposts by the
use of two open data sources namely,
Wikipedia and the SMS dictionary of the Spanish
Association of Internet Users
        <xref ref-type="bibr" rid="ref2">(AUI, 2013)</xref>
        .
      </p>
      <p>The paper is structured as follows.
Section 2 describes the architecture and the
components of the system. Section 3 describes
the linguistic resources that we have reused
for constructing the normalisation tool.
Section 4 presents the evaluation results.
Finally, Section 5 presents the conclusions and
future lines of work.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Architecture and components of the system</title>
      <p>Figure 1 shows the process followed by the
micropost normaliser proposed. The speci c
components involved in the overall process
are described below.</p>
      <p>Standard
vocabulary</p>
      <p>Normalise Twitter
Metalanguage</p>
      <p>Element
Correct
OOV
words</p>
      <p>SMS
Dictionary</p>
      <p>OOV
word</p>
      <p>Twitter
metalanguage</p>
      <p>element
In vocabulary</p>
      <p>word
Classify OOV word</p>
      <p>Spell
Checker
Dictionary</p>
      <p>Correct</p>
      <p>Variation
OOV
word
Check &amp; Correct</p>
      <p>Spell
OOV word</p>
      <p>Normalised
forms</p>
      <p>Concatenate</p>
      <p>Normalised Forms
Variation</p>
      <p>NoES</p>
      <p>Correct</p>
      <p>Normalised
Micropost
Micropost</p>
      <p>Tokenize</p>
      <p>Classify Tokens
This component receives the text to be
normalised and breaks it into words, Twitter
metalanguage elements (e.g., hash-tags, user
IDs), emoticons, URLs etc. The output (i.e.,
the list of tokens) is sent to the Token
Classi er component.
2.2</p>
      <sec id="sec-2-1">
        <title>Token Classi er</title>
        <p>The input of this component is the list of
tokens generated by the Tokeniser. It
classi es each of them into one of the following
categories:</p>
        <p>Twitter metalanguage elements (i.e.,
hash-tags, user IDs, RTs and URLs).
Such elements are detected by
matching regular expressions against the token
(e.g., if a token starts by the symbol
\#", then it is a hash-tag). Each token
classi ed in this category is sent to the
Twitter Metalanguage Normaliser
component.</p>
        <p>Words contained in a standard language
dictionary, excluding proper nouns.
Each token classi ed in this category is
sent to the Normalised Forms
Concatenator component.</p>
        <p>Out-Of-Vocabulary (OOV) words. They
are words not found in a standard
dictionary, neither are Twitter
metalanguage elements. Each token classi ed in
this category is sent to the OOV Word
Classi er component.
2.3</p>
      </sec>
      <sec id="sec-2-2">
        <title>OOV Word Classi er</title>
        <p>This component receives every token
previously classi ed as OOV by the Token
Classier and detects if it is correct, wrong, or
unknown. If the token is wrong, the component
returns the correct form of the token. The
OOV Word Classi er Component executes
the following process:
1. Firstly, the token is looked up in a
dictionary of correct OOV words. The
search disregards both case and accents.
(a) If an exact match of the token
is found in the dictionary (e.g.,
both forms are capitalised), then
the token is classi ed as Correct and
sent to the Normalised Forms
Concatenator component with no
variation.
(b) If the token is found with variations
of case or accentuation, then the
token is classi ed as Variation and
its correct form is sent to
Normalised Forms Concatenator
component.
(c) If the token is not found in the
dictionary, then the process continues
in step 2.
2. The token is looked up in a SMS
dictionary which contains tuples with the SMS
term and its corresponding correct form.
The search is case-unsensitive, and does
not consider accent marks.
(a) If the token is found in the SMS
dictionary, then it is classi ed as
Variation and its correct form is
retrieved and sent to Normalised</p>
        <p>Forms Concatenator component.
(b) If the token is not found in the
dictionary, then it is sent to the Spell</p>
        <p>Checker and Corrector component.
2.4</p>
      </sec>
      <sec id="sec-2-3">
        <title>Spell Checker and Corrector</title>
        <p>This component checks the spelling of the
token received and returns its correct form
when possible. To do so, it executes the
following process:
1. Firstly, the token is matched against
regular expressions to nd whether it
contains characters (or sequences of
characters) repeated more than twice (e.g.,
\loooooollll" and \jajaja").
(a) If the token contains repeated
characters (or sequences of characters),
the repeated ones are removed (e.g.,
\lol", and \ja"), and the resulting
form is sent back to the OOV Word
Classi er, since the new form may
be included into the correct words
set.
(b) If the token does not contain
repeated characters (or sequences of
characters), then the process
continues in step 2.
2. The token is sent to an existing spell
checking and correction implementation
reused by this component.
(a) If the spell is correct, the token
is classi ed as Correct and sent
to the Normalised Forms
Concatenator component without a
variation.
(b) If the spell is not correct, the token
is classi ed as Variation, and the</p>
        <p>rst correct form returned by the
spelling corrector is sent to
Normalised Forms Concatenator.
(c) If the spell checker is not able to
propose a correct form, the token
is classi ed as Unknown and sent
to the Normalised Forms
Concatenator without a variation.
2.5</p>
      </sec>
      <sec id="sec-2-4">
        <title>Twitter Metalanguage</title>
      </sec>
      <sec id="sec-2-5">
        <title>Normaliser</title>
        <p>
          This component performs a syntactic
normalisation of Twitter meta-language elements.
Speci cally, it executes a set of rules,
previously proposed by
          <xref ref-type="bibr" rid="ref11">(Kaufmann and Jugal,
2010)</xref>
          .
        </p>
        <p>(1) Remove the sequence of characters
\RT" followed by a mention to a Twitter
user (marked by the symbol \@") and,
optionally, by a colon punctuation mark; (2)
Remove user IDs that are not preceded by
a coordinating or subordinating conjunction,
a preposition, or a verb; (3) Remove the
word \via" followed by a user mention at
the end of the tweet; (4) Remove all the
hash-tags found at the end of the tweet; (5)
Remove all the \#" symbol from the
hashtags that are maintained; (6) Remove all
the hyper-links contained within the tweet;
(7) Remove ellipses points that are at the
end of the tweet, followed by a hyper-link;
(8) Replace underscores with blank spaces;
(9) Divide camel-cased words in multiple
words (e.g., \BarackObama" is converted to
\Barack Obama").
2.6</p>
      </sec>
      <sec id="sec-2-6">
        <title>Normalised Forms</title>
      </sec>
      <sec id="sec-2-7">
        <title>Concatenator</title>
        <p>This component receives the normalised form
of each token, and amends the micropost.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Resources employed</title>
      <p>The system described makes use of the
following resources.</p>
      <p>
        We use Freeling
        <xref ref-type="bibr" rid="ref13 ref3">(Padro and Stanilovsky,
2012)</xref>
        for microposts tokenisation. Its speci c
tokenization rules and its user map module
were adapted for dealing with smileys and
particular elements typically used in Twitter,
such as hash-tags, RTs, and user IDs.
      </p>
      <p>In addition, we use the POS-tagging
module of Freeling within the Token Classi er
component. As we deactivate Freeling's
probability assignment and unknown word
guesser module, all the words which are not
contained in Freeling's POS-tagging
dictionary are not marked with a tag and considered
as OOV words. Our standard vocabulary is,
thus, the Freeling dictionary itself.</p>
      <p>
        We have populated the correct OOV
words dictionary (used by the OOV Word
Classi er component) by making use of the
list of articles' titles from Wikipedia
        <xref ref-type="bibr" rid="ref15">(Wikipedia, 2013)</xref>
        . To speed-up the process of
querying the 2,447,932 Wikipedia articles'
titles, we uploaded them to a HBASE store
        <xref ref-type="bibr" rid="ref1">(Apache, 2013)</xref>
        .
      </p>
      <p>
        In order to increase the coverage of the
correct OOV words dictionary, we
incorporated into it a list of rst names from the
Spanish National Institute of Statistics
        <xref ref-type="bibr" rid="ref8">(INE,
2013)</xref>
        . This list contains 18,679 male names
and 19,817 female names.
      </p>
      <p>
        Additionally, we have populated the SMS
dictionary and its corresponding correct
forms, from the SMS dictionary of the
Spanish Association of Internet Users
        <xref ref-type="bibr" rid="ref2">(AUI, 2013)</xref>
        ,
which contains 53,281 entries for Spanish.
      </p>
      <p>
        Finally, the Spell Checker and Corrector
component makes use of Jazzy
        <xref ref-type="bibr" rid="ref9">(Jazzy, 2013)</xref>
        ,
an open-source Java library. For the creation
of the spell checker dictionary used by Jazzy,
we made use of the Spanish and Mexican
dictionaries available on JazzyDicts
        <xref ref-type="bibr" rid="ref10">(JazzyDicts, 2013)</xref>
        . The resulting dictionary
contains 683,436 terms.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Settings and evaluation</title>
      <p>The evaluation of the technique previously
described was done by using two
development corpora and a test corpus provided by
the organisation of the Tweet Normalisation
Workshop at SEPLN 2013. Speci cally, we
evaluated the performance of the OOV
identi cation, classi cation and correction tasks.
The accuracy of the normalization task for
the Twitter metalanguage elements was not
evaluated since it was out of the scope of the
workshop challenge.</p>
      <p>Table 1 shows the results of the
evaluation, including the size of each evaluation
corpus (column 2), the precision obtained by
using either Wikipedia or the SMS dictionary
separately (columns 3 and 4 respectively),
and the overall precision achieved by
exploiting both dictionaries (column 5).</p>
      <p>As Table 1 re ects, both dictionaries help
to improve the nal precision score, being
the SMS dictionary the one which
contributes the most. This can be explained with
the coverage of OOV words by each of the
dictionaries, which is shown in Table 2. The</p>
      <sec id="sec-4-1">
        <title>Corpus</title>
        <p>Devel. 1
Devel. 2
Test</p>
      </sec>
      <sec id="sec-4-2">
        <title>Wikipedia</title>
        <p>0.336
0.317
0.361</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusions and future work</title>
      <p>We presented a method for tweet
normalisation that relies on existing web resources
collectively developed, nding that such
resources, useful for many NLP tasks, are also
valid for the task of micropost normalisation.</p>
      <p>With respect to the future lines of work,
we plan to adapt the normaliser to new
languages by the incorporation of the
corresponding dictionaries and improving the
existing lexicons by the use of more available
resources, such as the anchor texts from
intra wiki links.</p>
      <p>
        Additionally, we plan to improve the
normalization of multiword expressions, as
different words should be transformed in just
one (e.g., \a cerca de" should be
transformed into \acerca de"), as well as cases
where joined words should be splitted (e.g.
\realmadrid") by using existing word
breaking techniques, such as the one described in
        <xref ref-type="bibr" rid="ref14">(Wang, Thraser, and Hsu, 2011)</xref>
        .
      </p>
      <p>Finally, we will study how the
normalisation process a ects to di erent opinion
mining tasks, including sentiment analysis and
topic identi cation.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgements</title>
      <p>This research is partially supported by the
Spanish Centre for the Development of
Industrial Technology under the CENIT
program, project CEN-20101037, \Social
Media" (http://www.cenitsocialmedia.es).
We are very grateful to AUI (Asociacion
de Usuarios de Internet) for facilitating the
textese dictionary used in this work to us.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Apache</surname>
          </string-name>
          .
          <year>2013</year>
          . HBase. http://hbase. apache.org. [Online; accessed 25-
          <fpage>Jul2013</fpage>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>AUI.</surname>
          </string-name>
          <year>2013</year>
          . Asociacion de Usuarios de Internet. http://aui.es. [Online; accessed 24-July-2013].
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Codina</surname>
            , Joan and
            <given-names>Jordi</given-names>
          </string-name>
          <string-name>
            <surname>Atserias</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>What is the text of a tweet? In Proceedings of @NLP can u tag #user generated content?! via lrecconf</article-title>
          .org, Istanbul, Turkey, May. ELRA.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Coursey</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Mihalcea</surname>
          </string-name>
          , and
          <string-name>
            <given-names>W.</given-names>
            <surname>Moen</surname>
          </string-name>
          .
          <year>2009</year>
          .
          <article-title>Using encyclopedic knowledge for automatic topic identi cation</article-title>
          .
          <source>In Proc. of the Thirteenth Conference on Computational Natural Language Learning</source>
          , pages
          <volume>210</volume>
          {
          <fpage>218</fpage>
          .
          <article-title>Association for Computational Linguistics</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Gabrilovich</surname>
            , E. and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Markovitch</surname>
          </string-name>
          .
          <year>2006</year>
          .
          <article-title>Overcoming the brittleness bottleneck using Wikipedia: Enhancing text categorization with encyclopedic knowledge</article-title>
          .
          <source>In Proc. of the 21st National Conference on Arti cial Intelligence</source>
          , volume
          <volume>2</volume>
          , page 1301. Menlo Park, CA; Cambridge, MA; London; AAAI Press; MIT Press;
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Gabrilovich</surname>
            , E. and
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Markovitch</surname>
          </string-name>
          .
          <year>2007</year>
          .
          <article-title>Computing semantic relatedness using wikipedia-based explicit semantic analysis</article-title>
          .
          <source>In Proc. of the 20th Int. Joint Conference on Arti cial Intelligence</source>
          , pages
          <fpage>6</fpage>
          {
          <fpage>12</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Hovi</surname>
            , Eduard, Vita Markman, Craig Martell, and
            <given-names>David</given-names>
          </string-name>
          <string-name>
            <surname>Uthus</surname>
          </string-name>
          .
          <year>2013</year>
          .
          <article-title>Analyzing microtext</article-title>
          .
          <source>In Papers from the 2013 AAAI Spring Symposium. Association for the Advancement of Arti cial Intelligence</source>
          , March.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>INE.</surname>
          </string-name>
          <year>2013</year>
          .
          <article-title>INEbase: Operaciones estad sticas: clasi cacion por temas</article-title>
          . http: //www.ine.es/inebmenu/indice.htm. [Online; accessed 8-April-2013].
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Jazzy</surname>
          </string-name>
          .
          <year>2013</year>
          . Jazzy. http://jazzy. sourceforge.net. [Online; accessed 25- Jul-2013].
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>JazzyDicts.</surname>
          </string-name>
          <year>2013</year>
          . JazzyDicts. http://sourceforge.net/projects/ jazzydicts. [Online; accessed 25-
          <fpage>Jul2013</fpage>
          ].
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>Kaufmann</surname>
            , Max and
            <given-names>Kalita</given-names>
          </string-name>
          <string-name>
            <surname>Jugal</surname>
          </string-name>
          .
          <year>2010</year>
          .
          <article-title>Syntactic normalization of twitter messages</article-title>
          .
          <source>In Proceedings of the International Conference on Natural Language Processing (ICON-2010).</source>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          <string-name>
            <surname>Mihalcea</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <year>2007</year>
          .
          <article-title>Using wikipedia for automatic word sense disambiguation</article-title>
          .
          <source>In Proc. of NAACL HLT</source>
          , volume
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          <string-name>
            <surname>Padro</surname>
            , Llu s
            <given-names>and Evgeny</given-names>
          </string-name>
          <string-name>
            <surname>Stanilovsky</surname>
          </string-name>
          .
          <year>2012</year>
          .
          <article-title>Freeling 3.0: Towards wider multilinguality</article-title>
          .
          <source>In Proceedings of the Language Resources and Evaluation Conference (LREC</source>
          <year>2012</year>
          ), Istanbul, Turkey, May. ELRA.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          <string-name>
            <surname>Wang</surname>
            , Kuansan,
            <given-names>Christopher</given-names>
          </string-name>
          <string-name>
            <surname>Thraser</surname>
          </string-name>
          , and
          <string-name>
            <surname>Paul</surname>
          </string-name>
          Bo-June Hsu.
          <year>2011</year>
          .
          <article-title>Web Scale NLP: A Case Study on URL Word Breaking</article-title>
          .
          <source>In Proceedings of the 20th international conference on World Wide Web</source>
          , pages
          <volume>357</volume>
          {
          <fpage>366</fpage>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          <string-name>
            <surname>Wikipedia</surname>
          </string-name>
          .
          <year>2013</year>
          .
          <article-title>Wikipedia:Database download</article-title>
          . http://en.wikipedia.org/ wiki/Wikipedia:Database_download. [Online; accessed 23-May-2013].
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>