MyMediaLite  3.08
Public Member Functions | Protected Member Functions | Protected Attributes | Properties
BinaryDataAsymmetricCorrelationMatrix Class Reference

Class with commoin routines for asymmetric correlations that are learned from binary data. More...

Inheritance diagram for BinaryDataAsymmetricCorrelationMatrix:
AsymmetricCorrelationMatrix IBinaryDataCorrelationMatrix SparseMatrix< T > ICorrelationMatrix ICorrelationMatrix IMatrix< T > IMatrix< T > IMatrix< T > BidirectionalConditionalProbability ConditionalProbability

List of all members.

Public Member Functions

void AddEntity (int entity_id)
 Add an entity to the ICorrelationMatrix by growing it to the requested size.
 BinaryDataAsymmetricCorrelationMatrix (int num_entities)
 Creates an object of type ConditionalProbability.
float ComputeCorrelation (ICollection< int > vector_i, ICollection< int > vector_j)
 Computes the correlation of two binary vectors.
void ComputeCorrelations (IBooleanMatrix entity_data)
 Compute the correlations from an implicit feedback, positive-only dataset.
virtual IMatrix< T > CreateMatrix (int num_rows, int num_columns)
 Create a matrix with a given number of rows and columns.
void Resize (int num_rows)
 Resize to the given size.
void Resize (int num_rows, int num_cols)
 Grows or shrinks the matrix to the requested size, if necessary.
 SparseMatrix (int num_rows, int num_cols)
 Create a sparse matrix with a given number of rows.
virtual IMatrix< T > Transpose ()
 Get the transpose of the matrix, i.e. a matrix where rows and columns are interchanged.
void Write (StreamWriter writer)
 Write out the correlations to a StreamWriter.

Protected Member Functions

abstract float ComputeCorrelationFromOverlap (float overlap, float count_x, float count_y)

Protected Attributes

internal List< List< int > > index_list = new List<List<int>>()
 List of lists that stores the column indices of the entries.
int num_entities
 Number of entities, e.g. users or items.
internal List< List< T > > value_list = new List<List<T>>()
 List of lists that stores the values of the entries.

Properties

override bool IsSymmetric [get]
 returns false
virtual IList< Tuple< int, int > > NonEmptyEntryIDs [get]
 The row and column IDs of non-empty entries in the matrix.
int NumberOfColumns [get, set]
 The number of columns of the matrix.
virtual int NumberOfNonEmptyEntries [get]
 The number of non-empty entries in the matrix.
int NumberOfRows [get]
 The number of rows of the matrix.
int NumEntities [get]
 size of the matrix (number of entities)
virtual T this[int x, int y] [get, set]
 Access the elements of the sparse matrix.
Dictionary< int, T > this[int x] [get]
 Get a row of the matrix.
bool Weighted [get, set]
 If set to true, give a lower weight to evidence coming from very frequent entities.

Detailed Description

Class with commoin routines for asymmetric correlations that are learned from binary data.


Constructor & Destructor Documentation

BinaryDataAsymmetricCorrelationMatrix ( int  num_entities) [inline]

Creates an object of type ConditionalProbability.

Parameters:
num_entitiesthe number of entities

Member Function Documentation

void AddEntity ( int  entity_id) [inline, inherited]

Add an entity to the ICorrelationMatrix by growing it to the requested size.

Note that you still have to correctly compute and set the entity's correlation values

Parameters:
entity_idthe numerical ID of the entity

Implements ICorrelationMatrix.

float ComputeCorrelation ( ICollection< int >  vector_i,
ICollection< int >  vector_j 
) [inline]

Computes the correlation of two binary vectors.

Parameters:
vector_ithe first vector
vector_jthe second vector
Returns:
the correlation of the two vectors

Implements IBinaryDataCorrelationMatrix.

void ComputeCorrelations ( IBooleanMatrix  entity_data) [inline]

Compute the correlations from an implicit feedback, positive-only dataset.

Parameters:
entity_datathe implicit feedback set, rows contain the entities to correlate

Implements IBinaryDataCorrelationMatrix.

virtual IMatrix<T> CreateMatrix ( int  num_rows,
int  num_columns 
) [inline, virtual, inherited]

Create a matrix with a given number of rows and columns.

Parameters:
num_rowsthe number of rows
num_columnsthe number of columns
Returns:
A matrix with num_rows rows and num_column columns

Implements IMatrix< T >.

Reimplemented in SkewSymmetricSparseMatrix, and SymmetricSparseMatrix< T >.

void Resize ( int  size) [inline, inherited]

Resize to the given size.

Parameters:
sizethe size

Implements ICorrelationMatrix.

void Resize ( int  num_rows,
int  num_cols 
) [inline, inherited]

Grows or shrinks the matrix to the requested size, if necessary.

The new entries are filled with zeros. Obsolete entries are removed.

Parameters:
num_rowsthe number of rows
num_colsthe number of columns

Implements IMatrix< T >.

SparseMatrix ( int  num_rows,
int  num_cols 
) [inline, inherited]

Create a sparse matrix with a given number of rows.

Parameters:
num_rowsthe number of rows
num_colsthe number of columns
virtual IMatrix<T> Transpose ( ) [inline, virtual, inherited]

Get the transpose of the matrix, i.e. a matrix where rows and columns are interchanged.

Returns:
the transpose of the matrix (copy)

Implements IMatrix< T >.

void Write ( StreamWriter  writer) [inline, inherited]

Write out the correlations to a StreamWriter.

Parameters:
writerA StreamWriter

Implements ICorrelationMatrix.


Member Data Documentation

internal List<List<int> > index_list = new List<List<int>>() [protected, inherited]

List of lists that stores the column indices of the entries.

int num_entities [protected, inherited]

Number of entities, e.g. users or items.

internal List<List<T> > value_list = new List<List<T>>() [protected, inherited]

List of lists that stores the values of the entries.


Property Documentation

virtual IList<Tuple<int, int> > NonEmptyEntryIDs [get, inherited]

The row and column IDs of non-empty entries in the matrix.

The row and column IDs of non-empty entries in the matrix

Reimplemented in SymmetricSparseMatrix< T >.

int NumberOfColumns [get, set, inherited]

The number of columns of the matrix.

The number of columns of the matrix

Implements IMatrix< T >.

virtual int NumberOfNonEmptyEntries [get, inherited]

The number of non-empty entries in the matrix.

The number of non-empty entries in the matrix

Reimplemented in SymmetricSparseMatrix< T >.

int NumberOfRows [get, inherited]

The number of rows of the matrix.

The number of rows of the matrix

Implements IMatrix< T >.

int NumEntities [get, inherited]

size of the matrix (number of entities)

Implements ICorrelationMatrix.

virtual T this[int x, int y] [get, set, inherited]

Access the elements of the sparse matrix.

Parameters:
xthe row ID
ythe column ID

Implements IMatrix< T >.

Reimplemented in SkewSymmetricSparseMatrix, and SymmetricSparseMatrix< T >.

Dictionary<int, T> this[int x] [get, inherited]

Get a row of the matrix.

Parameters:
xthe row ID
bool Weighted [get, set]

If set to true, give a lower weight to evidence coming from very frequent entities.

Implements IBinaryDataCorrelationMatrix.


The documentation for this class was generated from the following file: