Я пытаюсь воспроизвести процедуру svd из этого видео с помощью sklearn.
Сначала я попробовал этот фрагмент кода
A = np.matrix([[5,5],[-1,7]])
svd = TruncatedSVD(n_components=2, n_iter=7, random_state=42)
svd.fit(A)
и получил эту ошибку
ValueError: n_components must be < n_features; got 2 >= 2
, что является разумным, поскольку A является (2,2) матрицей.
Итак, мне пришлось изменить параметр n_components
A = np.matrix([[5,5],[-1,7]])
svd = TruncatedSVD(n_components=1, n_iter=7, random_state=42)
svd.fit(A)
svd.singular_values_
array([8.94427191])
На самом деле,есть еще одно исключительное значение 4.47213595, которое усекается.
есть ли способ получить все значения в единственном числе с помощью sklearn?