Some thoughts I had about creating an ML system that would constantly introspect on whether it’s internal model is sufficient for the task at hand. If the model was deemed insufficient, the ML algorithm should discard the old model and rebuild a new one.

Research Notes

Using some of the terminology from Conceptual Categories, this is similar to Computational Meaning. Instead of determining when more symbols or a new language is needed, instead use as indicator that a new model is needed.

Percepts are possible input data sources. Percepts may have some implicit or a priori knowledge associated with them. We generally consider only discrete sources since when put into a biological computation system, continuous values are converted to discrete values.

Percepts have a data format and a set of possible symbol inputs. For scalar inputs, this is expressed in terms of resolution and range of the scalar value. The set of possible symbol inputs might be infinite open-ended and generative data formats.

U is the universe of all possible percepts. They are the percepts we have on hand, the percepts not currently available but acquirable, and the percepts that don’t yet exist but are possible.

G is the set percepts that are currently available and is a finite subset of U. G can be viewed as the set of inputs that are available for subscription from a pub-sub service or from a data bus of multiple sensor devices.

Given G, we say that A is the subset of percepts from G that we select for computation. The set A is referred to as the “aperture” on which we view the world. That would be the subset of pub-sub subscriptions or sensor devices that we select for our inputs.

The perspective, P, is the pre-processing that occurs on the percept data sources from A. This may include filtering, error-correction, cleaning, encoding, feature computation, and buffering. The selection of the pre-processing determines the “perspective” on the data since this creates a bias with emphasis on certain characteristics and features of the data. This also creates constraints on the types of operations possible on the data.

A perspective can be seen as creating a viewpoint on the perceived world. Different ways of seeing the world creates different kinds of models. The fusion of perspectives may lead to more robust generalist models. The resulting computation of perspective P on A creates the final input, X = A*P, that goes into our computational model.

The representation, R, is the set of symbols and operations selected for building a model from the input, X, of the current perspective and aperture. The choice of R reflects the type of problem being solved, and may become insufficient if the problem changes or the properties of the input, X, also changes.

The problem is defined by the task T. Every T has a utility function \theta that indicates a metric for task satisfaction. The model M, made from the representation R, is constructed to maximize the value of the utility function \theta.

The choice of R and current model M defines the set of outputs, Y.

The action policy C defines the set of decisions to made based on the output Y to satisfy the task T.

Indicators for when A, P, or R are insufficient:

  • Landauer indicators
    • Ease of identification (can quickly associate situations with states in M)
    • Expressive coverage (how much of situation can be expressed in M)
    • Expressive power (compactness of M)
    • Ease of interpretation (how easy to compute with M)
  • Everist indicators
    • Surprisal of model predictions (Change of R)
    • Task satisfaction failure. (Change of A or P)

How to refactor model with new concept?

  • Begins with accumulation of knowledge on existing model
  • Special cases become cumbersome
  • Refactor step attempts to create generalization of special case based on existing knowledge
  • Find analogy and express new knowledge in terms of the analogy
  • Create new perspective if necessary
  • Existing knowledge structures now have generalization options based on new integrated analogy