<!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>Text Alignment Module in CoReMo 2.1 Plagiarism Detector Notebook for PAN at CLEF 2013</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Diego A. Rodríguez Torrejón</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>José Manuel Martín Ramos</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universidad de Huelva</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>This paper describes the process and basics of the Text Alignment Module into the CoReMo 2.1 Plagiarism Detector, which has won the Plagiarism Detection Text Alignment task in PAN-2013 edition, for both evaluation criteria of efficacy and efficiency, achieving the best detections and the best runtime too. Its high detection efficacy is mainly due to the special features of the contextual n-grams, evolved to surrounding context and oddeven skip n-grams. When combined all together, the matching opportunity increases, especially when translations or paraphrases happen, but keeping its highly discriminative feature that simplifies the accurate location for plagiarized sections. The optimized process by high performance C/C++ multicore programming techniques, has yielded the best speed, but the tests were arranged in single core machines, so you can expect much better runtime.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Plagiarism Detection is one of the fields that is awakening interest in the areas of
Natural Language Processing and Information Retrieval. The various PAN1 editions
are continuously enforcing the improvement of existing techniques, compiling corpus
with cases more realistic and difficult to detect, and developing systems, work plans
and tasks to design and analyze the individual impact of proposals for the different
subtasks about the performance obtained, the necessary hardware resources and time
spent, thus facilitating the subsequent combination and improvement proposals in
search of the ultimate plagiarism detector. CoReMo [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] is a
Plagiarism Detection System that was initially designed to take part in PAN issues,
which has achieved the highest performance results, and also highlighted hardware
requirements and processing speed (one of the main goals for its developers).
However, CoReMo uses pruning techniques to avoid the comparison of the full
suspicious document with any source document if not detected evidence of plagiarism
by its High Accuracy Information Retrieval System (HAIRS) and the Reference
Monotony Pruning strategy (RM), delimiting the suspected plagiarized section before
making any comparisons with the suspicious document. CoReMo started to perform
1 http://pan.webis.de
exhaustive full documents pair comparisons in the PAN-12 issue as a new feature.
The detection capability, when compared to previous edition, was then greatly
improved by extending the n-grams model used (Contextual N-grams CTnG) to
Surrounding Context N- grams (SCnG) [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], and the use of a post-processing to
join closed detections (Granularity Filter). The new Text Alignment capability design
looks for the maximal computational efficiency, usual in former CoReMo versions.
      </p>
      <p>New improvements were arranged this year, extending again the model by
OddEven N- grams (OEnG), a best self-adaptive parameters tunning and multi-core
redesign (the competition doesn't take advantage of that feature). A latter bug fixing
achieved a better Plagdet (0.82827) than the official one (0,82220).</p>
    </sec>
    <sec id="sec-2">
      <title>2 Surrounding Context N-grams and Odd-Even N-Grams</title>
      <p>
        One of the most important innovations in the CoReMo last year's version was that the
documents were modeled by extending the concept of former Contextual N- grams
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] (CTnG: case folding, stopwords and short length words removal, stemming and
internal sort of n-gram components) to the Surrounding Context N- grams (SCnG) [
        <xref ref-type="bibr" rid="ref12 ref4">4,
12</xref>
        ], a special type of skip n- grams obtained by excluding the second or the last but
one from a group of n+1 relevant terms joined to the previously explained CTnG
process. The new CoReMo 2.1 also includes in the model another skip n-grams type,
from odd or even relevant words (OEnG) processed in same CTnG way.
      </p>
      <p>For instance, new modeling for “The quick brown fox jumps over the lazy dog”:
1. quick brown fox → brown_fox_quick (1st direct CT3G way)
2. quick brown jumps → brown_jump_quick (1st left-hand SC3G way)
3. quick fox jumps → fox_jump_quick (1st right-hand SC3G way)
4. quick fox lazy → laz_fox_quick (1st OE3G way)
5. brown fox jumps → brown_fox_jump (2nd direct CT3G way)
6. brown fox lazy → brown_fox_laz (2nd left-hand SC3G way)
7. brown jumps lazy → brown_jump_laz (2nd right-hand SC3G way)</p>
      <sec id="sec-2-1">
        <title>8. brown jumps dog → brown_dog_jumps ( 2nd OE3G way)</title>
      </sec>
      <sec id="sec-2-2">
        <title>9. fox jumps lazy → fox_jump_laz (3th direct CT3G way) 10. fox jumps dog → dog_fox_jump (3nd left-hand SC3G way) 11. fox lazy dog → dog_laz_fox (3th right-hand SC3G way) 12. jumps lazy dog → dog_jump_laz (4th direct CT3G way)</title>
        <p>The including of SCnG and OEnG gets four times as many n-grmas (and matching
chances) than the original CTnG method. It offers more possibilities to tackle
obfuscation cases with almost the same practical high precision in the process. Once
again, a higher n-grams quantity obtained acts as a magnifier effect in the analysis.</p>
        <p>
          The memory requirements and processing time have obviously increased, but it
improves dramatically the performance. Including these skip n-grams almost doesn't
decreases the precision. N-gram idf studies on PAN-PC-2009 / 2010 / 2011 (table 1)
corpora [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ] show its exclusivity ratio almost unaltered.
        </p>
        <p>All n-grams are compared without a difference in the way they are created. The
SCnG and OEnG are especially useful to improve the CTnG effectiveness when
words changes (synonyms, negated antonyms, given names, translation or
orthographic errors, characters changed by other UTF code having the same
aspect, ...), new word insertions (enriched sentences) or removal (summarized
sentences). The sentence reordering due to translation or changing from passive to
active forms or vice versa are also supported.</p>
        <p>
          This way gets more matching, especially for paraphrased or translated cases, to
identify a possible plagiarism (almost as when using lower grade n-grams, but with
more precise disambiguation instead). However, it gets more unconnected short
detections which require to be joined. A distance joining step, named Granularity
ratio
1.0000
0.8955
0.0642
0.0186
0.0080
0.0000
0.0000
0.0000
0.0000
Filter (GF) gets improved scores. Both SCnG and GF modes combined achieves
about 45% best Plagdet score than when using direct CTnG mode. The inclusion of
OEnG in the model gets a small but welcome improvement (+0,005). In order to
facilitate the n-grams location, its modeling includes offset and length recording. The
benefit of using this extended n-gram modeling compared to the former, based only in
Contextual N-grams was shown in [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], improving the performance in a former
CoReMo version, as can be seen in fig. 1 and fig. 2.
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3 Detailed Comparison</title>
      <p>
        Since by using this extended n-gram model, the matching is highly discriminative and
more frequent, it's possible to get enough matching n-grams with very low noise,
making the comparison tasks easier. For this detailed pair comparison task,
alphabetically ordered versions of both n- gram modeled documents, with inner
matching annotations and linking, are compared in the way of a modified “mergesort”
[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] algorithm to speed up the job, linking every SCnG to an external matching list.
      </p>
      <p>Minimum length and maximum distances between matches (for same detection)
are adjusted, on bases of document length, number of n-grams and user settings for
minimal monotony and n-grams chunk length (the basics classical adjustments in
CoReMo), which differ for cross-lingual (not used this PAN issue) and monolingual
comparison.</p>
      <p>The distances are n-grams for suspicious documents and characters for the sources:
maxNgramDist = 2 · chunkLength
maxCharDist = chunkLength · wordLengthAverage
minNgramLength = ( monotony – 1.5) · chunkLength
minCharLenght = minNgramLength · wordLengthAverage
(1)
(2)
(3)
(4)</p>
      <p>The reliability of the matching n-grams is pondered by its inner matching
frequency in both suspicious and source documents, to determine or reject the
detected continuous matching sections and to create preliminary XML files (direct
detection). After the end of a detection, a roll-back to the next n-gram happens
starting the next possible detection (have in mind that a detection finishes when no
new reliable match has been found after several n-grams).</p>
      <p>The direct detections are post-processed by the Granularity Filter to join
simultaneously nearby detections (4000 chars) in both suspicious and source sections,
getting final XML detection files. Both XML files could be combined to create a best
comparison readable HTML coloured document to emphasize direct detections within
the final zones.
The amount of false positives obtained in the no-plagiarism sub-corpus highly
increases when the parameters are adjusted to improve the most difficult detections
(shorter ones or the summarized ones). By tuning the chunk length to 3 as in former
version, it was achieved a Plagdet performance of 0.4388 for the summary
obfuscation, but it penalizes too much for the global results due to false positives
when no plagiarism happens. It's necessary to discern when there is low obfuscation,
high, none or no plagiarism. In the aim of auto select a best tuning that would affect
minimally for false positives, the information obtained in the matching annotation
process was taken into account about the inner and external matching rate (imr and
emr) for both suspicious and source modeled documents. This analysis is yet in its
infancy, but by the moment it gets to adapt the chunk lenght (cl) to different regions
depending of the external matching rate (emr) for both documents:
• base case: cl = 8 * multiplicty factor
• emr1 &gt; 4% &amp; emr2 &lt; 15% → cl = 3 cl / 7
• emr1 &gt; 30% &amp; emr2 &gt;= 15% → cl = 2 cl / 3</p>
    </sec>
    <sec id="sec-4">
      <title>5 Speed up Methodology</title>
      <p>
        As one of the main goals for CoReMo is the high speed to obtain reliable detection
