PairwiseKernel#
- класс sklearn.gaussian_process.kernels.PairwiseKernel(gamma=1.0, gamma_bounds=(1e-05, 100000.0), метрика='linear', pairwise_kernels_kwargs=None)[источник]#
Обертка для ядер в sklearn.metrics.pairwise.
Тонкая обертка вокруг функциональности ядер в sklearn.metrics.pairwise.
- Примечание: Оценка eval_gradient не аналитическая, а численная, и все
Ядра поддерживают только изотропные расстояния. Параметр gamma считается гиперпараметром и может быть оптимизирован. Другие параметры ядра устанавливаются непосредственно при инициализации и остаются фиксированными.
Добавлено в версии 0.18.
- Параметры:
- gammafloat, по умолчанию=1.0
Параметр gamma парного ядра, заданного метрикой. Должен быть положительным.
- gamma_boundsпара чисел с плавающей запятой >= 0 или "fixed", по умолчанию=(1e-5, 1e5)
Нижняя и верхняя границы для 'gamma'. Если установлено значение "fixed", 'gamma' нельзя изменить во время подбора гиперпараметров.
- метрика{“linear”, “additive_chi2”, “chi2”, “poly”, “polynomial”, “rbf”, “laplacian”, “sigmoid”, “cosine”} или вызываемый объект, по умолчанию=”linear”
Метрика для использования при вычислении ядра между экземплярами в массиве признаков. Если metric является строкой, она должна быть одной из метрик в pairwise.PAIRWISE_KERNEL_FUNCTIONS. Если metric равна "precomputed", предполагается, что X является матрицей ядра. В качестве альтернативы, если metric является вызываемой функцией, она вызывается для каждой пары экземпляров (строк) и записывается полученное значение. Вызываемая функция должна принимать два массива из X в качестве входных данных и возвращать значение, указывающее расстояние между ними.
- pairwise_kernels_kwargsdict, по умолчанию=None
Все записи этого словаря (если есть) передаются как аргументы ключевых слов в функцию попарного ядра.
Примеры
>>> from sklearn.datasets import load_iris >>> from sklearn.gaussian_process import GaussianProcessClassifier >>> from sklearn.gaussian_process.kernels import PairwiseKernel >>> X, y = load_iris(return_X_y=True) >>> kernel = PairwiseKernel(metric='rbf') >>> gpc = GaussianProcessClassifier(kernel=kernel, ... random_state=0).fit(X, y) >>> gpc.score(X, y) 0.9733 >>> gpc.predict_proba(X[:2,:]) array([[0.8880, 0.05663, 0.05532], [0.8676, 0.07073, 0.06165]])
- __call__(X, Y=None, eval_gradient=False)[источник]#
Возвращает ядро k(X, Y) и, опционально, его градиент.
- Параметры:
- Xndarray формы (n_samples_X, n_features)
Левый аргумент возвращаемого ядра k(X, Y)
- Yndarray формы (n_samples_Y, n_features), по умолчанию=None
Правый аргумент возвращаемого ядра k(X, Y). Если None, вместо этого вычисляется k(X, X).
- eval_gradientbool, по умолчанию=False
Определяет, вычисляется ли градиент относительно логарифма гиперпараметра ядра. Поддерживается только когда Y равен None.
- Возвращает:
- Kndarray формы (n_samples_X, n_samples_Y)
Страница бенчмарков
- K_gradientndarray формы (n_samples_X, n_samples_X, n_dims), необязательный
Градиент ядра k(X, X) по логарифму гиперпараметра ядра. Возвращается только когда
eval_gradientравно True.
- свойство границы#
Возвращает логарифмически преобразованные границы для theta.
- Возвращает:
- границыndarray формы (n_dims, 2)
Логарифмически преобразованные границы гиперпараметров theta ядра
- clone_with_theta(theta)[источник]#
Возвращает клон self с заданными гиперпараметрами theta.
- Параметры:
- thetandarray формы (n_dims,)
Гиперпараметры
- диаг(X)[источник]#
Возвращает диагональ ядра k(X, X).
Результат этого метода идентичен np.diag(self(X)); однако он может быть вычислен более эффективно, так как вычисляется только диагональ.
- Параметры:
- Xndarray формы (n_samples_X, n_features)
Левый аргумент возвращаемого ядра k(X, Y)
- Возвращает:
- K_diagndarray формы (n_samples_X,)
Диагональ ядра k(X, X)
- get_params(глубокий=True)[источник]#
Получить параметры этого ядра.
- Параметры:
- глубокийbool, по умолчанию=True
Если True, вернет параметры для этого оценщика и вложенных подобъектов, которые являются оценщиками.
- Возвращает:
- paramsdict
Имена параметров, сопоставленные с их значениями.
- свойство гиперпараметры#
Возвращает список всех спецификаций гиперпараметров.
- is_stationary()[источник]#
Возвращает, является ли ядро стационарным.
- свойство n_dims#
Возвращает количество нефиксированных гиперпараметров ядра.
- свойство requires_vector_input#
Возвращает, определено ли ядро на векторах признаков фиксированной длины или на общих объектах. По умолчанию True для обратной совместимости.
- set_params(**params)[источник]#
Установите параметры этого ядра.
Метод работает как на простых ядрах, так и на вложенных ядрах. Последние имеют параметры вида
чтобы можно было обновить каждый компонент вложенного объекта.__ - Возвращает:
- self
- свойство theta#
Возвращает (сглаженные, логарифмически преобразованные) нефиксированные гиперпараметры.
Обратите внимание, что theta обычно являются логарифмически преобразованными значениями гиперпараметров ядра, так как это представление пространства поиска более подходит для поиска гиперпараметров, поскольку гиперпараметры, такие как масштабы длины, естественно существуют в логарифмическом масштабе.
- Возвращает:
- thetandarray формы (n_dims,)
Нефиксированные, логарифмически преобразованные гиперпараметры ядра