exponenta event banner

templateLinear

Шаблон учащегося линейной классификации

Описание

templateLinear создает шаблон, подходящий для подгонки линейной классификационной модели к высокоразмерным данным для многоклассных задач.

Шаблон определяет модель двоичного ученика, тип и силу регуляризации, а также решатель. После создания шаблона обучайте модель, передавая шаблон и данные в fitcecoc.

пример

t = templateLinear() возвращает шаблон ученика линейной классификации.

Если указан шаблон по умолчанию, то программа использует значения по умолчанию для всех входных аргументов во время обучения.

пример

t = templateLinear(Name,Value) возвращает шаблон с дополнительными параметрами, заданными одним или несколькими аргументами пары имя-значение. Например, можно указать для реализации логистической регрессии, тип или силу регуляризации или указать решатель, который будет использоваться для минимизации целевой функции.

При отображении t в окне команд все параметры отображаются пустыми ([]), за исключением параметров, указанных с помощью аргументов пары «имя-значение». Во время обучения программа использует значения по умолчанию для пустых параметров.

Примеры

свернуть все

Обучение модели ECOC, состоящей из нескольких бинарных линейных классификационных моделей.

Загрузите набор данных NLP.

load nlpdata

X является разреженной матрицей данных предиктора, и Y является категориальным вектором меток класса. В данных имеется более двух классов.

Создайте шаблон модели линейной классификации по умолчанию.

t = templateLinear();

Сведения о настройке значений по умолчанию см. в разделе Аргументы пары «имя-значение» на templateLinear страница.

Обучение модели ECOC, состоящей из нескольких бинарных линейных классификационных моделей, которые могут идентифицировать продукт с учетом частотного распределения слов на веб-странице документации. Для ускорения обучения перенесите данные предиктора и укажите, что наблюдения соответствуют столбцам.

X = X';
rng(1); % For reproducibility 
Mdl = fitcecoc(X,Y,'Learners',t,'ObservationsIn','columns')
Mdl = 
  CompactClassificationECOC
      ResponseName: 'Y'
        ClassNames: [1x13 categorical]
    ScoreTransform: 'none'
    BinaryLearners: {78x1 cell}
      CodingMatrix: [13x78 double]


  Properties, Methods

Можно также обучить модель ECOC, состоящую из моделей линейной классификации по умолчанию, используя 'Learners','Linear'.

Чтобы сохранить память, fitcecoc возвращает обученные модели ECOC, состоящие из учащихся линейной классификации в CompactClassificationECOC объекты модели.

Входные аргументы

свернуть все

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Learner','logistic','Regularization','lasso','CrossVal','on' определяет реализацию логистической регрессии со штрафом по лассо и реализацию 10-кратной перекрестной проверки.
Опции линейной классификации

свернуть все

Сила термина регуляризации, определяемая как разделенная запятыми пара, состоящая из 'Lambda' и 'auto', неотрицательный скаляр или вектор неотрицательных значений.

  • Для 'auto', Lambda = 1/n.

    • Если указана перекрестная проверка, аргумент пары имя-значение (например, CrossVal), то n - количество кратных наблюдений.

    • В противном случае n - размер обучающей выборки.

  • Для вектора неотрицательных значений: templateLinear последовательно оптимизирует целевую функцию для каждого отдельного значения в Lambda в порядке возрастания.

    • Если Solver является 'sgd' или 'asgd' и Regularization является 'lasso', templateLinear не использует предыдущие оценки коэффициентов в качестве теплого начала для следующей итерации оптимизации. В противном случае templateLinear использует теплые старты.

    • Если Regularization является 'lasso', то любая оценка коэффициента 0 сохраняет свое значение, когда templateLinear оптимизирует с использованием последующих значений в Lambda.

    • templateLinear возвращает оценки коэффициентов для каждой заданной силы регуляризации.

Пример: 'Lambda',10.^(-(10:-2:2))

Типы данных: char | string | double | single

Тип модели линейной классификации, указанный как разделенная запятыми пара, состоящая из 'Learner' и 'svm' или 'logistic'.

В этой таблице f (x) = + b.

  • β - вектор p-коэффициентов.

  • x - это наблюдение из переменных p-предиктора.

  • b - скалярное смещение.

СтоимостьАлгоритмДиапазон ответаФункция потерь
'svm'Опорная векторная машинаy ∊ {-1,1}; 1 для положительного класса и -1 в противном случаеШарнир: ℓ[y,f (x)] = max [0,1 yf (x)]
'logistic'Логистическая регрессияТо же, что и 'svm'Отклонение (логистическое): ℓ[y,f (x)] = log {1 + exp [yf (x)]}

Пример: 'Learner','logistic'

Тип штрафа сложности, указанный как разделенная запятыми пара, состоящая из 'Regularization' и 'lasso' или 'ridge'.

Программное обеспечение составляет целевую функцию для минимизации из суммы функции средних потерь (см. Learner) и термин регуляризации в этой таблице.

СтоимостьОписание
'lasso'Лассо (L1) пенальти: λ∑j=1p'βj|
'ridge'Штраф по Риджу (L2): λ2∑j=1pβj2

Чтобы указать силу термина регуляризации, которая является λ в выражениях, используйте Lambda.

Программное обеспечение исключает термин смещения (β0) из штрафа за регуляризацию.

Если Solver является 'sparsa', то значение по умолчанию Regularization является 'lasso'. В противном случае значение по умолчанию - 'ridge'.

Совет

  • Для выбора переменной предиктора укажите 'lasso'. Дополнительные сведения о выборе переменных см. в разделе Введение в выбор элементов.

  • Для точности оптимизации укажите 'ridge'.

Пример: 'Regularization','lasso'

Метод минимизации целевой функции, указанный как пара, разделенная запятыми, состоящая из 'Solver' и символьный вектор или строковый скаляр, строковый массив или массив ячеек символьных векторов со значениями из этой таблицы.

СтоимостьОписаниеОграничения
'sgd'Стохастический градиентный спуск (SGD) [4][2] 
'asgd'Средний стохастический градиентный спуск (ASGD) [7] 
'dual'Двойной SGD для SVM [1][6]Regularization должно быть 'ridge' и Learner должно быть 'svm'.
'bfgs'Алгоритм Бройдена-Флетчера-Гольдфарба-Шанно квази-Ньютона (BFGS) [3]Неэффективно, если X является очень высокоразмерным.
'lbfgs'Ограниченная память BFGS (LBFGS) [3]Regularization должно быть 'ridge'.
'sparsa'Разреженная реконструкция по разделяемому приближению (SpaRSA) [5]Regularization должно быть 'lasso'.

При указании:

  • Штраф по гребню (см. Regularization) и набор данных предиктора содержит 100 или менее переменных предиктора, тогда решателем по умолчанию является 'bfgs'.

  • Модель SVM (см. Learner), штраф по гребню, и набор данных предиктора содержит более 100 переменных предиктора, тогда решателем по умолчанию является 'dual'.

  • Штраф лассо и набор данных предиктора содержит 100 или менее переменных предиктора, тогда решателем по умолчанию является 'sparsa'.

В противном случае решателем по умолчанию является 'sgd'.

Дополнительные сведения о том, какой решатель выбрать, см. в разделе Советы.

Пример: 'Solver',{'sgd','lbfgs'}

Начальные оценки линейных коэффициентов (β), определенные как разделенная запятыми пара, состоящая из 'Beta' и p-мерный числовой вектор или p-на-L-числовую матрицу. p - количество переменных предиктора в X и L - количество значений прочности на регуляризацию (подробнее см. Lambda).

  • Если задать p-мерный вектор, то программное обеспечение оптимизирует целевую функцию L раз, используя этот процесс.

    1. Программное обеспечение оптимизирует использование Beta в качестве начального значения и минимального значения Lambda в качестве силы регуляризации.

    2. Программное обеспечение снова оптимизирует, используя оценку, полученную в результате предыдущей оптимизации, как теплое начало, и следующее наименьшее значение в Lambda в качестве силы регуляризации.

    3. Программное обеспечение реализует шаг 2, пока не исчерпает все значения в Lambda.

  • Если задать матрицу p-by-L, то программное обеспечение оптимизирует целевую функцию L раз. При итерации j, программное обеспечение использует Beta(:,j) как начальное значение и, после его сортировки Lambda по возрастанию, использует Lambda(j) в качестве силы регуляризации.

Если установить 'Solver','dual', то программное обеспечение игнорирует Beta.

Типы данных: single | double