results (and also to get the fastest and widest experimental process), the execution
environment and the programming techniques focused on getting a maximal
computational efficiency were used from the early design:
• C++ 64 bits programming, now powered by OpenMP 3.0
• GNU Linux 64bits OS and ext4 file system platform.
• Internal sort of n-grams is made by bubble sort algorithm.
• Quick sort algorithm is used to order n-grams into the modeled document.
• N-gram comparison between both documents is arranged by a modified mergesort
algorithm [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]
• Local translation when cross-lingual comparisons happens.
• When comparing pairs lists, ordered by suspicious documents (the most usual case
after locating source documents candidates), it is taken the advantage of n-grams
modeling and inner matching in the suspicious one for consecutive comparisons.
It made it possible to achieve an average analysis time of 14 milliseconds per pair: 4
times faster than the second fastest algorithm, and 5 times faster than next one for
effectiveness. However, the competition test uses single core virtual machines, and
the advantage of our multi-core optimized software is not taken. A real performance
instance using a PC with AMD-FX8120@4.00GHz, 4 GB PC1600 DDR RAM and a
SATA3 SSD: the runtime for the 2013 training corpus is only 4790 ms (0,923
ms/pair) instead of 13610 ms got when single core mode is used.
      </p>
    </sec>
    <sec id="sec-5">
      <title>6 Tuning Parameters and Evaluation</title>
      <p>The detailed results of the training (plagdet 0.8272) are displayed and compared to the
ones achieved in the phase of competition (0.8222) in table 2. The best parameters
settings were experimentally obtained by using the PAN-PC-TA-2013 training corpus:
• n-gram grade: 3
• chunk length: 8 n-grams2 (internally it changes to 32 when using SCnG + OEnG).
• minimum monotony: 2 chunks (same for monolingual or crosslingual modes).</p>
      <p>The results obtained in training phase by both, buggy and bug fixed versions, were
highly similar to the achieved in evaluation.</p>
    </sec>
    <sec id="sec-6">
      <title>7 Conclusions and Future Work</title>
      <p>Nowadays CoReMo is the fastest detector, but it's now optimized to take the
opportunity of multi-core systems advantage. The lack of possibility of using a
multi-core system in competition doesn't show the real system possibilities in the
current machines, and the runtime is penalized due to the use of unnecessary
concurrent programming techniques when only a single core is going to be used. We
are planning to adapt our software to use GPU processors, with thousands of available
cores. Those versions couldn't take part in next issues, if we don't provide a specially
adapted version with a runtime power much lower than the real production systems.</p>
      <p>Mixing this n-gram modeling with other NLP resources (as WordNet synsets)
could improve detections when hardest obfuscation conditions happen.</p>
      <p>The comparison of the Plagdet progress regarding the PAN2012 must be done with
caution, since not being necessary translation for any case in 2013.</p>
      <p>Acknowledgments. To the PAN team, as their development aids, hard job and
encourage have been crucial for our work, and to all the PAN competitors teams, as
their effort and papers has always been for us a motivational challenge and a source
of new ideas to improve our detection system. To the Elias/ESF for the last edition
grant to assist to CLEF 2012, a great opportunity and incentive for our job.</p>
      <p>2 For 3th grade n-grams, chunk length of 8 n-grams is equivalent to 10 relevant words.</p>
      <p>
        Fig. 1. Plagdet/chunk_length comparative of CoReMo 1.6 using CT3N or SC3N
w/wo Granularity Filter on PAN-PC-2011 only English subcorpus [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]
      </p>
      <p>SC3G+Gran. Filter
CT3G+Gran. Filter
SC3G
CT3G
0,5
0,4
0,3
0,2
0,1
0
4 8 12 17 25 35 45 55 65 75 85 95
4
8
12
25</p>
      <p>PAN-PC-2011
