Commonsense rules development: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
PriitJ (arutelu | kaastöö)
Resümee puudub
PriitJ (arutelu | kaastöö)
PResümee puudub
41. rida: 41. rida:
   be(X, X).
   be(X, X).


''Proposal'' SVO triples can be connected to events like this:
'''Proposal''' SVO triples can be connected to events like this:


   ovs(Z, Y, X) & event_type(Y, W) & event_subject(X, W) => event_object(Z, W).
   ovs(Z, Y, X) & event_type(Y, W) & event_subject(X, W) => event_object(Z, W).


This example does not fully make sense yet, since the event itself lacks context. Work in progress.
This example does not fully make sense yet, since the event itself lacks context. Work in progress.

Redaktsioon: 8. detsember 2021, kell 16:55

A place to develop and maintain commonsense rules for quasimodo etc.

Static knowledge encoding

Description of current Quasimodo/ConceptNet encoding coming soon

Event encoding

We use Neo-Davidsonian encoding with semantic roles:

  • actor (subject)
  • patient (object)
  • ...

Event type is the verb that describes the event.

Example: "Brutus stabbed Caesar in the agora"

 event_subject(brutus, ev1).
 event_object(caesar, ev1).
 event_type(stab, ev1).
 event_location(agora, ev1).

Connecting Static Knowledge to Events

This is mostly unsolved. This minimal example may help get things started:

"Did grape juice turn into wine?"

 event_subject(grape_juice, ev1).
 event_type(turn_into, ev1).

There are multiple ways of encoding that this is a question, for example:

 event_object(wine, ev1) => $ans(yes).

Assuming we have commonsense knowledge about fermenting grape juice:

 be(grape_juice, X) => ovs(wine, turn_into, X).
 % reflexivity
 be(X, X).

Proposal SVO triples can be connected to events like this:

 ovs(Z, Y, X) & event_type(Y, W) & event_subject(X, W) => event_object(Z, W).

This example does not fully make sense yet, since the event itself lacks context. Work in progress.