sparse_encode
- sklearn.decomposition.sparse_encode(X, dictionary, *, gram=None, cov=None, algorithm='lasso_lars', n_nonzero_coefs=None, alpha=None, copy_cov=True, init=None, max_iter=1000, n_jobs=None, check_input=True, verbose=0, positive=False)[исходный код]
-
Разреженное кодирование.
Каждая строка результата является решением задачи разреженного кодирования. Цель — найти разреженный массив
codeтакой, что:X ~= code * dictionary
Подробнее см. в руководстве пользователя.
- Параметры:
-
- Xмассивоподобный объект формы (n_samples, n_features)
-
Матрица данных.
- dictionaryмассивоподобный объект формы (n_components, n_features)
-
Матрица словаря, относительно которой решается задача разреженного кодирования данных. Для получения содержательных результатов некоторые алгоритмы предполагают, что строки нормализованы.
- gramмассивоподобный объект формы (n_components, n_components), по умолчанию=None
-
Предварительно вычисленная матрица Грама,
dictionary * dictionary'. - covмассивоподобный объект формы (n_components, n_samples), по умолчанию=None
-
Предварительно вычисленная ковариация,
dictionary' * X. - algorithm{‘lasso_lars’, ‘lasso_cd’, ‘lars’, ‘omp’, ‘threshold’}, по умолчанию=’lasso_lars’
-
Используемый алгоритм:
-
'lars': использует метод регрессии наименьшего угла (linear_model.lars_path); -
'lasso_lars': использует Lars для вычисления решения Lasso; -
'lasso_cd': использует метод покоординатного спуска для вычисления решения Lasso (linear_model.Lasso). lasso_lars работает быстрее, если оценки компонент разрежены; -
'omp': использует ортогональный жадный поиск по совпадению для оценки разреженного решения; -
'threshold': обнуляет все коэффициенты, меньшие порога регуляризации для проекцииdictionary * data'.
-
- n_nonzero_coefsint, по умолчанию=None
-
Целевое число ненулевых коэффициентов в каждом столбце решения. Используется только алгоритмами
algorithm='lars'иalgorithm='omp'и переопределяется параметромalphaв случаеomp. ЕслиNone, тоn_nonzero_coefs=int(n_features / 10). - alphafloat, по умолчанию=None
-
Если
algorithm='lasso_lars'илиalgorithm='lasso_cd',alpha— штраф, применяемый к норме L1. Еслиalgorithm='threshold',alpha— абсолютное значение порога, ниже которого коэффициенты обнуляются. Еслиalgorithm='omp',alpha— параметр допуска: целевое значение ошибки восстановления. В этом случае он переопределяетn_nonzero_coefs. ЕслиNone, значение по умолчанию равно 1. - copy_covbool, по умолчанию=True
-
Следует ли копировать предварительно вычисленную матрицу ковариации; если
False, она может быть перезаписана. - initndarray формы (n_samples, n_components), по умолчанию=None
-
Начальное значение разреженных кодов. Используется только при
algorithm='lasso_cd'. - max_iterint, по умолчанию=1000
-
Максимальное число итераций, если
algorithm='lasso_cd'или'lasso_lars'. - n_jobsint, по умолчанию=None
-
Число параллельных задач.
Noneозначает 1, если только выполнение не происходит в контекстеjoblib.parallel_backend.-1означает использование всех процессоров. Подробнее см. в глоссарии. - check_inputbool, по умолчанию=True
-
Если
False, входные массивы X и dictionary не будут проверяться. - verboseint, по умолчанию=0
-
Уровень подробности вывода: чем выше значение, тем больше сообщений.
- positivebool, по умолчанию=False
-
Следует ли требовать положительности при поиске кодирования.
Добавлено в версии 0.20.
- Возвращает:
-
- codendarray формы (n_samples, n_components)
-
Разреженные коды.
См. также
sklearn.linear_model.lars_path-
Вычисляет путь регрессии наименьшего угла или Lasso с помощью алгоритма LARS.
sklearn.linear_model.orthogonal_mp-
Решает задачи ортогонального жадного поиска по совпадению.
sklearn.linear_model.Lasso-
Обучает линейную модель с априорным распределением L1 в качестве регуляризатора.
SparseCoder-
Находит разреженное представление данных по фиксированному предварительно вычисленному словарю.
Примеры
>>> import numpy as np >>> from sklearn.decomposition import sparse_encode >>> X = np.array([[-1, -1, -1], [0, 0, 3]]) >>> dictionary = np.array( ... [[0, 1, 0], ... [-1, -1, 2], ... [1, 1, 1], ... [0, 1, 1], ... [0, 2, 1]], ... dtype=np.float64 ... ) >>> sparse_encode(X, dictionary, alpha=1e-10) array([[ 0., 0., -1., 0., 0.], [ 0., 1., 1., 0., 0.]])
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.decomposition.sparse_encode.html