singnet / opencog

A framework for integrated Artificial Intelligence & Artificial General Intelligence (AGI)
http://wiki.opencog.org/w/Development
Other
14 stars 3 forks source link

Avoid over-representation in pattern miner by supporting reduction #23

Open ngeiswei opened 5 years ago

ngeiswei commented 5 years ago

Problem

Some patterns may differ syntactically while being equivalent semantically. For instance

Lambda
  X
  X

is equivalent to

Lambda
  X
  And
    X
    X

(recall that And is used as a clause conjunction by the pattern matcher, not a literal AndLink.

Requirement

The reduct engine must be ported to atomese.

Proposal

Let us recall how the pattern miner works

  1. Select pattern P from pattern pool
  2. Calculate shallow abstractions of P
  3. Generate specializations of P by composing it with its shallow abstractions
  4. Insert specializations with enough support back in the pattern pool

In order to avoid over-representation, before inserting new patterns back in the pattern pool, the pattern miner should have an extra step, say between step 3. and step 4., if reduction is done over all specializations, or after step 4., if reduction is done only over specializations with enough support.