SlideShare una empresa de Scribd logo
Sistemas de Información II Tema 9. Bases de datos de texto Carlos Castillo UPF – 2008 Bibliografía: Baeza-Yates y Ribeiro-Neto: “Modern Information Retrieval”, 1999 Capítulo 7
Agenda Ley de Zipf De bytes a texto De texto a palabras De palabras a keywords Indexación
Importancia de las palabras Alta Sustantivos Grupos de sustantivos => Keywords Baja Artículos Preposiciones Variable Verbos
Frecuencia de las palabras Ley de Zipf f(w k ) = frecuencia de la k-ésima palabra f(w k )    1/k 
Ley de Zipf Palabras ordenadas por frecuencia Frecuencia
Importancia como keyword Palabras ordenadas por frecuencia Frecuencia No se indexan No aparecen Keywords importantes
Importancia como keyword Palabras ordenadas por frecuencia Frecuencia Importancia
Frecuencias palabras catalán  (cucweb) 80 formas = 50% de las palabras
¿Por qué no usar todas las palabras? Ahorrar espacio Palabras muy frecuentes Simplificar la tarea de búsqueda No distinguir entre mayúsculas y minúsculas Asociar palabras con el mismo significado Mejorar la relevancia Ej.: documento artificialmente largo por usar más palabras funcionales
Herramientas para crear una vista lógica Análisis léxico Eliminación de stopwords Stemming (lematización) Uso de diccionarios
Procesamiento del texto Texto completo Texto + Estructura Texto Documento Tokens Eliminar Stopwords Seleccionar Lematizar Indexación Índice Reconocimiento de estructura
Procesar un documento Formato pdf/word/excel/html/etc.? Lenguaje Set de caracteres (codificación de texto)
Bytes Texto
Formas de codificar  Correspondencia bits <=> caracteres Ejemplo: 00100000 = “ ” (espacio) Formato más usado ASCII (sólo 256 “letras”) Formatos usados para internacionalización Iso-8859-1 (también 256 letras) http://www.htmlhelp.com/reference/charset/latin1.gif Formato internacional UNICODE (4.294.967.296 “letras”)
ISO-8859-1 (Latin-1) Francés, Castellano, Catalán, Italiano, Alemán, Holandés, Finés, Inglés, etc...
ISO-8859-2 (Latin-2) Checo, Húngaro, Polaco, Rumano, Croata, etc...
UNICODE: estándar UNICODE (4.294.967.296 “letras”) En teoría (UTF-32), 4 bytes por caracter => 4 veces más grande que ASCII, inaceptable Codificaciones de largo variable UTF-8 (base es 1 caracter) UTF-16 (base es 2 caracteres)
UTF-8, codificación La mayoría de los caracteres se expresa con un sólo byte
Texto Palabras
Análisis léxico (tokenization) Proceso de separar palabras Un grupo de caracteres son caracteres de palabra [0-9A-Za-z] Otro grupo de caracteres son separadores [ ] ' “ ) ( ? . , ; Autómata finito que reconoce palabras
Problemas Combinación de letras y números UB40, Windows95, 350AC, 510A.C. Guíones y signos Zig-Zag, 3.12, B-49, Juan 13:21 U.S.A. = USA Finland's capital Palabras Compuestas Santa María, New York, Iglesia del Pi
Mayúsculas y minúsculas ¿Ignorar mayúsculas y minúsculas? MIT/mit General Motors (Motors != motors) SAIL vs sail
Más problemas Separadores propios de cada idioma estel·lar, state-of-the-art Acentos Résumé o Resume Papá o Papa L'eixample (“L'eixample”) ó (“eixample”) ó (“le”, “eixample”) O tal vez todas como términos separados
Lenguajes Chino y Japonés Sin espacios entre palabras Tokenización ambigua Japonés Múltiples alfabetos Hebreo (derecha-a-izquierda) Idiomas de izquierda-a-derecha
Números Otro tipo de indexación Rangos de números No todos significan lo mismo “Motorola 68000” (nombre propio) “68000 pesetas” (cantidad) “2003” (¿año?) Normalmente se indexan aparte
Números (ejemplo) Vendo 19500 Peugot 406 Coupé 2.2 70000km 2002 934567123 de 10 a 16
¿Cómo reconocer los números que son relevantes? Vendo 19500 Peugot 406 Coupé 2.2 70000km 2002 934567123 de 10 a 16
Fechas 1/1/2005 1 de Enero del 2005 Sábado, 1 de Enero del 2005 => Requieren detección y normalización Ordenamiento 2/1/2008 1 de Febrero en USA, 2 de Enero en España
Palabras Keywords
Stopwords Tipos de palabra que no tienen significado por sí mismas Preposiciones, artículos, pronombres, conjunciones Contrajemplo: “to be or not to be”, “yo robot” Palabras que a veces no tienen significado: e.g. verbos auxiliares Son característicos de cada lenguaje Requieren detectar el idioma de cada página
Lematización Importante sobre todo en algunos lenguajes Ej.: lenguas romances Diferentes variantes Singular/Plural: amigo, amigos Masculino/Femenino: amigo, amiga Prefijos y sufijos: inconstitucional Ambigüedad Cruces (lema: ¿cruz o cruzar?) No siempre se puede hacer Ordenador != Ordenar
Lemas y formas: ejemplo Varias palabras comparten un lema Lema “anar” Formas: anar, va, van, vaig, va, anat, vam, van, anava, etc... Lema “be” Formas: be, is, ar, am Lema “fer” Formas: fer, faig, fa, fet, fan, fent, farà, etc...
Frecuencias lemas en catalán (cucweb) 24 lemas = 50% de las palabras
¿Cómo lematizar? Utilizando un diccionario Grande Costoso de construir N-gramas Ej.: trigramas Abogado: abo bog oga gad ado Abogados: abo bog oga gad ado dos => Comparten muchos trigramas => misma palabra Reglas Lematizador de Porter
Lematizador de Porter Reglas ($ = fin de palabra) Escoger el sufijo más grande ational$ -> ate$ tional$ -> tion$ izer$ -> ize$ Etc. En lenguas romances no funciona bien Stemming != Lematizar Automate, automatic, automation Stem = automat, Lema = automatic?
Selección de palabras Selección manual (usando diccionario) GARAGES see also Automobiles, Motor Vehicles, Etc.; Transportation -- Buildings and Structures; GasStations GARDEN STRUCTURES GARDENS see also Landscape Architecture; Parks; Trees; Zoos Ghost Towns: see Abandoned Settlements Selección automática Agregar frases frecuentes “Nueva York”, “Sri Lanka”, “Pacto de Estabilidad”, ...
Diccionarios Permiten indexación precisa Incluyen relaciones de Sinónimos (car = automobile) Generalización (ampliar una consulta) Ej.: Dólar < unidad monetaria < unidad de medida < cantidad definida < abstracción Ej.: Caballo < equino < mamífero < ser vivo < entidad Especificidad (restringir una consulta) Wordnet http://www.cogsci.princeton.edu/cgi-bin/webwn
Problemas con los diccionarios Puede ser confuso para un usuario Mayor tiempo de procesamiento Interpretación del sentido de las palabras Costoso de implementar para colecciones grandes
Etiquetado Part-of-speech tags Reconocer el rol de cada palabra Sustantivos, verbos, adjetivos, determinantes, etc... ¿Cómo funciona? Reglas probabilísticas (modelo del lenguaje) Observar palabra anterior y siguiente Diccionarios
Resumen Procesamiento del texto Múltiples etapas Extracción de keywords para indexar Vista lógica Separar señal de ruido
Indexación
Tipos de búsqueda Búsqueda online e.g.: grep Búsqueda offline Requiere un paso previo de indexación
Proceso general (Web)
Índice
Proceso de búsqueda Convertir consulta en palabras => ¡Mismo proceso que con documentos! Convertir palabras en termids Tabla de hashing o búsqueda binaria Recuperar listas de posteo Posiblemente listas parciales Intentar adivinar tamaño del resultado Intersectar listas de posteo O intersección parcial
Proceso de creación Dos pasos Construcción de vocabulario Ordenar términos Hash Construcción de listas de posteo Para índices grandes Mezclado de índices parciales
Distribución de índice Técnicas Distribuir términos Distribuir documentos
Ranking Modelo vectorial Consulta = vector en espacio de términos Documento = vector en espacio de términos Similaridad = coseno entre vectores Varias fórmular para ajustar estos pesos: Normalizar la frecuencia de términos Considerar la frecuencia en la colección TF.IDF
Resumen Proceso de texto para vista lógica Pre-proceso: indexación Ranking, modelo vectorial

Más contenido relacionado

PDF
Consejos para realizar_mejores_busquedas
PPTX
Búsqueda en google
PPT
Cómo buscar en internet
PPTX
César Aparicio presentación SEonthebeach 2017
PDF
Datos En La Web - Clase 1
DOCX
Búsqueda avanzada de informacion en internet
Consejos para realizar_mejores_busquedas
Búsqueda en google
Cómo buscar en internet
César Aparicio presentación SEonthebeach 2017
Datos En La Web - Clase 1
Búsqueda avanzada de informacion en internet

Similar a Índices de Texto (20)

PPT
Alfonso Muñoz – Ocultación de comunicaciones en lenguaje natural [Rooted CON ...
PPT
google avanzado
DOCX
Defina lo que busca
KEY
Aplicando elasticidad en la búsqueda con Grails
PPT
Guía AntConc 3.2.1
PPTX
Busquedas en internet
PDF
Uso del diccionario, cognados y afijos
PDF
motores de Búsqueda
PPSX
Prototipo de analizador léxico
PDF
Practica5 final
PDF
Consejos generales para el uso de las bases de datos.
PDF
Consejos generales para el uso de las bases de datos.
PPTX
Evelyn.redroban.adriana.ortiz.exposicion.
DOCX
Guia uso de la informacion 2021
PPT
Búsqueda en internet
PDF
Guía 2 acrónimos. PNFI - Inglés I- 2015
PDF
PLN - Anotación automática de textos
PPTX
Jamilito formas de buscar en google
PPTX
2012_1_sch_DidácticaOrganizacionEscolar
DOC
Informacion
Alfonso Muñoz – Ocultación de comunicaciones en lenguaje natural [Rooted CON ...
google avanzado
Defina lo que busca
Aplicando elasticidad en la búsqueda con Grails
Guía AntConc 3.2.1
Busquedas en internet
Uso del diccionario, cognados y afijos
motores de Búsqueda
Prototipo de analizador léxico
Practica5 final
Consejos generales para el uso de las bases de datos.
Consejos generales para el uso de las bases de datos.
Evelyn.redroban.adriana.ortiz.exposicion.
Guia uso de la informacion 2021
Búsqueda en internet
Guía 2 acrónimos. PNFI - Inglés I- 2015
PLN - Anotación automática de textos
Jamilito formas de buscar en google
2012_1_sch_DidácticaOrganizacionEscolar
Informacion
Publicidad

Más de Carlos Castillo (ChaTo) (20)

PDF
Finding High Quality Content in Social Media
PDF
When no clicks are good news
PDF
Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017
PDF
Detecting Algorithmic Bias (keynote at DIR 2016)
PDF
Discrimination Discovery
PDF
Fairness-Aware Data Mining
PDF
Big Crisis Data for ISPC
PDF
Databeers: Big Crisis Data
PDF
Observational studies in social media
PDF
Natural experiments
PDF
Content-based link prediction
PDF
Link prediction
PDF
Recommender Systems
PDF
Graph Partitioning and Spectral Methods
PDF
Finding Dense Subgraphs
PDF
Graph Evolution Models
PDF
Link-Based Ranking
PDF
Text Indexing / Inverted Indices
PDF
Text Summarization
Finding High Quality Content in Social Media
When no clicks are good news
Socia Media and Digital Volunteering in Disaster Management @ DSEM 2017
Detecting Algorithmic Bias (keynote at DIR 2016)
Discrimination Discovery
Fairness-Aware Data Mining
Big Crisis Data for ISPC
Databeers: Big Crisis Data
Observational studies in social media
Natural experiments
Content-based link prediction
Link prediction
Recommender Systems
Graph Partitioning and Spectral Methods
Finding Dense Subgraphs
Graph Evolution Models
Link-Based Ranking
Text Indexing / Inverted Indices
Text Summarization
Publicidad

Último (20)

PDF
Introduccion a la Investigacion Cualitativa FLICK Ccesa007.pdf
DOCX
Programa_Sintetico_Fase_4.docx 3° Y 4°..
PDF
Ernst Cassirer - Antropologia Filosofica.pdf
DOCX
PLANES DE área ciencias naturales y aplicadas
PDF
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
PPTX
RESUMENES JULIO - QUIRÓFANO HOSPITAL GENERAL PUYO.pptx
PDF
RM2025 - FUNDAMENTOS TEÓRICOS - PEDIATRÍA.pdf
PPTX
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
PDF
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
PDF
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
PDF
La lluvia sabe por qué: una historia sobre amistad, resiliencia y esperanza e...
PDF
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
PDF
Jodorowsky, Alejandro - Manual de Psicomagia.pdf
PDF
Introducción a la historia de la filosofía
PDF
ACERTIJO EL CONJURO DEL CAZAFANTASMAS MATEMÁTICO. Por JAVIER SOLIS NOYOLA
PPTX
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
PDF
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
PDF
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
PDF
ciencia_tecnologia_sociedad Mitcham Carl. (1994)..pdf
PDF
MODULO I ENFERMERIA BASICA.pdf HIstoria en enfermeria
Introduccion a la Investigacion Cualitativa FLICK Ccesa007.pdf
Programa_Sintetico_Fase_4.docx 3° Y 4°..
Ernst Cassirer - Antropologia Filosofica.pdf
PLANES DE área ciencias naturales y aplicadas
Mi Primer Millon - Poissant - Godefroy Ccesa007.pdf
RESUMENES JULIO - QUIRÓFANO HOSPITAL GENERAL PUYO.pptx
RM2025 - FUNDAMENTOS TEÓRICOS - PEDIATRÍA.pdf
LAS MIGRACIONES E INVASIONES Y EL INICIO EDAD MEDIA
Aumente su Autoestima - Lair Ribeiro Ccesa007.pdf
Como Potenciar las Emociones Positivas y Afrontar las Negativas Ccesa007.pdf
La lluvia sabe por qué: una historia sobre amistad, resiliencia y esperanza e...
LIBRO 2-SALUD Y AMBIENTE-4TO CEBA avanzado.pdf
Jodorowsky, Alejandro - Manual de Psicomagia.pdf
Introducción a la historia de la filosofía
ACERTIJO EL CONJURO DEL CAZAFANTASMAS MATEMÁTICO. Por JAVIER SOLIS NOYOLA
MATEMATICAS GEOMETRICA USO TRANSPORTADOR
La Inteligencia Emocional - Fabian Goleman TE4 Ccesa007.pdf
Nadie puede salvarte excepto Tú - Madame Rouge Ccesa007.pdf
ciencia_tecnologia_sociedad Mitcham Carl. (1994)..pdf
MODULO I ENFERMERIA BASICA.pdf HIstoria en enfermeria

Índices de Texto

  • 1. Sistemas de Información II Tema 9. Bases de datos de texto Carlos Castillo UPF – 2008 Bibliografía: Baeza-Yates y Ribeiro-Neto: “Modern Information Retrieval”, 1999 Capítulo 7
  • 2. Agenda Ley de Zipf De bytes a texto De texto a palabras De palabras a keywords Indexación
  • 3. Importancia de las palabras Alta Sustantivos Grupos de sustantivos => Keywords Baja Artículos Preposiciones Variable Verbos
  • 4. Frecuencia de las palabras Ley de Zipf f(w k ) = frecuencia de la k-ésima palabra f(w k )  1/k 
  • 5. Ley de Zipf Palabras ordenadas por frecuencia Frecuencia
  • 6. Importancia como keyword Palabras ordenadas por frecuencia Frecuencia No se indexan No aparecen Keywords importantes
  • 7. Importancia como keyword Palabras ordenadas por frecuencia Frecuencia Importancia
  • 8. Frecuencias palabras catalán (cucweb) 80 formas = 50% de las palabras
  • 9. ¿Por qué no usar todas las palabras? Ahorrar espacio Palabras muy frecuentes Simplificar la tarea de búsqueda No distinguir entre mayúsculas y minúsculas Asociar palabras con el mismo significado Mejorar la relevancia Ej.: documento artificialmente largo por usar más palabras funcionales
  • 10. Herramientas para crear una vista lógica Análisis léxico Eliminación de stopwords Stemming (lematización) Uso de diccionarios
  • 11. Procesamiento del texto Texto completo Texto + Estructura Texto Documento Tokens Eliminar Stopwords Seleccionar Lematizar Indexación Índice Reconocimiento de estructura
  • 12. Procesar un documento Formato pdf/word/excel/html/etc.? Lenguaje Set de caracteres (codificación de texto)
  • 14. Formas de codificar Correspondencia bits <=> caracteres Ejemplo: 00100000 = “ ” (espacio) Formato más usado ASCII (sólo 256 “letras”) Formatos usados para internacionalización Iso-8859-1 (también 256 letras) http://www.htmlhelp.com/reference/charset/latin1.gif Formato internacional UNICODE (4.294.967.296 “letras”)
  • 15. ISO-8859-1 (Latin-1) Francés, Castellano, Catalán, Italiano, Alemán, Holandés, Finés, Inglés, etc...
  • 16. ISO-8859-2 (Latin-2) Checo, Húngaro, Polaco, Rumano, Croata, etc...
  • 17. UNICODE: estándar UNICODE (4.294.967.296 “letras”) En teoría (UTF-32), 4 bytes por caracter => 4 veces más grande que ASCII, inaceptable Codificaciones de largo variable UTF-8 (base es 1 caracter) UTF-16 (base es 2 caracteres)
  • 18. UTF-8, codificación La mayoría de los caracteres se expresa con un sólo byte
  • 20. Análisis léxico (tokenization) Proceso de separar palabras Un grupo de caracteres son caracteres de palabra [0-9A-Za-z] Otro grupo de caracteres son separadores [ ] ' “ ) ( ? . , ; Autómata finito que reconoce palabras
  • 21. Problemas Combinación de letras y números UB40, Windows95, 350AC, 510A.C. Guíones y signos Zig-Zag, 3.12, B-49, Juan 13:21 U.S.A. = USA Finland's capital Palabras Compuestas Santa María, New York, Iglesia del Pi
  • 22. Mayúsculas y minúsculas ¿Ignorar mayúsculas y minúsculas? MIT/mit General Motors (Motors != motors) SAIL vs sail
  • 23. Más problemas Separadores propios de cada idioma estel·lar, state-of-the-art Acentos Résumé o Resume Papá o Papa L'eixample (“L'eixample”) ó (“eixample”) ó (“le”, “eixample”) O tal vez todas como términos separados
  • 24. Lenguajes Chino y Japonés Sin espacios entre palabras Tokenización ambigua Japonés Múltiples alfabetos Hebreo (derecha-a-izquierda) Idiomas de izquierda-a-derecha
  • 25. Números Otro tipo de indexación Rangos de números No todos significan lo mismo “Motorola 68000” (nombre propio) “68000 pesetas” (cantidad) “2003” (¿año?) Normalmente se indexan aparte
  • 26. Números (ejemplo) Vendo 19500 Peugot 406 Coupé 2.2 70000km 2002 934567123 de 10 a 16
  • 27. ¿Cómo reconocer los números que son relevantes? Vendo 19500 Peugot 406 Coupé 2.2 70000km 2002 934567123 de 10 a 16
  • 28. Fechas 1/1/2005 1 de Enero del 2005 Sábado, 1 de Enero del 2005 => Requieren detección y normalización Ordenamiento 2/1/2008 1 de Febrero en USA, 2 de Enero en España
  • 30. Stopwords Tipos de palabra que no tienen significado por sí mismas Preposiciones, artículos, pronombres, conjunciones Contrajemplo: “to be or not to be”, “yo robot” Palabras que a veces no tienen significado: e.g. verbos auxiliares Son característicos de cada lenguaje Requieren detectar el idioma de cada página
  • 31. Lematización Importante sobre todo en algunos lenguajes Ej.: lenguas romances Diferentes variantes Singular/Plural: amigo, amigos Masculino/Femenino: amigo, amiga Prefijos y sufijos: inconstitucional Ambigüedad Cruces (lema: ¿cruz o cruzar?) No siempre se puede hacer Ordenador != Ordenar
  • 32. Lemas y formas: ejemplo Varias palabras comparten un lema Lema “anar” Formas: anar, va, van, vaig, va, anat, vam, van, anava, etc... Lema “be” Formas: be, is, ar, am Lema “fer” Formas: fer, faig, fa, fet, fan, fent, farà, etc...
  • 33. Frecuencias lemas en catalán (cucweb) 24 lemas = 50% de las palabras
  • 34. ¿Cómo lematizar? Utilizando un diccionario Grande Costoso de construir N-gramas Ej.: trigramas Abogado: abo bog oga gad ado Abogados: abo bog oga gad ado dos => Comparten muchos trigramas => misma palabra Reglas Lematizador de Porter
  • 35. Lematizador de Porter Reglas ($ = fin de palabra) Escoger el sufijo más grande ational$ -> ate$ tional$ -> tion$ izer$ -> ize$ Etc. En lenguas romances no funciona bien Stemming != Lematizar Automate, automatic, automation Stem = automat, Lema = automatic?
  • 36. Selección de palabras Selección manual (usando diccionario) GARAGES see also Automobiles, Motor Vehicles, Etc.; Transportation -- Buildings and Structures; GasStations GARDEN STRUCTURES GARDENS see also Landscape Architecture; Parks; Trees; Zoos Ghost Towns: see Abandoned Settlements Selección automática Agregar frases frecuentes “Nueva York”, “Sri Lanka”, “Pacto de Estabilidad”, ...
  • 37. Diccionarios Permiten indexación precisa Incluyen relaciones de Sinónimos (car = automobile) Generalización (ampliar una consulta) Ej.: Dólar < unidad monetaria < unidad de medida < cantidad definida < abstracción Ej.: Caballo < equino < mamífero < ser vivo < entidad Especificidad (restringir una consulta) Wordnet http://www.cogsci.princeton.edu/cgi-bin/webwn
  • 38. Problemas con los diccionarios Puede ser confuso para un usuario Mayor tiempo de procesamiento Interpretación del sentido de las palabras Costoso de implementar para colecciones grandes
  • 39. Etiquetado Part-of-speech tags Reconocer el rol de cada palabra Sustantivos, verbos, adjetivos, determinantes, etc... ¿Cómo funciona? Reglas probabilísticas (modelo del lenguaje) Observar palabra anterior y siguiente Diccionarios
  • 40. Resumen Procesamiento del texto Múltiples etapas Extracción de keywords para indexar Vista lógica Separar señal de ruido
  • 42. Tipos de búsqueda Búsqueda online e.g.: grep Búsqueda offline Requiere un paso previo de indexación
  • 45. Proceso de búsqueda Convertir consulta en palabras => ¡Mismo proceso que con documentos! Convertir palabras en termids Tabla de hashing o búsqueda binaria Recuperar listas de posteo Posiblemente listas parciales Intentar adivinar tamaño del resultado Intersectar listas de posteo O intersección parcial
  • 46. Proceso de creación Dos pasos Construcción de vocabulario Ordenar términos Hash Construcción de listas de posteo Para índices grandes Mezclado de índices parciales
  • 47. Distribución de índice Técnicas Distribuir términos Distribuir documentos
  • 48. Ranking Modelo vectorial Consulta = vector en espacio de términos Documento = vector en espacio de términos Similaridad = coseno entre vectores Varias fórmular para ajustar estos pesos: Normalizar la frecuencia de términos Considerar la frecuencia en la colección TF.IDF
  • 49. Resumen Proceso de texto para vista lógica Pre-proceso: indexación Ranking, modelo vectorial