Escolar Documentos
Profissional Documentos
Cultura Documentos
ANUÁRIO DA PRODUÇÃO DE
INICIAÇÃO CIENTÍFICA DISCENTE
Vol. 14, Nº24. , Ano 2011
Anhanguera Educacional
Correspondência/Contato
Alameda Maria Tereza, 4266
Valinhos, SP - CEP 13278-181
rc.ipade@anhanguera.com
Coordenação
Instituto de Pesquisas Aplicadas e
Desenvolvimento Educacional - IPADE
Trabalho realizado com o incentivo e fomento
Publicação: 5 de março de 2010 da Anhanguera Educacional S.A.
Software para detecção de textos com plágio baseado em busca pela internet
1. Introdução
Em áreas envolvidas com a publicação de informações, ao se pensar em produção de textos
como, artigos, monografias e trabalhos de conclusão de curso, é comum verificar a existência
do problema de cópias indevidas de trabalhos já existentes.
Com a difusão da internet, verificou-se um aumento do acesso às informações e da
produção de trabalhos que possuem cópias sem referência apropriada ao conteúdo de
obras de outros autores, o que caracteriza plágio. Este aumento se deve, principalmente, à
facilidade de acesso e de transcrição de textos, bem como à melhoria verificada nos sistemas
de pesquisa de conteúdo da internet.
Considerando a Lei de Direitos Autorais (Lei 9610/98) prevista no Código Penal
(2008), plágio é o ato de apresentar um trabalho que seja inteiramente ou contenha partes do
trabalho de outro autor sem que sejam feitas as devidas citações ou transcrições, assumindo
assim, o plagiador, a autoria do trabalho. Malcolm e Lane (2008) dividem o problema de
plágio acadêmico em quatro tipos:
• quando um autor copia do trabalho de um grupo de colegas, denominado nesse
caso de collusion (conluio);
• quando a fonte das cópias se encontra em documentos publicados na internet;
• quando a fonte não está disponível em meios eletrônicos de fácil acesso;
• quando o trabalho é realizado sob encomenda.
Este projeto tem foco nos dois primeiros tipos, pois têm maior chance de serem
verificados por uma ferramenta automatizada de validação.
Existem vários softwares que se propõem a auxiliar na validação de textos frente ao
problema de trechos que se apresentam como cópias indevidas de outros trabalhos. Entre
eles:
• os baseados em busca pela internet, como o Viper (2011), Turnitin (2011), Plagius
(HENNING, 2011) e o Farejador de Plágio (PEZZIN, 2011);
• os que analisam o problema de plágio por conluio dentro de um conjunto de
documentos, como é o caso do software Ferret (LYON; BARRETT; MALCOLM, 2004);
• os que buscam semelhança de documentos entre as cópias depositadas em bibliotecas
virtuais como, por exemplo, o SCAM (SHIVAKUMAR; GARCIA-MOLINA, 1995).
De forma geral, pode-se inferir que estes programas partem do documento a ser
verificado, denominado arquivo de entrada, extraem trechos do texto e efetuam pesquisas
na internet ou em um conjunto de outros documentos para identificar uma semelhança
computacional. Em seguida, os programas determinam uma estatística de cômputo das
semelhanças para uma análise humana final. Essa estatística deve auxiliar a tomada de
decisão sobre a existência, ou não, de plágio.
Vale destacar, no entanto, que esses softwares não possuem documentação detalhada
222 Anuário da Produção de Iniciação Científica Discente
Clever Marcos Teixeira, Marcelo Augusto Cicogna
sobre o seu projeto ou mesmo o funcionamento interno, o que torna difícil inferir sobre o seu
funcionamento e validar a metodologia utilizada. Apesar de não possuir documentação, os
autores dos softwares Ferret e SCAM possuem trabalhos científicos publicados que permitem
o estudo da técnica e da metodologia de busca anti-plágio, ao mesmo tempo em que é possível
identificar aspectos de suas implementações computacionais.
Muitos dos autores citados neste trabalho mencionam a importância de um parecer
final sobre a identificação de plágio. Em outras palavras, mesmo com a utilização de um
software anti-plágio, a análise de um ser humano ainda é imprescindível para lavrar uma
decisão final, evitando-se o resultado de “falso-positivo”. Uma ferramenta computacional
pode servir ao usuário como um sistema de suporte à decisão, mas não convém deixar ao
método a atribuição final de resultados (HENNING, 2011). Ao mesmo tempo, quanto maior
o número de semelhanças, maior a chance de se comprovar a existência de plágio. O cálculo
desta chance ou probabilidade é uma das contribuições que este projeto pretende apresentar
aos interessados no tema.
O presente trabalho de iniciação científica se propõe a estudar o assunto e desenvolver
um protótipo de um sistema de detecção de plágio com o detalhamento e a publicação de
um método de funcionamento.
2. Objetivos
O objetivo geral desse trabalho é desenvolver uma metodologia e sua implementação
computacional para detecção de textos que possam conter problemas segundo as definições
de plágio.
Os objetivos específicos são: desenvolver um algoritmo que permita detectar uma
possível cópia por meio de comparações; criar uma estatística de cômputo da probabilidade
de plágio; projetar e implementar um protótipo de programa de computador capaz de
verificar a probabilidade de um texto possuir plágio.
3. Metodologia
Segundo Oliveira et al. (2007), as técnicas da área de Recuperação de Informação podem ser
utilizadas como base científica para a construção de modelos de busca anti-plágio.
A Recuperação de Informação é uma área da computação que trata da representação,
armazenamento, organização e acesso a informações (BAEZA-YATES; RIBEIRO-NETO,
1999). Algumas técnicas dessa área que podem auxiliar aos métodos anti-plágio são:
• pré-processamento dos documentos, a qual, geralmente, exclui ou promove
troca de dados dos documentos com o objetivo de auxiliar o cálculo de fatores de
semelhança;
• armazenamento das identidades dos documentos, fase na qual se empregam
estruturas de dados de forte compromisso com o desempenho computacional de
recuperação de informações focada no cálculo de índices de semelhança extraídos
dos conteúdos dos documentos;
• modelos para cálculo de similaridade dos documentos (BAEZA-YATES; RIBEIRO-
NETO, 1999).
O objetivo do uso das técnicas de recuperação é determinar o grau de semelhança
entre documentos, possibilitando uma classificação por relevância em relação à informação
que se deseja recuperar (OLIVEIRA et al., 2007).
Para a determinação computacional da semelhança de documentos, há um modelo
denominado modelo vetorial, que se propõe a representar os documentos por um conjunto
de fragmentos, denominados termos, e associar um peso calculado a partir do conceito
de freqüência estatística. Cada termo pode ser composto por uma ou mais palavras
do documento e está associado a uma posição do vetor de pesos, sendo este valor uma
identidade numérica da freqüência de ocorrência do termo no documento. Após a construção
dos vetores e considerando os conceitos simples de Álgebra Linear, a similaridade entre
os documentos pode ser determinada pela correlação entre os vetores de pesos de dois
documentos, quantificando-a por meio do cosseno do ângulo entre os dois vetores (BAEZA-
YATES; RIBEIRO-NETO, 1999).
O SCAM é um exemplo de software que utiliza o modelo vetorial como base para a
estrutura de armazenamento e cálculo de similaridade entre documentos em bibliotecas
digitais. Seus autores, Shivakumar e Garcia-Molina (1995), relacionam esta estrutura de
armazenamento dos documentos, seus termos e freqüências com o conceito de um vocabulary.
Os termos são denominados chunks e podem conter mais de uma palavra.
Existem também métodos anti-plágio baseados em dificuldades inerentes às áreas de
reconhecimento artificial da fala. Estes métodos se valem de constatações estatísticas de
raridade (baixa freqüência) de termos empregados na escrita. Com base nessas constatações,
Lyon, Malcolm e Dickerson (2001) propõem um método no qual a extração dos chunks ocorra
de forma sobreposta e com repetição (overlaping).
De forma semelhante, Oliveira et al. (2007) também definem o conceito de granularidade
de um chunk como o número de palavras extraídas do documento para formar cada um
dos termos. Lyon, Malcolm e Dickerson (2001) demonstram, por meio de testes numéricos,
que a granularidade formada por três palavras (3-grams) apresenta melhor resultado para
o desempenho computacional e acuidade da busca anti-plágio. A justificativa do uso de
3-grams está relacionada à raridade de trechos subordinados à distribuição Zipfian (2011).
Esta distribuição empírica de probabilidades determina o grau de raridade das palavras
3.1. Pré-processamento
Durante a fase de revisão bibliográfica, verificou-se que a maioria dos modelos citados
anteriormente apresenta algum tipo de pré-processamento dos documentos.
No método proposto, o pré-processamento irá possibilitar as seguintes tarefas:
• remover símbolos e pontuação com o propósito de isolar as palavras para
comparação;
• eliminar números ou substituí-los por símbolos fixos com o propósito de isolar o
sentido sintáxico destes no texto em processamento;
• tratamento de maiúsculas e minúsculas (upper e lower case) para homogeneidade do
processo de comparação;
• tratamento de citações e referências para a exclusão dos trechos de texto que estejam
em consonância com alguma norma de citação e/ou transcrição de textos, focando-
se excluir do processo os trechos que serão considerados válidos pelo parecerista
final;
• eliminar stopwords.
As palavras classificadas como stopwords merecem um destaque na fase de pré-
processamento. Esta denominação se dá às palavras mais comuns da língua de origem (ou
principal) do documento como, por exemplo, artigos e preposições. Geralmente essas palavras
são muito freqüentes em todos os documentos e a devida eliminação propicia melhores
resultados na determinação dos índices de similaridade (BAEZA-YATES; RIBEIRO-NETO,
1999). Isso ocorre pela redução da probabilidade de falsos-positivos, os quais são a constatação
de similaridade entre dois documentos que não incorrem no problema de plágio depois de
estabelecido o parecer final (SHIVAKUMAR; GARCIA-MOLINA, 1996).
3.3. Vocabulary
Após a extração dos chunks, estes devem ser armazenados em um vocabulary. Caso seja
inserido um chunk já existente, apenas a freqüência deste deverá ser incrementada. A
Equação (1) representa esse processo:
f = v(c) (1)
onde f é a freqüência, v é a função de armazenamento (vocabulary) e c é a representação
computacional do chunk (string, por exemplo).
3.4. Similaridade
Por meio das sobreposições e da constatação de raridade dos 3-grams, é possível calcular
o nível de similaridade dos documentos pelo modelo apresentado por Lyon, Malcolm e
Dickerson (2001), conforme a equação (2):
4. Desenvolvimento
Com base na metodologia apresentada, percebe-se que um bom sistema anti-plágio deve
conter um método de comparação que seja eficiente. Por essa razão, o desenvolvimento
desse projeto será dividido em dois módulos:
• o primeiro será o módulo colllusion, o qual será responsável por extrair os chunks fazer
a comparação em conluio e produzir o relatório referente ao nível de semelhança
entre um conjunto de documentos;
• o segundo será o módulo web search, que será responsável por pesquisar na internet
por outros documentos que apresentem semelhança com o documento de entrada.
Texto Original
Texto em Teste
última quinta feira wikileaks lançou campanha resposta wikileaks lançou campanha última quinta feira resposta
seis meses bloqueio contas utilizadas doações ciberativ- seis meses bloqueio contas utilizadas doações site
istas vídeo propõe ser viral internet faz paródia famosa proposta vídeo é ser viral internet ele faz paródia famosa
campanha mastercard instituições financeiras envolvidas campanha mastercard conhecida pelo slogan não tem
bloqueio conhecida pelo slogan não tem preço preço
O vocabulary, para armazenamento dos chunks, pode ser implementado com base técnica
nas estruturas de dados do tipo hash tables e maps (JOSUTTIS, 1999). Algumas linguagens
de programação facilitam o uso destas estruturas e esta escolha foi alvo de estudo dos autores
durante a fase de projeto.
Para a comparação entre os documentos, será utilizado o cálculo proposto por Lyon,
Malcolm e Dickerson (2001). Por motivos de simplificação, não são apresentados todos os
chunks, mas a contagem de coincidências resulta em 13 chunks idênticos nos dois textos, de
um total de 47 chunks distintos. Efetuando o cálculo pela Equação (2), tem-se:
De acordo com o resultado, o texto em análise tem uma grande chance de ser considerado
plágio, levando-se em conta que a raridade de coincidências dos 3-grams determinou um
valor de 27,6% (0,276) de chunks coincidentes, valor este acima do limiar de 0,03, proposto
por Lyon, Malcolm e Dickerson (2001).
Para a busca web, Malcolm e Lane (2008) propõem que a granularidade do chunk seja
um pouco maior que 3 palavras (k-grams). A idéia é que os chunks se tornem ainda mais
raros, reduzindo o número de consultas necessárias para encontrar os documentos mais
similares, além disso, os documentos mais significativos serão os primeiros encontrados
pela busca.
Uma característica importante a observar é que os fragmentos utilizados para efetuar
a busca na internet não permitem a reconstrução do texto original, o que assegura um teste
sem expor conteúdo inédito do autor.
Vale destacar, ainda, que a implementação computacional proposta adota o paradigma
de projeto de softwares orientados a objetos. Por este motivo, classifica-se o modelo como
de âmbito geral, uma vez que as várias técnicas estudadas podem ser contidas no mesmo
software, o qual faz uso intensivo do conceito de herança e polimorfismo de objetos
(HORSTMANN, 1997).
5. Resultados
Por meio da revisão bibliográfica, foi possível a definição de uma metodologia e a
modelagem de um projeto de software orientado a objetos, com uso efetivo da Unified
Modeling Language (UML) (GUEDES, 2007) em sincronia com a descrição e nomenclatura
apresentadas na metodologia. O modelo computacional permite variações das técnicas anti-
plágio apresentadas, por meio do conceito de polimorfismo de objetos.
Foram construídos os seguintes diagramas UML para o modelo descrito na metodologia:
Caso de Uso, Atividades, Classes, Seqüência e Colaboração. Por uma questão de espaço,
é apresentado neste artigo, apenas o diagrama de atividades (Figura 1) e o diagrama de
classes do módulo de busca por conluio, conforme ilustração apresentada na Figura 2.
5.1. Testes
A seguir serão apresentados dois testes efetuados com o protótipo implementado para
ilustrar a eficiência do método:
• o Teste 1 foi efetuado com o protótipo do módulo collusion para validação da técnica
e demonstração da eficiência do método de comparação;
• o Teste 2 foi efetuado no módulo web search, o qual se encontra em fase de projeto
do modelo computacional.
Quantidade de
Arquivo 1 x Arquivo 2 Similaridade Suspeita de plágio
chunks comuns
File1 File2 39 0,003 Não
File1 File3 6410 1,000 Sim
File1 File4 4366 0,415 Sim
File1 File5 272 0,023 Não
File2 File3 39 0,003 Não
File2 File4 4120 0,402 Sim
File2 File5 23 0,002 Não
File3 File4 4366 0,415 Sim
File3 File5 272 0,023 Não
File4 File5 109 0,007 Não
Os 5 links mais freqüentes tiveram seus conteúdos recuperados e salvos por meio
de download da internet. Nesse momento, o método possui o arquivo de entrada e mais
5 documentos (conteúdo dos 5 links). Portanto os 6 arquivos foram submetidos ao teste
em conluio no módulo collusion, num procedimento semelhante ao Teste 1. O tamanho em
páginas e quantidades de chunks de cada arquivo é apresentado no Quadro 5.
Quadro 5. Links retornados.
Chunks
AxB Similaridade Suspeita de plágio
comuns
Entrada.doc Link1.pdf 818 0,075 Sim
Entrada.doc Link2.pdf 823 0,174 Sim
Entrada.doc Link3.pdf 14 0,002 Não
Entrada.doc Link4.pdf 65 0,017 Não
Entrada.doc Link5.html 5 0,000 Não
É possível notar no Quadro 6 que foram encontrados dois documentos com similaridade
acima do limiar de referência (0,03). Os dois arquivos similares são identificados como
uma monografia (Link1.pdf) e um artigo (Link2.pdf) de um mesmo autor sobre o mesmo
assunto do arquivo de entrada. Foi possível confirmar, por meio de uma rápida leitura
destes documentos, que o documento suspeita de plágio (Entrada.doc) realmente tem
muitos trechos iguais aos dois documentos similares encontrados, confirmando a suspeita
de plágio.
Outro aspecto importante a observar é que o teste efetuado levou um tempo de
processamento relativamente pequeno, como se pode observar no Quadro 6.
Quadro 6. Comparação em coluio.
6. Considerações Finais
Este artigo demonstrou o desenvolvimento de um projeto com o objetivo de criar e
implementar computacionalmente um modelo anti-plágio de validação de documentos.
Considera-se uma contribuição importante a descrição de vários trabalhos correlatos,
para os quais dedicou-se um tempo relevante de estudo, análise e condensação das técnicas
apresentadas.
O modelo proposto, resultante de uma compilação dos trabalhos correlatos, tem
como diferencial e importância o fato de generalizar alguns dos conceitos encontrados
na literatura sobre o assunto. Esta generalidade, alcançada a partir da técnica de projeto e
implementação de softwares orientados a objetos, poderá ser de grande valia para outros
pesquisadores interessados no assunto. Cabe salientar que os autores não encontraram tal
Referências
BAEZA-YATES, R. A.; RIBEIRO-NETO, B. Modern Information Retrieval. 1. ed. New York:
Addison-Wesley, 1999.
CÓDIGO PENAL, Artigo 184, Índice Fundamental do Direito. Disponível em <http://www.dji.
com.br/codigos/1940_dl_002848_cp/cp184a186.htm>. Acessado em 28 set. 2010.
GUEDES, G. T. A.; UML: uma abordagem prática. 3. ed. São Paulo: Novatec Editora, 2007.
HENNING, Gustavo Augusto. Plagius - Detector de Plágio. Disponível em: <http://www.plagius.
com/s/br>. Acesso em: 26 jun. 2011.
HORSTMANN C. S. Practical Object-Oriented Development in C++ and Java. John Wiley & Sons,
1997.
JOSUTTIS N. M. The C++ Standard Library – A Tutorial and Reference. Addison Wesley, 1999.
LYON, C.; MALCOLM, J.; DICKERSON B. Detecting short passages of similar text in
large document collections. 2001. Disponível em: <https://uhra.herts.ac.uk/dspace/
bitstream/2299/1695/1/901890.pdf>. Acesso em: 01 jul. 2011.
LYON, C.; BARRETT, R.; MALCOLM, J. A theoretical basis to the automated detection of copying
between texts, and its practical implementation in the Ferret plagiarism and collusion detector.
2004. Disponível em: <https://uhra.herts.ac.uk/dspace/bitstream/2299/2114/1/902216.pdf>.
Acesso em: 05 jul. 2011.
MALCOLM, J. A.; LANE, P. C. R. Efficient Search for Plagiarism on the Web. 2008. Disponível em:
<https://uhra.herts.ac.uk/dspace/bitstream/2299/2549/1/kuwait-v09.pdf>. Acesso em: 30 jun.
2011.
OLHAR digital. Disponível em: <http://olhardigital.uol.com.br/jovem/redes_sociais/noticias/
wikileaks_cria_video_para_pedir_doacoes_e_faz_parodia_a_campanha_da_mastercard >. Acesso
em: 03 jul. 2011.
OLIVEIRA, M. et al. Bibliotecas digitais aliadas na detecção automática de plágio. In: Seminário
Internacional de Bibliotecas Digitais Brasil - SIBDB. 2007. Disponível em: <http://www.
bibliotecadigital.unicamp.br/document/?down=23482>. Acesso em: 30 jun. 2011.
PEZZIN, Maximiliano Zambonatto. Farejador de Plágios. Disponível em: <http://www.
farejadordeplagio.com.br>. Acesso em: 05 jul. 2011.
SHIVAKUMAR, N.; GARCIA-MOLINA, H. SCAM: A Copy Detection Mechanism for Digital
Documents. In: International Conference in Theory and Practice of Digital Libraries. Austin, Texas:
[s. n.], 1995. Disponível em: <http://ilpubs.stanford.edu:8090/95/1/1995-28.pdf>. Acesso em: 30
jun. 2011.