CSR 稀疏矩阵载体(行 = 突触前,列 = 突触后)。 承载 ITensorCompute.SpMM() 算子所需的全部稀疏结构信息。
SparseCsr
01 Syntax
Microsoft.VisualBasic.MachineLearning.TensorFlow.Compute.SparseCsr
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| .ctor | 1 | 构造 CSR 载体(不做数据拷贝,直接持有传入数组)。 |
| MarkModified | 1 | 声明 SparseCsr.Values 已被就地修改,使设备端缓存副本失效。 |
| ToDense | 1 | 展开为稠密张量 [Rows, Columns](仅供小规模校验 / 调试,大规模连接组下请勿调用)。 |
| ToString | 1 |
03 Properties
| Name | Overloads | Summary |
|---|---|---|
| Rows | 1 | 突触前神经元数量(矩阵行数) |
| Columns | 1 | 突触后神经元数量(矩阵列数) |
| RowPointers | 1 | 行偏移数组(长度 Rows+1,单调非降,首元素 0、末元素 = 非零数) |
| ColumnIndices | 1 | 非零元素的列索引(长度 = 非零数,每段内非降序) |
| Values | 1 | 非零元素的权重(长度 = 非零数;就地修改后必须调用 SparseCsr.MarkModified()) |
| NonZeros | 1 | 非零元素(突触)数量 |
| Version | 1 | 数据版本号。任何就地修改 SparseCsr.Values 之后都应调用 SparseCsr.MarkModified() 使其自增,供设备端缓存判断失效。 |
04 Members
#ctor(
Int32, Int32, Int32(), Int32(), Double())构造 CSR 载体(不做数据拷贝,直接持有传入数组)。
Parameters
| Name | Type | Description |
|---|---|---|
rows | Int32 | 行数(突触前神经元数) |
columns | Int32 | 列数(突触后神经元数) |
rowPointers | Int32() | 行偏移数组,长度必须为 rows+1,单调非降 |
columnIndices | Int32() | 列索引数组,取值 [0, columns) |
values | Double() | 权重数组,与 columnIndices 等长 |
MarkModified
声明 SparseCsr.Values 已被就地修改,使设备端缓存副本失效。
ToDense
展开为稠密张量 [Rows, Columns](仅供小规模校验 / 调试,大规模连接组下请勿调用)。
Rows
突触前神经元数量(矩阵行数)
Columns
突触后神经元数量(矩阵列数)
RowPointers
行偏移数组(长度 Rows+1,单调非降,首元素 0、末元素 = 非零数)
ColumnIndices
非零元素的列索引(长度 = 非零数,每段内非降序)
Values
非零元素的权重(长度 = 非零数;就地修改后必须调用 SparseCsr.MarkModified())
NonZeros
非零元素(突触)数量
Version
数据版本号。任何就地修改 SparseCsr.Values 之后都应调用 SparseCsr.MarkModified() 使其自增,供设备端缓存判断失效。
ToString()