TensorLy 笔记系列
2. 快速上手
快速上手 TensorLy 的简介。
2.1 Tensor 操作
首先导入 TensorLy 库:
import tensorly as tl
TensorLy
使用 MXNet
, Numpy
和PyTorch
作为后端,使用该技术可以使在用 TensorLy
的过程中运行在不同的框架下,默认的后端是 NumPy
。
创建 Tensor
, 例如使用 NumPy
:
import numpy as np
# 创建随机 10 *10*10 tensor
tensor = np.random.random(10, 10, 10)
使用 tensor
相关操作:
import trnsorly as tl
# mode-1 展开
unfolded = tl.unfold(tensor, mode=0)
# 折叠展开的 tensor
t1.fold(unfold, mode=0, shape=tensor.shape)
2.2. Tensor 理论
更多关于 tensor
的相关函数位于 tensorly.tenalg
模块中。
2.3. Tensor 分解
分解算法位于 tensorly.decomposition
模块。
from tensorly.decomposition import tucker, parafac, non_negative_tucker
# decompositions are one-liners:
factors = parafac(tensor, rank=5)
core, factors = tucker(tensor, ranks=[5, 5, 5])
core, factors = non_negative_tucker(tensor, ranks=[5, 5, 5])
2.4. Tensor 回归
tensor
回归模块类似于 scikit-learn API
,包含着优化参数的训练函数和预测未知数据的预测函数,该模块位于 tensorly.regression
。
2.5. 矩阵
不论是训练tensor
回归算法还是将深度学习和tensor
相结合, 都需要使用矩阵数据,这部分的内容位于 tensorly.metrics
模块中。
2.6. 随机采样 tensor
使用 tensorly.random
模块创建随机 tensor
。