MyMediaLite  3.10
Public Member Functions | Protected Member Functions | Protected Attributes | Properties | List of all members
BidirectionalConditionalProbability Class Reference

Class for storing and computing 'bi-directional' conditional probabilities More...

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

Public Member Functions

void AddEntity (int entity_id)
 Add an entity to the ICorrelationMatrix by growing it to the requested size.
 BidirectionalConditionalProbability (int num_entities, float alpha)
 Creates an object of type BidirectionalConditionalProbability
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

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

Protected Attributes

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

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]
virtual int NumberOfNonEmptyEntries [get]
 The number of non-empty entries in the matrix
int NumberOfRows [get]
int NumEntities [get]
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]

Detailed Description

Class for storing and computing 'bi-directional' conditional probabilities

TODO LIT

Constructor & Destructor Documentation

BidirectionalConditionalProbability ( int  num_entities,
float  alpha 
)
inline

Creates an object of type BidirectionalConditionalProbability

Parameters
num_entitiesthe number of entities
alphaalpha parameter

Member Function Documentation

void AddEntity ( int  entity_id)
inlineinherited

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 
)
inlineinherited

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)
inlineinherited

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 
)
inlinevirtualinherited

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, SymmetricSparseMatrix< T >, SymmetricSparseMatrix-g< float >, and SymmetricSparseMatrix-g< int >.

void Resize ( int  size)
inlineinherited

Resize to the given size

Parameters
sizethe size

Implements ICorrelationMatrix.

void Resize ( int  num_rows,
int  num_cols 
)
inlineinherited

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 
)
inlineinherited

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 ( )
inlinevirtualinherited

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)
inlineinherited

Write out the correlations to a StreamWriter

Parameters
writerA StreamWriter

Implements ICorrelationMatrix.

Member Data Documentation

int num_entities
protectedinherited

Number of entities, e.g. users or items

Property Documentation

virtual IList<Tuple<int, int> > NonEmptyEntryIDs
getinherited

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

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

virtual int NumberOfNonEmptyEntries
getinherited

The number of non-empty entries in the matrix

The number of non-empty entries in the matrix

virtual T this[int x, int y]
getsetinherited

Access the elements of the sparse matrix

Parameters
xthe row ID
ythe column ID
Dictionary<int, T> this[int x]
getinherited

Get a row of the matrix

Parameters
xthe row ID

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