CostFunction
01 Syntax
Microsoft.VisualBasic.MachineLearning.tSNE.CostFunction
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| CostGrad | 1 | return cost and gradient, given an arrangement |
| CostGradExact | 1 | 精确的稠密梯度计算,O(N^2) 时间、O(N^2) 内存 |
| EnsureBuffers | 1 | 确保 Q 缓冲区与梯度缓冲区的尺寸与当前样本量匹配,并在尺寸未变时直接复用 |
03 Fields
04 Members
CostGrad(
Double())return cost and gradient, given an arrangement
Remarks
这里依据 tSNE.UseBarnesHut 在精确路径与 Barnes-Hut 近似路径之间分派。 默认走精确路径,行为与改造前完全一致。
Parameters
| Name | Type | Description |
|---|---|---|
Y | Double() | 当前的低维嵌入,行主序的一维数组(长度为 N * dim) |
CostGradExact(
Double())精确的稠密梯度计算,O(N^2) 时间、O(N^2) 内存
Parameters
| Name | Type | Description |
|---|---|---|
Y | Double() | 当前的低维嵌入,行主序一维数组 |
EnsureBuffers(
Int32, Int32)确保 Q 缓冲区与梯度缓冲区的尺寸与当前样本量匹配,并在尺寸未变时直接复用
Parameters
| Name | Type | Description |
|---|---|---|
N | Int32 | - |
[dim] | Int32 | - |
lQu
未归一化的 Q 分布缓冲区,长度为 N*N,跨迭代复用
bufferedN
上一次分配缓冲区时所对应的样本数量