На этом шаге мы приведем краткие сведения о разреженных матрицах.
SciPy - это набор функций для научных вычислений в Python. Помимо всего прочего он предлагает продвинутые процедуры линейной алгебры, математическую оптимизацию функций, обработку сигналов, специальные математические функции и статистические функции. scikit-learn использует набор функций SciPy для реализации своих алгоритмов.
Для нас наиболее важной частью SciPy является пакет scipy.sparse: с помощью него мы получаем разреженные матрицы (sparse matrices), которые представляют собой еще один формат данных, который используется в scikit-learn. Разреженные матрицы используются всякий раз, когда нам нужно сохранить 2D массив, который содержит в основном нули (рисунок 1):
Рис.1. Разреженная матрица SciPy
Обычно невозможно плотно записать разреженные данные (поскольку они не уместились бы в памяти), поэтому нам нужно непосредственно создать разреженные матрицы. Ниже приводится способ, которой позволяет создать такую же разреженную матрицу, что была приведена выше, но этот раз с использованием формата COO (рисунок 2):
Рис.1. Разреженная матрица SciPy в формате COO
Более подробную информацию о разреженных матрицах SciPy можно найти в SciPy Lecture Notes (на английском языке).
На следующем шаге мы рассмотрим matplotlib.