1 / 38

Investigación algorítmica

Investigación algorítmica. Grupo Plagiatest-T. Integrantes Grupo 4. Lizzett Seminario Huamaní 20037185 César Ríos Gárate 20042153 Carolina Balbín Ávalos 20050373 Sheyla Díaz Muguruza 20057079 Víctor Chávez Lazarte 20062038. Introducción. Descripción del problema

helene
Download Presentation

Investigación algorítmica

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Investigación algorítmica Grupo Plagiatest-T

  2. Integrantes Grupo 4 • Lizzett Seminario Huamaní 20037185 • César Ríos Gárate 20042153 • Carolina Balbín Ávalos 20050373 • Sheyla Díaz Muguruza 20057079 • Víctor Chávez Lazarte 20062038

  3. Introducción • Descripción del problema • Facilidad de acceso a la información • Apropiación de ideas ajenas • Dificultad para detectar plagio Extraídos de la campaña ‘Por qué y Cómo debemos Combatir el Plagio’ – PUCP [1]

  4. Introducción • Objetivo • Elaborar un Software que permita detectar similitudes de textos entre diferentes documentos de manera que nos permita determinar el nivel de plagio existente en el documento analizado. • Presentación de los algoritmos investigados • Frente a esta problemática se presentan los algoritmos de Secuencias Maximales, Winnowing y Espacios Vectoriales. Todos ellos presentan una Etapa preprocesamiento y la ejecución propia del Algoritmo.

  5. Algoritmo 1: Secuencias Maximales • Algoritmo capaz de encontrar patrones que se repiten en una colección determinada de textos. • Un patrón es una secuencia de elementos que se repiten. • Utiliza dos parámetros: • β:Umbral de frecuencia

  6. ¿Cómo se aplica al problema? • Preprocesamiento: • Para cada palabra en el documento a procesar se crea un nodo en el cual se almacena el identificador de la palabra y 2 arreglos; el primero de ellos almacenará una lista con las posiciones en las cuales se encuentra la palabra en el documento y el segundo almacenará una lista con punteros a los nodos de las palabras en las posiciones siguientes a la analizada.

  7. ¿Cómo se aplica al problema? • Algoritmo: • Se recorren frecuencia definido. paralelamente la lista de nodos de los documentos a comparar de modo que se detecten secuencias comunes, se considerarán las secuencias encontradas cuyo tamaño supere al umbral de frecuencia • Adicionalmente al hallar la secuencia en cada caso, se tendrá en consideración el umbral de salto, el cual representa la tolerancia que se tiene al realizar la comparación y por ende la búsqueda de las secuencias comunes.

  8. ¿Cómo se aplica al problema? 1era Fase: Construcción de la estructura Hash que representa la información que presentan los documentos Doc 1 Doc 2 Doc 3 Enlacasa roja dela esquina Enlacasadela plaza Enla puerta delacasa Buscamos las palabras que aparecen repetidas por documento y le asignamos un código HASH por cada palabra diferente en cada documento

  9. ¿Cómo se aplica al problema? Identificador de la palabra Nodo Palabra Identificador del documento Identificador de palabra Diccionario de Listas enlazadas Lista de las posiciones que ocupa esa palabra en el documento Lista de punteros a los nodos de las palabras siguientes según las posiciones de dicha palabra

  10. ¿Cómo se aplica al problema? 2da Fase: Almacenamiento de las secuencias maximales en la estructura que se muestra a continuación Atributo ‘SumaIndex’ Longitud de la Secuencia Maximal Cada unidad describe a una Secuencia Maximal Se ordenan de acuerdo a la longitud de la secuencia Maximal y al atributo SumaIndex

  11. Secuencias Maximales

  12. Algoritmo 2: Winnowing • El algoritmo presentado es capaz de detectar similitudes entre documentos a nivel de fragmentos. • Un aspecto importante es establecer el criterio de selección de estos fragmentos. Ejemplo: por párrafos o por oraciones.

  13. ¿Cómo se aplica al problema? • Preprocesamiento: • A cada fragmento del documento se le aplica una función Hash, la cual nos dará un identificador único por cada uno de ellos. • Se escogen los valores hash más significativos del documento. • A los valores hash escogidos en el paso anterior se les almacena mediante una lista inversa, la cual nos dará las posiciones en las cuales se repite el mismo fragmento dentro del documento.

  14. ¿Cómo se aplica al problema? Cada fracaso supone un capítulo más en la historia de nuestra vida y una lección que nos ayuda a crecer. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo más en nuestra vida y una lección que nos ayuda a madurar y a crecer. Aprende de ellos, y sigue. Por los fracasos no te dejes desanimar. Documento1 Documento2

  15. ¿Cómo se aplica al problema? Paso 1 : Seleccionamos los fragmentos Cada fracaso es un capítulo en la historia de nuestra vida. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo más en nuestra vida y una lección para madurar. Aprende de ellos, y sigue. Por los fracasos no te dejes desanimar. Documento1 Documento2

  16. ¿Cómo se aplica al problema? Paso 2 : Eliminamos artículos por cada fragmento y signos de puntuación Cada fracaso es un capítulo en la historia de nuestra vida.No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo más en nuestra vida y una lección para madurar.Aprende de ellos, y sigue.Por los fracasos no te dejes desanimar. Documento1 Documento2

  17. ¿Cómo se aplica al problema? Paso 3 : Ordenamos las palabras alfabéticamente dentro de cada fragmento Cada fracaso es un capítulo en historia de nuestra vida No te dejes desanimar por fracasos Aprende de ellos y sigue adelante Cada capítulo de en es fracaso historia nuestra vida un dejes desanimar fracasos No por te adelante Aprende de ellos sigue y Doc1 Cada fracaso constituye un capítulo más en nuestra vida y una lección para madurar Aprende de ellos y sigue Por fracasos no te dejes desanimar Cada capítulo constituye en fracaso lección madurar más nuestra para un una vida y Aprende de ellos sigue y dejes desanimar fracasos no Por te Doc2

  18. ¿Cómo se aplica al problema? Paso 4 : Aplicamos la función hash a cada fragmento previamente ordenado y obtenemos un identificador por cada uno de ellos Cada capítulo de en es fracaso historia nuestra vida un dejes desanimar fracasos No por te adelante Aprende de ellos sigue y 17 20 35 Doc1 = Cada capítulo constituye en fracaso lección madurar más nuestra para un una vida y Aprende de ellos sigue y dejes desanimar fracasos no Por te 13 87 20 Doc2

  19. ¿Cómo se aplica al problema? Paso 5 : Escoger los valores hash más significativos de cada documento y para esto tener en cuenta el tamaño de la ventana. En el ejemplo, la ventana tendrá valor de 4 20 35 18 76 98 23 20 43 19… 18 32 20 76 91 22 5 19 24 … W=4 17 20 35 18 20 35 18 76 35 18 76 98 18 76 98 23 76 98 23 20 98 23 20 43 23 20 43 19 Más significativos: 17 18 20 19 W=4 18 32 20 76 32 20 76 91 20 76 91 22 76 91 22 5 22 5 19 22 5 19 24 Más significativos: 18 20 5 Documento1 Documento2

  20. ¿Cómo se aplica al problema? • Algoritmo: • Para cada par de documentos se comparan los códigos hash almacenados en la base de datos para cada uno de ellos y se cuenta el número total de coincidencias. • Con este número se procede a hallar el porcentaje de similitud a través la división con el número total de códigos hash.

  21. Winnowing - FingerPrint

  22. Winnowing - Mejoras • Se puede almacenar el tamaño de los fragmentos antes de ser convertidos con la función hash para obtener un mejor alcance del porcentaje de similitud al final de la comparación. • Se puede ordenar las palabras dentro de los fragmentos antes de que se les aplique la función hash, con esto el algoritmo considerará los casos en que se modifique el orden de las palabras.

  23. Algoritmo 3: Modelo del Espacio Vectorial – Similitud entre vectores • Este algoritmo usa como base la teoría concerniente a los espacios vectoriales para encontrar similitudes entre los fragmentos de los documentos analizados. • En este caso utilizaremos como criterio de comparación la fórmula de la función coseno para dos vectores.

  24. Algoritmo 3: Modelo del Espacio Vectorial – Similitud entre vectores • Preprocesamiento: • El algoritmo arma una matriz para cada documento en la cual cada fila representa un vector en la que cada componente representa la frecuencia con la que esa palabra se repite en el fragmento escogido.

  25. ¿Cómo se aplica al problema? • Algoritmo: • Se contrasta fila por fila en cada par de matrices (las cuales representan a cada par de documentos) de modo que para cada par de vectores representados en dichas filas se aplica la fórmula del coseno para dos vectores. • Con este resultado usamos el criterio de que si el valor obtenido mediante la formula es cercano a uno podemos considerar que se tratan de fragmentos similares en caso contrario no lo serán. • Usando la cantidad de fragmentos similares podemos determinar el porcentaje de similitud total entre los documento comparados.

  26. Modelo del Espacio Vectorial

  27. Modelo del Espacio Vectorial Cada fracaso supone un capítulo más en la historia de nuestra vida y una lección que nos ayuda a crecer. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo más en nuestra vida y una lección que nos ayuda a madurar y a crecer. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Documento1 Documento2

  28. Modelo del Espacio Vectorial Paso 1 : Fragmentamos el documento. Cada fracaso es un capítulo en la historia de nuestra vida. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo en nuestra vida y una lección. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Documento1 Documento2

  29. Modelo del Espacio Vectorial Paso 2 : Almacenamos los términos de la partición en una matriz Cada fracaso es un capítulo en la historia de nuestra vida constituyey una lección Cada fracaso es un capítulo en la historia de nuestra vida. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo en nuestra vida y una lección. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Frag1 D1 Frag1 D2 Cada columna representa un término Cada fila es una partición de cada documento Doc2 Doc1

  30. Modelo del Espacio Vectorial Paso 3 : Almacenamos los términos de la partición en una matriz Cada fracaso es un capítulo en la historia de nuestra vida constituyey una lección Cada fracaso es un capítulo en la historia de nuestra vida. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Cada fracaso constituye un capítulo en nuestra vida y una lección. No te dejes desanimar por los fracasos. Aprende de ellos, y sigue adelante. Frag1 D1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 Frag1 D2 1 1 0 1 1 1 0 0 0 1 1 1 1 1 1 Documento2 Documento1

  31. Modelo del Espacio Vectorial Paso 4 : Aplicamos la función del Coseno Equivale al producto escalar de dos vectores de documentos (1 y 2) y luego se procede a dividirlo por el producto de la raíz cuadrada del sumatorio de los componentes del vector 1 con la raíz cuadrada del sumatorio de los componentes del vector 2.

  32. Modelo del Espacio Vectorial

  33. Modelo del Espacio Vectorial- Adaptación PALABRA Identificador de la palabra Columna 11 5 Cantidad de ocurrencias de la palabra * Nos ayudaría a evitar la redundancia

  34. Modelo del Espacio Vectorial Fragmento 1- Documento1 Cada fracaso es un capítulo en la historia de nuestra vida 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 1 1 Fragmento 1- Documento2 Cada fracaso constituye un capítulo en nuestra vida y una lección 1 2 12 4 5 6 10 11 13 14 15 1 1 1 1 1 1 1 1 1 1 1

  35. Modelo del Espacio Vectorial • Si los identificadores son iguales se procede a agregarlos a la sumatoria normalmente. • Si hay identificadores en un fragmento y no en el otro se procede a agregar solo en el denominador, según la componente que sea. * Es útil para archivos muy extensos.

  36. Modelo del Espacio Vectorial Fragmento 1- Documento1 Componente aislada Cada fracaso es un capítulo en la historia de nuestra vida 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 1 1 Soniguales Fragmento 1- Documento2 Cada fracaso constituye un capítulo en nuestra vida y una lección 1 2 12 4 5 6 10 11 13 14 15 1 1 1 1 1 1 1 1 1 1 1 Componente aislada

  37. Conclusiones • De los algoritmos presentados como alternativas a la búsqueda de similitudes de texto (elementos de diferentes documentos) podemos concluir que

  38. Referencias: GARCIA BLASCO, Sandra 2009 Extracción de Secuencias Maximales de una colección de Textos – Ingeniería Técnica de Informática y Gestión- Universidad Politécnica de Valencia ALVA MANCHEGO, Fernando 2010 Sistema de Información de Detección de Plagio en documentos digitales usando el método DocumentFingerprinting- Tesis para obtener el título en Ingeniería informática. Pontificia Universidad Católica del Perú WIKIPEDIA Modelo del Espacio Vectorial 2010 http://es.wikipedia.org/wiki/Modelo_de_espacio_vectorial

More Related