Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

introduct Concept class (and subclasses?) #6

Open
sbenthall opened this issue Jul 23, 2012 · 3 comments
Open

introduct Concept class (and subclasses?) #6

sbenthall opened this issue Jul 23, 2012 · 3 comments
Milestone

Comments

@sbenthall
Copy link
Owner

Introduce Concept class as wrapper around a semantic node. A Concept has:

  • a set of terms that elicit it (e.g. a single term, or set of words in a WordNet synset)
  • a reference to the knowledge base they are a part of (see Ned Block on Conceptual Role Semantics)
  • a method that returns the available relations for this concept, in the knowledge base and/or based on wordnet (antonyms)
@sbenthall
Copy link
Owner Author

With this, there are new performance reasons for using this:
8b9abdf

We can achieve O(1) time checking a relation against a knowledge base. This is necessary for large knowledge bases. But when testing for relation equality means testing for synonyms or antonyms, that means we can't hash on strings for the internal data structure of Doxaments.

So, Concepts need to be hashable, and their antonym Concepts (consistently hashed) need to be hashable as well.

This could lead to problems, as right now (because we aggregate lemmas across many word senses), it's is not the case that if anto(x,y) then anto(y,x). Hmm

@sbenthall
Copy link
Owner Author

See

bc63dd6

for performance improvements without implementing the Concept class. Could probably squeak by without this functionality to get a 0.1 out sooner.

@sbenthall
Copy link
Owner Author

Bumping to 2.0, may need to be nixed as we redesign parsing and doxament structure.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant