Object

mimir.models

ModelRegistry

Related Doc: package models

Permalink

object ModelRegistry

The Model Registry is a central point for organizing Models that fulfil specific roles. As of right now, we consider three basic categories of model:

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ModelRegistry
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type ImputationConstructor = (Database, String, Seq[String], Operator) ⇒ Map[String, (Model, Int, Seq[Expression])]

    Permalink

    Factory method type for Imputation model constructors

    Factory method type for Imputation model constructors

    Given a relation and a list of column names, an imputation model is expected to be able to produce replacement values for cells in the specified columns of the specified relation.

    Inputs: Database -> The database to train on String -> The name prefix for the model List[String] -> A list of column names to impute on Operator -> The relation to impute on Outputs: Map[...] -> A map from column name to a Model/Idx pair, along with a sequence of "hint" expressions, defining a way to repair the attribute

    Note that although we request models for a set of columns in a single pass, the constructor is not required to respond with a model for all, or even any of the columns it's given.

    • If the model in question is not applicable to the query, it should return an empty map.
    • If the model in question is not applicable to one or more columns, these columns need not be in the result map.

    Imputation models are expected to take a single variable, identifying the ROWID of the specified row. In other words, it should support VGTerms of the form {{ TABLE;x[ROWID] }}. The domain of the variable should be the same as the type of the specified column.

    Note that the constructor is NOT responsible for registering the model with the manager.

    The original row may be constructed from the provided relation operator: Select[ROWID = rowid](oper)

  2. type SchemaMatchConstructor = (Database, String, Either[Operator, Seq[(String, Type)]], Either[Operator, Seq[(String, Type)]]) ⇒ Map[String, (Model, Int)]

    Permalink

    Factory method type for SchemaMatch model constructors

    Factory method type for SchemaMatch model constructors

    A SchemaMatch model takes two relations or schemas and maps the left-hand side's schema into the right-hand side's.

    Inputs: Database -> The database to train on String -> The name prefix for the model Operator | Schema -> The source query or schema (to map from) Operator | Schema -> The target query or schema (to map to)

    Outputs: Map[...] -> A map from a target column name to a Model/Idx pair defining a way to map the specified target.

    Note that the constructor is not required to respond with a model for all, or even any of the columns in the target schema

    • If the model in question is not applicable to the query, it should return an empty map.
    • If the model in question is not applicable to one or more columns, these columns need not be in the result map.

    SchemaMatch models take no variables. Each Model/Index pair dictates how one target column is to be matched. The return value of the model is a string with the name of the attribute that the target column should be matched to.

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. val imputations: Map[String, (Database, String, Seq[String], Operator) ⇒ Map[String, (Model, Int, Seq[Expression])]]

    Permalink

    Constructors for existing Imputation models

    Constructors for existing Imputation models

    Eventually, it would be nice to allow external components and plugins to add new models here.

  12. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  13. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  16. val schemamatchers: Map[String, SchemaMatchConstructor]

    Permalink

    Constructors for existing SchemaMatch models

    Constructors for existing SchemaMatch models

    Eventually, it would be nice to allow external components and plugins to add new models here.

  17. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  18. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped