<!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>A Cluster-Based Plagiarism Detection Method</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Du Zou Wei-jiang Long Zhang Ling South China University of South China University of South China University of Technology Technology Technology GuangZhou</institution>
          ,
          <addr-line>China GuangZhou, China GuangZhou</addr-line>
          ,
          <country country="CN">China</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2010</year>
      </pub-date>
      <abstract>
        <p>Related work Text copy detection originated from program code similarity detection in the 1970's. Natural language text copy detection technique appeared in the 1990s, and has produced three detection approaches [2]: 1) Grammar-based method. This method focuses on the grammatical structure of documents, and uses a string-based matching approach to measure similarity between the documents. Huang[3] proposed a similar web pages detection method based on the LCS(Largest Common Subsequence) algorithm by finding the largest common string between two pages to calculate the similarity of the two pages. Winnowing algorithm [4] uses overlapping k-gram method to get hashes of the documents, and it uses moving window to select the minimum hash value from each window to obtain the fingerprints of the document, and then it calculates the rate of the matching fingerprint to get the similarity between the two documents. Hashbreaking[5], DCT[6] are also the grammar-based methods,</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Plagiarism detection, also known as text copy detection, is designed to determine
whether a document is copied from other documents in whole or in part without any
reference indicated. Besides copying text without any change, changing the order of
the original text and replacing synonym are also regarded as plagiarism [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Text copy
detection technology is widely used in intellectual property protection, search engine,
e-library and student paper checks.
the only difference between them is how to get the fingerprints of the document.
Using grammar -based method to detect verbatim copying can get better results than
using it to detect the copied text including synonym replacement or rewriting. 2)
Semantics-based method. This method uses the vector space model of the Information
Retrieval Technology, and statistics word frequency in a document to obtain feature
vector of the document, then uses dot product, cosine, etc. to measure the feature
vector of the two documents. This feature vector is the key of the document similarity.
This method is not always effective to detect partial plagiarism, because it is difficult
to determine the location of copied text. 3) Grammar semantics hybrid method [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
This method is used to solve the problems of the two methods mentioned above, and
improve the detection results.
      </p>
      <p>
        Locating is an important step of text copy detection technology. It is required to
give the position of the plagiarized content in the document in addition to calculating
the document similarity. By-word comparison is a common locating method.
Sediyono et al proposed LCCW (Longest Commonly Consecutive Word) algorithm
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. It regards a paragraph as a comparison unit, and splits it into a collection of
consecutive words. The position of the words in the paragraph is recorded. Then using
by-word comparison, the longest commonly successive word can be identified.
Eventually, the content and position of the similar text in the document can be
obtained. Zaslavsky et al proposed the MDR (Match detect Reveal) system [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. In this
system, preprocessed document is split into words or fixed-length strings. And using
Matching Statistics Algorithm, a suffix tree is constructed for each fixed-length string,
and then the longest common substring can be found among the suffix trees.
According to the longest common substring, the similar text and its position in the
document can be obtained. By-word comparison method builds the index by words,
which is an exact matching method. Its locating performance is not good enough for
the text which includes obfuscation. The top three of PAN-09 plagiarism detection
contest [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] process the document by word or by sentence and combine with
heuristic matching methods, to achieve approximate text matching. This method is
suitable in English documents, however, it can not solve the Chinese word
segmentation problem in Chinese documents.
      </p>
      <p>The Cluster-based plagiarism detection method we propose is the grammar-based
method. This method is divided into three steps: pre-selecting, locating and
postprocessing. We use the pre-selecting step to find out the documents which may be
copied, so as to shorten the locating time and improve the detecting efficiency. And
we use clustering method to locate plagiarism fragments, which can reduce the impact
of obfuscation to some extent. In the last step, we deal with some errors which are
found in locating step.
3</p>
    </sec>
    <sec id="sec-2">
      <title>The datasets</title>
      <p>We participated in the PAN-10 external plagiarism detection competition. The main
objective of the external plagiarism detection is: given a collection of suspicious
documents and source documents, to identify all possible copy fragments from the
suspicious documents and their locations in the suspicious documents and the
corresponding source documents.</p>
      <p>We merged PAN-09 training set and test set into a big set to debug our algorithm.
This big set contains 14,429 source documents (training set 7214, and test set 7215),
14428 suspicious documents (training set 7214, and test set 7214). For each
suspicious document, there is an xml document which notes all copy fragments in the
suspicious document and their locations in the suspicious document and source
documents.</p>
      <p>
        Based on language, plagiarism fragments can be divided into monolingual
(translation=false) and cross-lingual (translation=true). Based on the degree of
obfuscation[
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], plagiarism fragments can be divided into none obfuscation
(obfuscation=none), low obfuscation (obfuscation=low) and high obfuscation
(obfuscation=high). The length of plagiarism fragments is distributed between several
hundred characters to ten thousand characters. The data set contains 73522 plagiarism
fragments, among which English fragments are 67141 and multi-language fragments
are 6381. In all of the English fragments, the number of none obfuscation is 26855
and the number of low obfuscation is 26628. The remainders are high obfuscation
fragments.
4
      </p>
    </sec>
    <sec id="sec-3">
      <title>Method</title>
      <p>The plagiarism detection method we propose uses Winnowing’s fingerprint extraction
algorithm. The method consists of three steps: The first step is pre-selecting. For each
suspicious document, the task is to find out a small list of candidate documents in
which the plagiarized content may exist from the source document set quickly. The
second step is locating, which compares the suspicious document with each candidate
document to get the copy fragments out of the suspicious document. The last step is
post-processing, which discards some fragments without plagiarism from the end
result.
4.1</p>
    </sec>
    <sec id="sec-4">
      <title>Pre-selecting</title>
      <p>Supposed it takes an average of 100ms to process a pair of documents, and then
the total computation time will be more than 200 days. Even if parallelizing the tasks
with multi-core processors, the time needed is still unacceptable to the competition.</p>
      <p>We found out that the most important step is locating. When we analyzed the
algorithm, the locating step cost the most time. So we use the pre-selecting method to
reduce the number of candidate documents, thereby the time of locating is shortened.
Using the pre-selecting method we can save 90% of the running time.</p>
      <p>
        C.Basile[
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] computed the distance between each suspicious and source
document, then selected the top 10 source documents with minimum distance for
further processing. At the beginning, we used this approach to calculate the similarity
of each suspicious and source document, and we selected the top 50 source
documents according to the similarity.
      </p>
      <p>However, during the testing, we found that there was possibility of false collision
when using Winnowing method to obtain fingerprint. For example, the values of two
fingerprints are 1024 and 2024, if they are divided by 1000, their remainders are both
24, but in fact the two fingerprints are not the same. We found that the larger the file
is, the greater the probability of collision and the higher the similarity will be. So
using this method affects the efficiency and accuracy of locating.</p>
      <p>To improve the accuracy of pre-selecting, we use successive same fingerprint
thresholds to get candidate documents. We define two parameters, valid interval and
successive same fingerprint. There are two fingerprint vectors D1 and D2
representing two different documents, if the number of different fingerprint among a
given pairs of the fingerprint is not greater than a given number, we consider the pairs
of the fingerprint are the same. And this given number is a valid interval. The pair of
the same fingerprint is called a successive same fingerprint if it meets the condition of
valid interval. By comparing each source document with the suspicious document, the
source document will be regarded as candidate document of the suspicious document
if the value of the successive same fingerprint is greater than a given threshold.</p>
      <p>By setting the successive same fingerprint threshold to pre-select, the results are
as follows: we can find 99.9% of the documents which contain none obfuscation
(obfuscation=none) fragments, 89.3% of the documents which contain only low
obfuscation (obfuscation=low), and there are not a source document is selected which
contains only high obfuscation fragments.
4.2</p>
    </sec>
    <sec id="sec-5">
      <title>Locating</title>
      <p>Locating is done between a suspicious document and a source document. In this
step, we compare the suspicious document with each source document in the
candidate document set, and then get a plagiarism fragment list of the suspicious
document. The steps of locating are as follows:</p>
      <p>1) Preprocessing. The purpose of this step is to remove all symbols which do not
affect document semantic information, such as punctuation, whitespace, etc.,
converting all letters to lower case. And then we record the position of each word
before and after preprocessing.</p>
      <p>2) Sampling. The overlapping word-5-grams approach is used to obtain the
