Nov 27, 2010

Infer.Net namespace 和 类

MicrosoftResearch.Infer.Maths:
Matrix
Vector 二者及其 sparse 版本
正定矩阵
上三角,下三角矩阵
矩阵分解
Rand 随机数
MMath: 和 GM 相关的一些数学函数
Lapack 代数
BFGS 等最优化

MicrosoftResearch.Infer.Distributions
各种分布及其估计算子
Discrete
Gamma
Beta
Gaussian
VectorGaussian
Dirichelet
Wishart
还有一个 Mixture(具体作用是什么?和 mixture of distributions 有没有关系。在说明中,mixture 是用 switch block 来完成的,比如 MoG)

MicrosoftResearch.Infer.Models: 
Variable 提供一些静态函数
Range
Variable<T>
VariableArray<T>
VariableArray2D<T>
VariableArray3D<T>
Model: A model identifier used to manage SharedVariables 暂时不理解
各种block(if, case, foreach,switch)
Variable.If
Variable.IfNot
Variable.Case
Variable.Switch
参见
Documentation: Branching on variables to create mixture models


MicrosoftResearch.Infer :
InferenceEngine
AlgorithmBase 目前有三种
engine.Algorithm = new ExpectationPropagation();
engine.Algorithm = new VariationalMessagePassing();
engine.Algorithm = new GibbsSampling();

ValueRange :
当 discrete variable 用于 index 时(switch block),必须指定 ValueRange。这可以通过定义 discrete variable 或者定义 dirichlet 时,给予参数ValueRange。也可以通过
Variable<Vector> weights = Variable.New<Vector>();
weights.AddAttribute(new ValueRange(k)));

QueryType

0 comments: