mysql - online - Explicación de Wordnet SQL
princeton wordnet (4)
Creo que esta cifra te ayudará a desmitificar WordnetDB.
Lo encontré en /mysql-3.0.0-31-wn-31/doc/images
. Para una imagen más nítida, puede elegir tables-wordnet.png
en esa carpeta.
Estoy tratando de poner en funcionamiento una base de datos de sinónimos simple, para poder encontrar sinónimos de las palabras que el usuario ingresó (¡nada más!). Para esto, obtuve una copia de Wordnet sql thesarus ( http://wnsql.sourceforge.net/ ), pero ahora se me presentan todas estas tablas, y no puedo encontrar ninguna explicación simple para su contenido en ninguna parte:
adjpositions
adjpositiontypes
casedwords
lexdomains
lexlinks
linktypes
morphmaps
morphs
postypes
samples
semlinks
senses
synsets
vframemaps
vframes
vframesentencemaps
vframesentences
words
Alguien podría decirme qué contienen estas tablas y qué necesito, ya que no puedo descifrar su contenido en función de sus datos.
Para comprender correctamente el significado de los diversos términos en Wordnet, debe leer la extensa documentación . Para los sinónimos, necesitarás principalmente la tabla synsets
. Las tablas de base de datos reales en el proyecto que ha descargado se describen en la página de esquema del proyecto.
Paul Preibisch explicó varias tablas principales, aquí hay explicaciones breves para el resto de ellas:
adjpositiontypes : define tres posiciones que los adjetivos pueden tomar en idioma inglés, predicado, atributivo e inmediatamente postnominal.
adjposiciones : vincula palabras concretas (adjetivos) con sus tipos de posición permitidos en la tabla de adjpositiontypes.
linktypes : define todos los tipos de relación (link) usados en wordnet, aproximadamente dos docenas de ellos. Tanto las tablas de enlaces lexlinks como las de semlinks usan esta tabla para definir el tipo de cada link. Algunos tipos de enlaces están marcados como recursivos, lo que significa que si "muebles" es, por ejemplo, un hypernim a una "silla", entonces una "silla" es un hipónimo de "muebles".
lexlinks - enlaces léxicos, es decir, relaciones entre palabras. Ejemplo:
triste - tristeza (derivación)
semlinks - enlaces semanticos, es decir, relaciones entre synsets. Ejemplo:
silla - muebles (hypernym)
morfos : conectado a la tabla de "palabras", contiene formas de palabras irregulares. Una palabra puede tener varios morfos y un morfo puede ser una forma irregular para varias palabras, por lo que además tiene la tabla de morfemas . Ejemplos:
ábaco (palabra) - abaci (morfo)
aborrecer (palabra) - aborrecido, aborrecedor (morfos)
Postipos - define "partes del discurso". Contiene solo los siguientes valores:
n - sustantivo, v –verbio, a - adjetivo, r - adverbio, s - adjetivo satélite.
muestras - oraciones de muestra para synsets. Un sincronismo puede tener múltiples muestras.
vframemaps & vframes - vframes definen un tipo de "plantillas de verbos" estándar. Vframemaps vincula palabras (verbos) con los vframes correspondientes en los que pueden aparecer.
vframesentencemaps & vframesentences - similar a las dos tablas anteriores, justo aquí tienes oraciones completas como plantillas de verbos.
WordNet es una base de datos de palabras super cool. Lo he estado investigando yo mismo. A continuación, enumero mis hallazgos, y espero que te ayude a comprender mejor las tablas.
La tabla de sincronización La tabla de sincronización es una de las tablas más importantes de la base de datos. Es responsable de albergar todas las definiciones dentro de WordNet. Cada fila en la tabla de sincronización tiene un sinónimo, una definición, una posición (partes del campo de voz) y un lexdomainid (que enlaza con la tabla de lexdomain) Hay 117373 synsets en la base de datos de WordNet.
La tabla de palabras WordNet también tiene una tabla de "palabras", que solo tiene dos campos: un wordid y un "lema". La tabla de palabras es responsable de albergar todos los lemas (palabras base) dentro de la base de datos de Wordnet. Hay 146625 entradas en esta tabla.
Entonces ... ¿cómo están vinculadas estas dos tablas? ¿La respuesta? La mesa sensorial!
La tabla de detección La tabla de detección es responsable de vincular palabras (en la tabla de palabras), con definiciones (en la tabla de sincronización). Las entradas en la tabla de sentidos se denominan "pares de palabras-sentido", porque cada emparejamiento de un wordid con un synset es un significado completo de una palabra, un "sentido de la palabra".
Hay un total de 206,354 sentidos de palabras en la base de datos de WordNet.
La tabla de dominios de Lex La tabla de dominios de referencia hace referencia a la tabla de sentidos y se utiliza para definir a qué dominio léxico pertenece un par de sentido de palabra. Hay 45 dominios léxicos en la tabla lexdomains. La tabla lexdomain, por lo tanto, es la forma de WordNet de "etiquetar" un par de sentido de palabra. Sin embargo, es bastante limitado, porque un par de sentido de palabra solo puede pertenecer a UN dominio léxico.
Los 45 dominios léxicos incluyen:
Adjetivos: todos, pert
Adverbios todos
Nombres tops, ley, animal, artefacto, atributo, cuerpo, cognición, comunicación, evento, sensación, comida, grupo, ubicación, motivo, objeto, persona, fenómeno, planta, posesión, proceso, cantidad, linkdef, forma, estado, sustancia , hora,
Verbos cuerpo, cambio, cognición, comunicación, competencia, consumo, contacto, creación, emoción, movimiento, percepción, posesión, social, estado, clima, personas
La tabla de casedwords Algunas palabras dentro de la tabla de palabras naturalmente tienen la primera letra en mayúscula, es decir, "equipo A". Dado que la tabla de palabras almacena todas las palabras en minúsculas, WordNet usa esta tabla para especificar la versión en mayúsculas de la palabra. Hay 40313 entradas en esta tabla.
Hay muchas otras tablas en la base de datos de WordNet, una vez que las haya investigado, las publicaré nuevamente.
Encontrar sus sinónimos Para responder a su pregunta con respecto a los sinónimos, debe hacer lo siguiente.
Digamos que quieres encontrar los sinónimos para la palabra "Llevar". Para hacerlo, primero debe buscar en la tabla de palabras un lema que coincida con la palabra "carry". Esto produciría el wordid 21253. Luego buscaría en la tabla de los sentidos, para encontrar todos los pares de word-sense para la palabra carry. Esto produce 41 resultados: cada resultado enumera el wordid 21253 y un senseid (que es el índice del par de sentido de la palabra) y un synsetid.
Ahora, necesitaría consultar la tabla de sincronización para cada uno de los valores sincrónicos devueltos para poder acceder al campo de definición asociado en la tabla de sincronización.
Por último, para encontrar los sinónimos para cada uno de los synsets enumerados, simplemente deberá buscar en la tabla de sentidos otros pares de sentido de palabra que compartan el mismo synset.
Ejemplo: uno de los 41 pares de sentido de palabra para la palabra "carry" se enumera a continuación: Si buscamos la definición de este synsetid 202083512, encontrará "transmitir o servir como medio de transmisión"
Para encontrar todos los sinónimos de esta definición, debe buscar en la tabla de detección el mismo sinónimo de 202083512. Esto le da a los sinónimos: canalizar, transmitir, transmitir, impartir y transmitir (nota: deberá ingresar a la tabla de palabras para obtener los lemmas reales)
Espero que esto ayude a desmitificar WordNet para usted ... Me parece bastante genial ...