initial fingerprint of the document. Referring to Winnowing’s fingerprint sampling
algorithm, we use 6 fingerprints as a window, and select the minimum fingerprint as a
sample fingerprint of the window. We move the window by a fingerprint until the end
of the initial fingerprint, the fingerprint that is repeatedly selected in the same position
will be discarded. Finally the sample fingerprint vector of the document can be
obtained. The beginning and the end position of the original text before preprocessing
can be recorded by each fingerprint of the vector. Then the inverted index of the
document can also be generated. The position of the original text is computed by the
following formula:</p>
      <p>SPi  EPi1  1；EPi  Pcur  w  k  2</p>
      <p>Where SPi , EPi are the beginning and the end position of the original text
which is represented by the i-th fingerprint, Pcur is the beginning position of the
current window, w is the size of the sample window, and k is the length of the original
text.</p>
      <p>
        3) Clustering and merging. Take the source-document10383.txt and
suspiciousdocument07957.txt as example. The sample fingerprint vectors of the two documents
have been obtained in previous steps. By comparing the two fingerprint vectors, a list
of matches between the suspicious document and the source document can be
obtained. We represent the pair of vectors in a bi-dimensional plane [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] with the
vector of the suspicious document as x axis and the source document as y axis, and
then we get the coordinates of all matches in the plane. A point in the figure 1
represents a match in the coordinates(x,y), namely, the x-th fingerprint in the vector
of the suspicious document is equal to the y-th fingerprint in the vector of the source
document.
of the two vectors. The algorithm finds all common substrings from the two vectors,
and sets a threshold. If the distance between two substrings is less than the threshold,
then merge them. Finally a set of approximate successive fingerprint sections can be
found. There is an example of an approximate successive fingerprint section in the
figure 2:
      </p>
      <p>Approximate successive fingerprint section
seqA
seqB
...
...</p>
      <p>...</p>
      <p>...</p>
      <p>No-match fingerprint
Match fingerprint</p>
      <p>Given line ai , class ai
conditions are fitted:
xi  y j  (x j  yi )   y
xi is the beginning position of line ai in the fingerprint vector of the suspicious
document, yi is the beginning position of line ai in the fingerprint vector of the
source document, li is the length of the line ai . There is a class ai , and line ai
belongs to class ai . The idea of the clustering is that, given a passage with ai as
axis and width is 2 y , if line a j falls within this passage, and the distance between
ai and a j along the passage’s direction is less than  x , then we merge a j into
class ai . Clustering formula is as follows:</p>
      <p>and ai  ai , j  i ， if the following two
(xi  yi  li )  (x j  y j  l j ) 1.4  (li  l j )   x
then a j  ai .</p>
      <p>By clustering, we can merge these small lines in the shadow square in figure 1
into a long line. The beginning and the end positions of the long line are the lower left
and upper right of the shadow square.
4.3</p>
    </sec>
    <sec id="sec-6">
      <title>Post-processing</title>
      <p>The locating step uses the distance between approximate successive fingerprint
sections to decide whether needs to merge or not. If using the same clustering
parameter to merge those copy texts, which have different lengths and different
obfuscated degrees, may cause merging errors.</p>
      <p>For the second merging error, we use the similarity to decide whether discard
copy texts. After merging, we compute the similarity of all copy texts, and discard
those copy texts whose similarities are less than the threshold. This approach will
discard some high-obfuscated copy texts, because the similarity of these copy texts is
relatively low. Through repeated experiments, copy texts whose similarities are less
than 0.05 have mostly merging error, so we discard them.</p>
      <p>From the analysis of the third merging error, we can find that there are two
reasons causing the merging error. One is that we merge some sparse points into a
fragment that in fact is not plagiarism. Another is that some fragments in the source
document are indeed similar to the same fragment in the suspicious document. In the
real competition, we do not know the right answer, so for this situation, we rank the
product of the copy text’s length and the respective similarity, and then select the
copy text whose product is the largest, and discard other copy texts. Through testing
in the training dataset, this approach can get a good result.
5</p>
    </sec>
    <sec id="sec-7">
      <title>Experiment</title>
      <p>We tested our method in two datasets. One is the union of training and test corpus in
PAN-09, including 14429 source documents and 14428 suspicious documents. The
other is only test corpus for PAN-09, which is composed of 7215 source documents
and 7214 suspicious document.</p>
      <p>Our experiments ran on 8 entries HPC (High Performance Computing). Each
entry has a Dual-route Intel Xeon 4 cores 5500 series processor and 4G memory. In
each experiment, we started 24 threads, 3 threads of each entry. The total running
time was 25 hours in the union corpus, and 7 hours in the test corpus.</p>
      <p>There are 15925 suspicious documents and 11148 source documents in the
PAN10 corpus, and the source documents contain 665 non-English documents. We used
google translation api to translate about two thirds of the non-English documents into
English. We used the cluster-based plagiarism detection method mentioned above to
run this corpus in the same experimental environment, and the overall score is 0.7087,
and the rank is: 2.
6</p>
    </sec>
    <sec id="sec-8">
      <title>Conclusion</title>
      <p>The method we proposed is cluster-based plagiarism detection method, which has
been used in South China University of Technology to check plagiarism in network
engineering related courses. And we also used it to detect external plagiarism in
PAN10 competition. The method uses Winnowing's fingerprint extraction algorithm,
consists of three steps: The first step is pre-selecting. For each suspicious document,
the task is to find out a small list of candidate documents in which the plagiarized
content may exist from the source documents set quickly. The second step is locating,
which compares the suspicious document with each document in the candidate
documents to get the copy fragments out of the suspicious document. The last step is
post-processing, which discards some fragments without plagiarism from the end
result
References</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>Bao</given-names>
            <surname>Jun-Peng</surname>
          </string-name>
          ,
          <article-title>Shen Jun-Yi,Liu Xiao-Dong,Song Qin-Bao, “A Survey on Natural Language Text Copy Detection</article-title>
          [J]”,
          <source>Journal of Software</source>
          ,
          <year>2003</year>
          , vol.
          <volume>14</volume>
          , No.
          <volume>10</volume>
          , pp.
          <fpage>1753</fpage>
          -
          <lpage>1760</lpage>
          (Ch).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Wang</given-names>
            <surname>Tao</surname>
          </string-name>
          ,
          <string-name>
            <surname>Fan</surname>
          </string-name>
          Xiao-Zhong, Liu Jie, “
          <article-title>Plagiarism Detection in Chinese Based on Chunk and Paragraph Weight”</article-title>
          ,
          <source>in Proceedings of the Seventh International Conference on Machine Learning and Cybernetics</source>
          , Kunming, pp.
          <fpage>2574</fpage>
          -
          <lpage>2579</lpage>
          ,
          <year>July 2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Huang</given-names>
            <surname>Lian</surname>
          </string-name>
          <article-title>'en, “On the Technologies for Building and Accessing a Web Archive”</article-title>
          ,
          <source>PhD thesis</source>
          , Peking University,
          <year>2008</year>
          (Ch)
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Schleimer</surname>
            .S,
            <given-names>D.S.</given-names>
          </string-name>
          <string-name>
            <surname>Wilkerson</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Aiken</surname>
          </string-name>
          , “
          <article-title>Winnowing: Local Algorithms for Document Fingerprinting”</article-title>
          ,
          <source>in Proceedings of the 2003 ACM SIGMOD International Conference on Management of Data</source>
          , ACM New York, NY, USA , pp.
          <fpage>76</fpage>
          -
          <lpage>85</lpage>
          ,
          <year>2003</year>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>O.</given-names>
            <surname>Abdel-Hamid</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Behzadi</surname>
          </string-name>
          , Stefan Christoph, Monika Henzinger, “
          <article-title>Detecting the Origin of Text Segments Efficiently”</article-title>
          ,
          <source>WWW</source>
          <year>2009</year>
          , Madrid, Spain,pp.
          <fpage>61</fpage>
          -
          <lpage>70</lpage>
          ,
          <year>2009</year>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J.</given-names>
            <surname>Seo</surname>
          </string-name>
          and
          <string-name>
            <given-names>W. B.</given-names>
            <surname>Croft</surname>
          </string-name>
          , “Local Text Reuse Detection”,
          <source>SIGIR'08</source>
          , pp.
          <fpage>571</fpage>
          -
          <lpage>578</lpage>
          . ACM,
          <year>2008</year>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A</given-names>
            <surname>Sediyono and KRK Mahamud</surname>
          </string-name>
          , “
          <article-title>Algorithm of the Longest Commonly Consecutive Word for Plagiarism Detection in Text Based Document”</article-title>
          ,
          <source>Digital Information Management</source>
          ,pp.
          <fpage>253</fpage>
          -
          <lpage>259</lpage>
          ,
          <year>2008</year>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Zaslavsky</surname>
          </string-name>
          , Arkady et al,“
          <article-title>Using Copy-Detection and Text Comparison Algorithms for CrossReferencing Multiple Editions of Literature works”</article-title>
          ,
          <source>the 5th European Conference on Research and Advanced Technology for Digital Libraries</source>
          ,pp.
          <fpage>103</fpage>
          -
          <lpage>114</lpage>
          ,
          <year>2004</year>
          .
          <fpage>3</fpage>
          -
          <lpage>21</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Potthast</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Stein</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Eiselt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Barón-Cedeño</surname>
          </string-name>
          ,and
          <string-name>
            <given-names>P.</given-names>
            <surname>Rosso</surname>
          </string-name>
          , “
          <article-title>Overview of the1st International Competition on Plagiarism Detection”</article-title>
          .
          <source>In 3rd PAN Workshop</source>
          . Uncovering Plagiarism,
          <source>Authorship and Social Software Misuse</source>
          ,pp.
          <fpage>1</fpage>
          -
          <lpage>9</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>C.</given-names>
            <surname>Grozea</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Gehl</surname>
          </string-name>
          ,and
          <string-name>
            <given-names>M.</given-names>
            <surname>Popescu</surname>
          </string-name>
          . “ENCOPLOT:
          <article-title>Pairwise Sequence Matching in Linear Time Applied to Plagiarism Detection”</article-title>
          .
          <source>In 3rd PAN Workshop</source>
          . Uncovering Plagiarism,
          <source>Authorship and Social Software Misuse</source>
          ,pp.
          <fpage>10</fpage>
          -
          <lpage>18</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>C.</given-names>
            <surname>Basile</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Cristadoro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Benedetto</surname>
          </string-name>
          ,E.Caglioti,and
          <string-name>
            <given-names>M.Degli</given-names>
            <surname>Esposti</surname>
          </string-name>
          .
          <article-title>“A Plagiarism Detection Procedure in Three Steps:Selection, Matches and Squares”</article-title>
          .
          <source>In 3rd PAN Workshop</source>
          . Uncovering Plagiarism,
          <source>Authorship and Social Software Misuse</source>
          , pp.
          <fpage>19</fpage>
          -
          <lpage>23</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Jan</surname>
            <given-names>Kasprzak</given-names>
          </string-name>
          ,Michal Brandejs,Miroslav Křipă. “
          <article-title>Finding Plagiarism by Evaluating Document Similarities”</article-title>
          .
          <source>In 3rd PAN Workshop</source>
          . Uncovering Plagiarism,
          <source>Authorship and Social Software Misuse</source>
          ,pp.
          <fpage>24</fpage>
          -
          <lpage>28</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>