2009-11-08 19 views
6

Por ejemplo ...¿WordNet tiene "niveles"? (PNL)

pollo es un animal de.
Burrito es un alimento .

WordNet le permite hacer "is-a" ... la función jerárquica.

Sin embargo, ¿cómo sé cuándo dejar de viajar por el árbol? Quiero un NIVEL.
Eso es consistente.

Por ejemplo, si se presentan varias palabras, quiero que wordNet categorice todas, pero en cierto nivel, para que no vaya demasiado lejos. Categorizar "burrito" como una "cosa" es demasiado amplio, pero "comida mexicana envuelta" es demasiado específica. Quiero subir la jerarquía o bajar ... hasta el NIVEL correcto.

Respuesta

12

WordNet es un léxico en lugar de una ontología, por lo que los "niveles" realmente no se aplican.

Hay SUMO, que es una ontología superior que se relaciona con WordNet si desea un enrejado dirigido en lugar de una red.

Para algunos dominios, la ontología de nivel medio de SUMO es probablemente la que desea buscar, pero no estoy seguro de que tenga "comida mexicana envuelta", ya que la mayoría de sus temas son científicos o de ingeniería.

jerarquía de WordNet es

beef burrito < burrito < dish/2 < victuals < food < substance < entity. 

Entidad es un concepto de nivel superior, por lo que si usted deja una sola sustancia a continuación obtendrá alimentos burrito ISA. Puede calcular un nivel basado en eso, pero no necesariamente será tan consistente como SUMO, o generará su propio conjunto de conceptos de nivel medio para terminar en. No hay un paso de "comida mexicana envuelta" en WordNet.

+0

¿La mayor parte de SUMO es ciencia o ingeniería? No contiene palabras de todos los días, como alimentos, personas, autos, trabajos, etc. – TIMEX

+0

SUMO es una ontología superior. Las ontologías de nivel medio (donde encontrará conceptos entre 'cosa' y 'burrito de carne') que figuran en la página no incluyen comida, sino que reflejan el tipo de organizaciones que financian el proyecto. Hay una ontología de nivel medio para las personas. También hay uno para las industrias (y por lo tanto, los empleos), incluidos los proveedores de alimentos, pero no se mencionan los burritos si se agota. –

+0

Gracias, Pete. f – TIMEX

2

Para obtener niveles, debe predefinir el contenido de cada nivel. Una ontología a menudo los define como los hijos IS_A inmediatos de un concepto específico, pero si eso está ausente, debes desarrollar tú mismo un método.

El próximo paso es darle prioridad a cada concepto, en caso de que quiera presentar solo una categoría para cada palabra. La prioridad se puede hacer de múltiples maneras, por ejemplo, como el recuento de las relaciones IS_A entre la categoría y la palabra, o las prioridades seleccionadas manualmente para cada categoría. Para cada palabra, puede elegir la categoría con la más alta prioridad. Por ejemplo, puede querer que la carne sea "comida" en lugar de sustancia química.

También puede elegir algunas palabras que cambien la prioridad si están en la ruta. Por ejemplo, si quiere que algunos productos químicos que también son alimentos, se anuncien como productos químicos, pero otros deberían seguir siendo alimentos.

5

[favor dar crédito a Pete Kirkham, llegó por primera vez con la referencia a SUMO que bien puede responder a la pregunta hecha por Alex, el OP]

(sólo estoy proporcionando un complemento de la información aquí; me comenzó en un campo de comentarios pero pronto se quedó sin espacio y capabilites de diseño ...)

Alex: la mayoría de sumo es la ciencia o la ingeniería? No contiene palabras de todos los días, como alimentos, personas, autos, trabajos, etc.
Pete K: SUMO es una ontología superior. Las ontologías de nivel medio (donde encontrará conceptos entre 'cosa' y 'burrito de carne') que figuran en la página no incluyen comida, sino que reflejan el tipo de organizaciones que financian el proyecto. Hay una ontología de nivel medio para las personas. También hay uno para las industrias (y por lo tanto los trabajos), incluidos los proveedores de alimentos, pero no se mencionan los burritos si lo grep.

Mis dos centavos
100% de WordNet (3,0 es decir, la última, así como las versiones anteriores) es mapeados a SUMO, y que puede ser lo que Alex necesita. Las ontologías de nivel medio asociadas con SUMO (o más bien con MILO) están efectivamente en dominios específicos, y en este momento no incluyen Foodstuff, pero como WordNet sí (incluye todo lo que se puede hacer, muchas de estas cosas cotidianas) que haces no es necesario aprovechar ninguna ontología formal "en" SUMO, sino utilizar el mapeo WordNet de Sumo (posiblemente además de WordNet, que, una vez más, no es una ontología, pero con su "jerarquía" informal y flexible también puede ayudar.

alguna dificultad puede surgir, sin embargo, de dos áreas (y algo más ;-)?):

  • "nivel" de la ontología SUMO puede no ser el nivel que tendría en cuenta para su aplicación particular. Por ejemplo, mientras que " Burrito" trae " Alimentos", en la entidad de nivel superior en SUMO " pollo" trae bien " pollo", que sólo a través de una larga cadena encuentra " Animal" (en concreto: pollo- > Aves de corral-> Pájaro-> Warm_Blooded_Vertebrae-> Vértebras-> Animal).
  • La cobertura y los metadatos de Wordnet son impresionantes, pero con respecto a los conceptos de nivel medio puede ser un poco inconsistente. Por ejemplo, "nuestro" hypernym de Burrito es apropiadamente "Dish", que le proporciona alrededor de 140 platos de comida, que incluye genéricos como "Soup" o "Casserole", así como "Chicken Marengo" (pero omite decir "Chicken Cacciatore")

Mi punto, en la crianza de estos temas, no es criticar WordNet o SUMO y sus ontologías relacionadas, sino simplemente para ilustrar algunos de los problemas asociados con la construcción de la ontología, sobre todo en el nivel medio.

Independientemente de algunos de los posibles defectos y carencias de una solución a base de SUMO y WordNet, un uso pragmático de estos marcos bien puede "ajustarse a la ley" (85% del tiempo) del árbol hypernym

+0

Gracias por la aclaración.Si mi objetivo era escanear un documento y ver qué alimentos, trabajos, pasatiempos, intereses tiene esa persona ... ¿cómo aconsejaría que haga esto? ¿Sería mejor encontrar una lista de palabras de "comida" y una lista de palabras de "pasatiempos" y "deportes"? ¿Cuál es la forma más práctica de hacer esto? – TIMEX

+0

@Alex: Dado que su objetivo son relativamente pocos dominios, consideraría desarrollar sus propios léxicos. Podría "prepararlos" extrayéndolos del mapa de Wordnet de SUMO o de fuentes similares. Probablemente necesites también crear una lista de entidades nombradas (como artistas, atletas, ciudades, lugares particulares, etc.). Aunque construir tales listas no es barato, encontrará que el dominio reducido resultante permite una lógica/heurística mucho más descuidada para una precisión similar (o típicamente mejor) y recuperación en el control. – mjv

0

de WordNet termina con una synset raíz única para la palabra "entidad". Si está utilizando la biblioteca C de WordNet, entonces puede obtener una estructura recursiva mientras los antecesores de un sintonizador usan traceptrs_ds, y puede obtener todo el árbol synset siguiendo recursivamente los punteros nextss y ptrlst hasta llegar a null punteros.

Cuestiones relacionadas