Начальная оценка перехвата (b), указанная как пара, разделенная запятыми, состоящая из 'Bias' и числовой скаляр или L-мерный числовой вектор. L - количество значений прочности на регуляризацию (подробнее см. Lambda).

  • Если указать скаляр, то программное обеспечение оптимизирует целевую функцию L раз, используя этот процесс.

    1. Программное обеспечение оптимизирует использование Bias в качестве начального значения и минимального значения Lambda в качестве силы регуляризации.

    2. Использует результирующую оценку в качестве теплого начала следующей итерации оптимизации и использует следующее наименьшее значение в Lambda в качестве силы регуляризации.

    3. Программное обеспечение реализует шаг 2, пока не исчерпает все значения в Lambda.

  • Если задать L-мерный вектор, то программа оптимизирует целевую функцию L раз. При итерации j, программное обеспечение использует Bias(j) как начальное значение и, после его сортировки Lambda по возрастанию, использует Lambda(j) в качестве силы регуляризации.

  • По умолчанию:

    • Если Learner является 'logistic', то пусть gj будет 1, если Y(j) является положительным классом, а в противном случае -1. Bias - средневзвешенное значение g для обучения или, для перекрестной проверки, для кратных наблюдений.

    • Если Learner является 'svm', то Bias равно 0.

Типы данных: single | double

Флаг включения пересечения линейной модели, заданный как разделенная запятыми пара, состоящая из 'FitBias' и true или false.

СтоимостьОписание
trueПрограммное обеспечение включает член смещения b в линейную модель, а затем оценивает его.
falseПрограммное обеспечение устанавливает b = 0 во время оценки.

Пример: 'FitBias',false

Типы данных: logical

Флаг, соответствующий пересечению линейной модели после оптимизации, указанный как разделенная запятыми пара, состоящая из 'PostFitBias' и true или false.

СтоимостьОписание
falseПрограммное обеспечение оценивает член смещения b и коэффициенты β во время оптимизации.
true

Для оценки b программное обеспечение:

  1. Оценивает β и b с использованием модели

  2. Оценка показателей классификации

  3. Корректирует b, устанавливая пороговое значение для классификационных оценок, достигающих максимальной точности

При указании true, то FitBias должно быть истинно.

Пример: 'PostFitBias',true

Типы данных: logical

Уровень детализации, указанный как разделенная запятыми пара, состоящая из 'Verbose' и либо 0 или 1. Verbose управляет отображением диагностической информации в командной строке.

СтоимостьОписание
0templateLinear не отображает диагностическую информацию.
1templateLinear периодически отображает значение целевой функции, величину градиента и другую диагностическую информацию.

Пример: 'Verbose',1

Типы данных: single | double

Опции решателя SGD и ASGD

свернуть все

Размер мини-партии, указанный как разделенная запятыми пара, состоящая из 'BatchSize' и положительное целое число. При каждой итерации программа оценивает градиент с помощью BatchSize наблюдения из данных обучения.

  • Если данные предиктора являются числовой матрицей, то значением по умолчанию является 10.

  • Если данные предиктора являются разреженной матрицей, то значением по умолчанию является max([10,ceil(sqrt(ff))]), где ff = numel(X)/nnz(X), то есть коэффициент полноты X.

Пример: 'BatchSize',100

Типы данных: single | double

Скорость обучения, указанная как разделенная запятыми пара, состоящая из 'LearnRate' и положительный скаляр. LearnRate управляет размером шага оптимизации путем масштабирования подукладчика.

  • Если Regularization является 'ridge', то LearnRate определяет начальную скорость обучения γ 0. templateLinear определяет скорость обучения для итерации t, γ t, используя

    γ t = γ 0 (1 + λ γ 0t) c.

    • λ - значение Lambda.

    • Если Solver является 'sgd', то c = 1.

    • Если Solver является 'asgd', то c равно 0,75 [7].

  • Если Regularization является 'lasso', то для всех итераций, LearnRate является постоянной.

По умолчанию LearnRate является 1/sqrt(1+max((sum(X.^2,obsDim)))), где obsDim является 1 если наблюдения составляют столбцы данных предиктора X, и 2 в противном случае.

Пример: 'LearnRate',0.01

Типы данных: single | double

Флаг для уменьшения скорости обучения, когда программное обеспечение обнаруживает дивергенцию (то есть превышение минимального шага), заданную как пара, разделенная запятыми, состоящая из 'OptimizeLearnRate' и true или false.

Если OptimizeLearnRate является 'true', то:

  1. Для нескольких итераций оптимизации программа начинает оптимизацию с помощью LearnRate как скорость обучения.

  2. Если значение целевой функции увеличивается, то программное обеспечение перезапускается и использует половину текущего значения скорости обучения.

  3. Программное обеспечение выполняет этап 2 до тех пор, пока целевая функция не будет уменьшена.

Пример: 'OptimizeLearnRate',true

Типы данных: logical

Количество мини-пакетов между прогонами усечения лассо, указанное как пара, разделенная запятыми, состоящая из 'TruncationPeriod' и положительное целое число.

После выполнения усечения программное обеспечение применяет мягкий порог к линейным коэффициентам. То есть после обработки k = TruncationPeriod мини-партии, программное обеспечение усекает оценочный коэффициент j, используя

β^j∗={β^j−utif β ^ j > ut, 0if |β^j|≤ut,β^j+utif β ^ j < ut.

  • Для SGD β ^ j - оценка коэффициента j после обработки k мини-партий. ut = kγ tλ. γ t - скорость обучения при итерации t.λ - значениеLambda.

  • Для ASGD β ^ j - усредненный оценочный коэффициент j после обработки k мини-партий, ut = kλ.

Если Regularization является 'ridge', то программное обеспечение игнорирует TruncationPeriod.

Пример: 'TruncationPeriod',100

Типы данных: single | double

Управление сходимостью SGD и ASGD

свернуть все

Максимальное количество обрабатываемых пакетов, указанное как пара, разделенная запятыми, состоящая из 'BatchLimit' и положительное целое число. При обработке программного обеспечения BatchLimit пакеты, он завершает оптимизацию.

  • По умолчанию:

    • Программное обеспечение проходит через данные PassLimit времена.

    • Если указать несколько решателей и использовать (A) SGD для получения начального приближения для следующего решателя, то значением по умолчанию являетсяceil(1e6/BatchSize). BatchSize - значение 'BatchSize' аргумент пары имя-значение.

  • При указании 'BatchLimit' и 'PassLimit', то программное обеспечение выбирает аргумент, который приводит к обработке наименьшего количества наблюдений.

  • При указании 'BatchLimit' но не 'PassLimit', затем программное обеспечение обрабатывает достаточное количество пакетов, чтобы завершить до одного полного прохода через данные.

Пример: 'BatchLimit',100

Типы данных: single | double

Относительный допуск на линейные коэффициенты и член смещения (пересечение), указанный как разделенная запятыми пара, состоящая из 'BetaTolerance' и неотрицательный скаляр.

Пусть Bt = [βt bt], то есть вектор коэффициентов и член смещения при итерации оптимизации т. Если Bt−Bt−1Bt‖2<BetaTolerance, то оптимизация заканчивается.

Если программное обеспечение сходится для последнего решателя, указанного в Solver, то оптимизация заканчивается. В противном случае программа использует следующий решатель, указанный в Solver.

Пример: 'BetaTolerance',1e-6

Типы данных: single | double

Количество пакетов для обработки перед следующей проверкой сходимости, указанное как разделенная запятыми пара, состоящая из 'NumCheckConvergence' и положительное целое число.

Чтобы указать размер партии, см. раздел BatchSize.

По умолчанию программа проверяет сходимость примерно в 10 раз за один проход по всему набору данных.

Пример: 'NumCheckConvergence',100

Типы данных: single | double

Максимальное количество проходов через данные, указанное как разделенная запятыми пара, состоящая из 'PassLimit' и положительное целое число.

Программа обрабатывает все наблюдения по завершении одного прохода через данные.

Когда программное обеспечение проходит через данные PassLimit раз, он прекращает оптимизацию.

При указании 'BatchLimit' и PassLimit, то программное обеспечение выбирает аргумент, который приводит к обработке наименьшего количества наблюдений.

Пример: 'PassLimit',5

Типы данных: single | double

Двойные средства управления сходимостью SGD

свернуть все

Относительный допуск на линейные коэффициенты и член смещения (пересечение), указанный как разделенная запятыми пара, состоящая из 'BetaTolerance' и неотрицательный скаляр.

Пусть Bt = [βt bt], то есть вектор коэффициентов и член смещения при итерации оптимизации т. Если Bt−Bt−1Bt‖2<BetaTolerance, то оптимизация заканчивается.

Если также указать DeltaGradientTolerance, то оптимизация завершается, когда программное обеспечение удовлетворяет любому критерию остановки.

Если программное обеспечение сходится для последнего решателя, указанного в Solver, то оптимизация заканчивается. В противном случае программа использует следующий решатель, указанный в Solver.

Пример: 'BetaTolerance',1e-6

Типы данных: single | double

Градиентно-разностный допуск между нарушителями условий комплементарности верхнего и нижнего пулов Karush-Kuhn-Tucker (KKT), определяемый как разделенная запятыми пара, состоящая из 'DeltaGradientTolerance' и неотрицательный скаляр.

  • Если магнитуда нарушителей ККТ меньше DeltaGradientTolerance, то программное обеспечение завершает оптимизацию.

  • Если программное обеспечение сходится для последнего решателя, указанного в Solver, то оптимизация заканчивается. В противном случае программа использует следующий решатель, указанный в Solver.

Пример: 'DeltaGapTolerance',1e-2

Типы данных: double | single

Количество проходов через весь набор данных для обработки перед следующей проверкой сходимости, указанной как пара, разделенная запятыми, состоящая из 'NumCheckConvergence' и положительное целое число.

Пример: 'NumCheckConvergence',100

Типы данных: single | double

Максимальное количество проходов через данные, указанное как разделенная запятыми пара, состоящая из 'PassLimit' и положительное целое число.

Когда программное обеспечение завершает один проход через данные, оно обрабатывает все наблюдения.

Когда программное обеспечение проходит через данные PassLimit раз, он прекращает оптимизацию.

Пример: 'PassLimit',5

Типы данных: single | double

Управление конвергенцией BFGS, LBFGS и SpaRSA

свернуть все

Относительный допуск на линейные коэффициенты и член смещения (пересечение), указанный как разделенная запятыми пара, состоящая из 'BetaTolerance' и неотрицательный скаляр.

Пусть Bt = [βt bt], то есть вектор коэффициентов и член смещения при итерации оптимизации т. Если Bt−Bt−1Bt‖2<BetaTolerance, то оптимизация заканчивается.

Если также указать GradientTolerance, то оптимизация завершается, когда программное обеспечение удовлетворяет любому критерию остановки.

Если программное обеспечение сходится для последнего решателя, указанного в Solver, то оптимизация заканчивается. В противном случае программа использует следующий решатель, указанный в Solver.

Пример: 'BetaTolerance',1e-6

Типы данных: single | double

Абсолютный градиентный допуск, заданный как разделенная запятыми пара, состоящая из 'GradientTolerance' и неотрицательный скаляр.

Пусть ∇ℒt является градиентным вектором целевой функции относительно коэффициентов и члена смещения при итерации оптимизации T. Если ∇ℒt‖∞=max|∇ℒt|<GradientTolerance, то оптимизация заканчивается.

Если также указать BetaTolerance, то оптимизация завершается, когда программное обеспечение удовлетворяет любому критерию остановки.

Если программное обеспечение сходится для последнего решателя, указанного в программном обеспечении, оптимизация завершается. В противном случае программа использует следующий решатель, указанный в Solver.

Пример: 'GradientTolerance',1e-5

Типы данных: single | double

Размер буфера истории для гессенского приближения, определяемого как разделенная запятыми пара, состоящая из 'HessianHistorySize' и положительное целое число. То есть на каждой итерации программное обеспечение составляет гессен, используя статистику из последних HessianHistorySize итерации.

Программное обеспечение не поддерживает 'HessianHistorySize' для SpaRSA.

Пример: 'HessianHistorySize',10

Типы данных: single | double

Максимальное число итераций оптимизации, указанное как пара, разделенная запятыми, состоящая из 'IterationLimit' и положительное целое число. IterationLimit применяется к этим значениям Solver: 'bfgs', 'lbfgs', и 'sparsa'.

Пример: 'IterationLimit',500

Типы данных: single | double

Выходные аргументы

свернуть все

Шаблон обучающегося модели линейной классификации, возвращаемый как объект шаблона. Для обучения модели линейной классификации с использованием многомерных данных для многоклассных задач пройдите t кому fitcecoc.

При отображении t в окне команд все неустановленные параметры отображаются пустыми ([]). Однако во время обучения программа заменяет пустые опции соответствующими значениями по умолчанию.

Подробнее

свернуть все

Теплый старт

Теплое начало - это начальные оценки бета-коэффициентов и члена смещения, подаваемые в подпрограмму оптимизации для более быстрой сходимости.

Совет

  • Рекомендуется ориентировать матрицу предиктора таким образом, чтобы наблюдения соответствовали столбцам и указывали 'ObservationsIn','columns'. В результате можно значительно сократить время оптимизации-выполнения.

  • Для лучшей точности оптимизации, если данные предиктора являются высокоразмерными и Regularization является 'ridge', задайте любую из этих комбинаций для Solver:

    • 'sgd'

    • 'asgd'

    • 'dual' если Learner является 'svm'

    • {'sgd','lbfgs'}

    • {'asgd','lbfgs'}

    • {'dual','lbfgs'} если Learner является 'svm'

    Другие комбинации могут привести к низкой точности оптимизации.

  • Для лучшей точности оптимизации, если данные предиктора являются умеренными - через низкоразмерные и Regularization является 'ridge', комплект Solver кому 'bfgs'.

  • Если Regularization является 'lasso', задайте любую из этих комбинаций для Solver:

    • 'sgd'

    • 'asgd'

    • 'sparsa'

    • {'sgd','sparsa'}

    • {'asgd','sparsa'}

  • При выборе между SGD и ASGD необходимо учитывать следующее:

    • SGD занимает меньше времени на одну итерацию, но для сходимости требуется больше итераций.

    • Для сходимости ASGD требуется меньше итераций, но на одну итерацию уходит больше времени.

  • Если данные предиктора имеют мало наблюдений, но много переменных предиктора, то:

    • Определить 'PostFitBias',true.

    • Для решателей SGD или ASGD, установка PassLimit к положительному целому числу, которое больше 1, например, 5 или 10. Эта настройка часто приводит к лучшей точности.

  • Для решателей SGD и ASGD, BatchSize влияет на скорость сходимости.

    • Если BatchSize слишком мало, то программное обеспечение достигает минимума во многих итерациях, но быстро вычисляет градиент на одну итерацию.

    • Если BatchSize слишком большой, то программное обеспечение достигает минимума в меньшем количестве итераций, но вычисляет градиент на одну итерацию медленно.

  • Большой уровень обучения (см. LearnRate) ускоряет схождение до минимума, но может привести к дивергенции (то есть перевыполнению минимума). Небольшие показатели обучения обеспечивают сведение к минимуму, но могут привести к медленному прекращению обучения.

  • Если Regularization является 'lasso', затем экспериментировать с различными значениями TruncationPeriod. Например, установить TruncationPeriod кому 1, 10, а затем 100.

  • Для эффективности программное обеспечение не стандартизирует данные предиктора. Для стандартизации данных предиктора (X), введите

    X = bsxfun(@rdivide,bsxfun(@minus,X,mean(X,2)),std(X,0,2));

    Код требует, чтобы предикторы и наблюдения были ориентированы как строки и столбцы Xсоответственно. Кроме того, для экономии использования памяти код заменяет исходные данные предиктора стандартизированными данными.

Ссылки

[1] Hsieh, C. J., K. W. Chang, C. J. Лин, С. С. Кеэрти и С. Сундарараджан. «Метод двухкоординатного спуска для крупномасштабного линейного SVM». Материалы 25-й Международной конференции по машинному обучению, ICML "08, 2001, pp. 408-415.

[2] Лэнгфорд, Дж., Л. Ли и Т. Чжан. «Разреженное онлайн-обучение через усеченный градиент». Дж. Мач. Рес., т. 10, 2009, стр. 777-801.

[3] Nocedal, J. и С. Дж. Райт. Численная оптимизация, 2-е изд., Нью-Йорк: Спрингер, 2006.

[4] Шалев-Шварц, С., Я. Сингер и Н. Сребро. «Pegasos: Основной оценочный вычислитель субпогренов для SVM». Материалы 24-й Международной конференции по машинному обучению, ICML "07, 2007, стр. 807-814.

[5] Мастер, S. J., Р. Д. Ноуок и М. А. Т. Фигередо. «Разреженная реконструкция по разделяемому приближению». Транс. Сиг. Proc., том 57, № 7, 2009, стр. 2479-2493.

[6] Сяо, Линь. «Двойные методы усреднения для регуляризованного стохастического обучения и онлайн-оптимизации». Дж. Мач. Рес., т. 11, 2010, стр. 2543-2596.

[7] Сюй, Вэй. «К оптимальному однопроходному крупномасштабному обучению со усредненным стохастическим градиентным спуском». CoRR, abs/1107.2490, 2011.

Расширенные возможности

См. также

| |

Представлен в R2016a