Математические строительные блоки нейронных сетей
Математика жизненно важна в любом алгоритме машинного обучения и включает в себя различные основные математические концепции, позволяющие получить правильный алгоритм, разработанный особым образом.
Важность математических тем для машинного обучения и науки о данных упоминается ниже -
Теперь давайте сосредоточимся на основных математических концепциях машинного обучения, которые важны с точки зрения обработки естественного языка -
Векторы
Вектор считается массивом чисел, который является непрерывным или дискретным, а пространство, состоящее из векторов, называется векторным пространством. Пространственные размеры векторов могут быть конечными или бесконечными, но было замечено, что задачи машинного обучения и науки о данных имеют дело с векторами фиксированной длины.
Векторное представление отображается, как указано ниже -
temp = torch.FloatTensor([23,24,24.5,26,27.2,23.0])
temp.size()
Output - torch.Size([6])
В машинном обучении мы имеем дело с многомерными данными. Таким образом, векторы становятся очень важными и рассматриваются как входные характеристики для любой постановки задачи прогнозирования.
Скаляры
Скаляры имеют нулевые размеры и содержат только одно значение. Что касается PyTorch, он не включает специальный тензор с нулевой размерностью; следовательно, объявление будет сделано следующим образом -
x = torch.rand(10)
x.size()
Output - torch.Size([10])
Матрицы
Большая часть структурированных данных обычно представлена в виде таблиц или определенной матрицы. Мы будем использовать набор данных под названием Boston House Price, который легко доступен в библиотеке машинного обучения Python scikit-learn.
boston_tensor = torch.from_numpy(boston.data)
boston_tensor.size()
Output: torch.Size([506, 13])
boston_tensor[:2]
Output:
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