PyTorch 神经网络的数学构建块
数学在任何机器学习算法中都至关重要,它包含数学的各种核心概念,以便以特定方式设计正确的算法。
数学主题对于机器学习和数据科学的重要性如下:
现在,让我们关注机器学习的主要数学概念,这从自然语言处理的角度来看很重要:
Vectors
向量被认为是连续或离散的数字数组,由向量组成的空间称为向量空间。向量的空间维度可以是有限的或无限的,但已经观察到机器学习和数据科学问题处理固定长度的向量。
矢量表示显示如下:
temp = torch.FloatTensor([23,24,24.5,26,27.2,23.0]) temp.size() 输出 - torch.Size([6])
在机器学习中,我们处理多维数据。因此向量变得非常重要,并被视为任何预测问题陈述的输入特征。
Scalars
标量被称为具有仅包含一个值的零维。对于 PyTorch,它不包含零维的特殊张量;因此声明如下:
x = torch.rand(10) x.size() 输出 - torch.Size([10])
Matrices
大多数结构化数据通常以表格或特定矩阵的形式表示。我们将使用名为波士顿房价的数据集,该数据集可在 Python scikit-learn 机器学习库中轻松获得。
boston_tensor = torch.from_numpy(boston.data) boston_tensor.size() 输出: torch.Size([506, 13]) boston_tensor[:2] 输出: Columns 0 to 7 0.0063 18.0000 2.3100 0.0000 0.5380 6.5750 65.2000 4.0900 0.0273 0.0000 7.0700 0.0000 0.4690 6.4210 78.9000 4.9671 Columns 8 to 12 1.0000 296.0000 15.3000 396.9000 4.9800 2.0000 242.0000 17.8000 396.9000 9.1400