Crosslingual only
3 A bug fixing after submission deadline achieves best Plagdet (0.82827) than the official one (0,82220). Results in training corpus are due to bug fixed version. Competion ones are by buggy version,
and only Global bug fixed are shown.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          : “
          <article-title>Detección de plagio en documentos: sistema externo monolingüe de altas prestaciones basado en n-gramas contextuales” (Plagiarism Detection in Documents: High Performance Monolingual External Plagiarism Detector System Based on Contextual N-grams)</article-title>
          .
          <source>Procesamiento del Lenguaje Natural. N. 45</source>
          (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Rodríguez-Torrejón D</surname>
          </string-name>
          .A.,
          <string-name>
            <surname>Martín-Ramos J.M.: CoReMo System (Contextual Reference Monotony) A Fast</surname>
          </string-name>
          ,
          <article-title>Low Cost and High Performance Plagiarism Analyzer System: Lab Report for PAN at CLEF 2010</article-title>
          . In Braschler M.,
          <string-name>
            <surname>Harman</surname>
            <given-names>D.</given-names>
          </string-name>
          , Pianta E., editors.
          <source>Notebook Papers of CLEF 2010 LABs and Workshops</source>
          ,
          <volume>22</volume>
          -
          <fpage>23</fpage>
          September, Padua, Italy,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          :
          <article-title>Crosslingual CoReMo System: Notebook for PAN at CLEF 2011</article-title>
          . In [10].
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.:</given-names>
          </string-name>
          <article-title>N-gramas de contexto cercano para mejorar la detección de plagio (Surrounding Context N-grams to Improve the Plagiarism Detection</article-title>
          ) In [11]
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Martin</given-names>
            <surname>Potthast</surname>
          </string-name>
          , Benno Stein, Alberto Barrón-Cedeño, and
          <string-name>
            <given-names>Paolo</given-names>
            <surname>Rosso</surname>
          </string-name>
          .
          <article-title>An Evaluation Framework for Plagiarism Detection</article-title>
          .
          <source>In 23rd International Conference on Computational Linguistics (COLING 10)</source>
          ,
          <year>August 2010</year>
          .
          <article-title>Association for Computational Linguistics</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Chiara</given-names>
            <surname>Basile</surname>
          </string-name>
          , Dario Benedetto, Giampaolo Caglioti, and Mirko Degli Esposti.
          <year>2009</year>
          .
          <article-title>A Plagiarism Detection Procedure in Three Steps: Selection, Matches and Squares</article-title>
          .
          <source>In SEPLN 2009 Workshop on Uncovering Plagiarism, Authorship, and Social Software Misuse (PAN</source>
          <volume>09</volume>
          )
          <article-title>(pan</article-title>
          ,
          <year>2009</year>
          ), pages
          <fpage>19</fpage>
          -
          <lpage>23</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barrón-Cedeño</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sidorov</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosso</surname>
          </string-name>
          , P.: “
          <article-title>Influencia del diccionario en la traducción para la detección de plagio translingüe”. (Dictionary Influence in Crosslingual Plagiarism Detection)</article-title>
          .
          <source>in [11]</source>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
            ,
            <given-names>D.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          <article-title>: “LEAP: una referencia para la evaluación de sistemas de detección de plagio con enfoque intrínseco” (LEAP: a Baseline for Intrinsic Focusing Plagiarism Detectors)</article-title>
          .
          <source>In [11]</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Potthast</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eiselt</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barrón-Cedeño</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stein</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosso</surname>
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Overview of the 3rd International Competition on Plagiarism Detection</article-title>
          . In [10]
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>Vivien</given-names>
            <surname>Petras</surname>
          </string-name>
          and Paul Clough (Eds.):
          <source>Notebook Papers of CLEF 2011 Labs and Workshops</source>
          ,
          <volume>19</volume>
          -
          <fpage>22</fpage>
          September, Amsterdam, The Netherlands (
          <year>2011</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>II</given-names>
            <surname>Congreso Español de Recuperación de Información</surname>
          </string-name>
          (CERI
          <year>2012</year>
          ).
          <fpage>17</fpage>
          -18 June, Valencia (
          <year>2012</year>
          ). http://users.dsic.upv.es/grupos/nle/ceri/index.html
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Rodríguez-Torrejón</surname>
          </string-name>
          . D.A. and
          <string-name>
            <surname>Martín-Ramos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          : “
          <source>Detailed Comparison Module In CoReMo 1</source>
          .9
          <string-name>
            <given-names>Plagiarism</given-names>
            <surname>Detector</surname>
          </string-name>
          ”
          <article-title>-Notebook for PAN at CLEF 2012</article-title>
          . In Forner et al. [
          <volume>13</volume>
          ]. URL http://www.clef-initiative.eu/publication/working-notes
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Pamela</surname>
            <given-names>Forner</given-names>
          </string-name>
          , Jussi Karlgren, and
          <string-name>
            <surname>Christa</surname>
          </string-name>
          Womser-Hacker, editors.
          <source>CLEF 2012 Evaluation Labs and Workshop - Working Notes Papers</source>
          ,
          <volume>17</volume>
          -
          <fpage>20</fpage>
          September, Rome, Italy,
          <year>2012</year>
          . URL http://www.clef-initiative.eu/publication/working-notes
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>