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)=xβ+b.

  • β является вектором из коэффициентов p.

  • x является наблюдением от переменных предикторов p.

  • b является скалярным смещением.

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

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

Штраф сложности вводит в виде разделенной запятой пары, состоящей из 'Regularization' и 'lasso' или 'ridge'.

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

ЗначениеОписание
'lasso'Лассо (L1) штраф: λj=1p|βj|
'ridge'Гребень (L2) штраф: λ2j=1pβj2

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

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

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

Совет

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

  • Для точности оптимизации задайте 'ridge'.

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

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

ЗначениеОписаниеОграничения
'sgd'Stochastic gradient descent (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-by-L числовая матрица. p является количеством переменных предикторов в X и L является количеством значений силы регуляризации (для получения дополнительной информации, смотрите Lambda).

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

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

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

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

  • Если вы задаете p-by-L матрица, то программное обеспечение оптимизирует целевую функцию времена L. В итерации j, программное обеспечение использует Бету (: 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, программное обеспечение использует Смещение (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

Типы данных: логический

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

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

Оценить b, программное обеспечение:

  1. Оценки β и b с помощью модели

  2. Оценочные классификационные оценки

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

Если вы задаете true, затем FitBias должно быть верным.

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

Типы данных: логический

Уровень многословия в виде разделенной запятой пары, состоящей из '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), то есть, fullness factor 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

Типы данных: логический

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

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

β^j={β^jutеслиβ^j>ut,0если|β^j|ut,β^j+utеслиβ^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 \times.

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

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

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

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

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

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

Пусть Bt=[βtbt], то есть, вектор из коэффициентов и смещения называет в итерации оптимизации t. Если BtBt1Bt2<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=[βtbt], то есть, вектор из коэффициентов и смещения называет в итерации оптимизации t. Если BtBt1Bt2<BetaTolerance, затем оптимизация завершает работу.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

BFGS, LBFGS и средства управления сходимостью SpaRSA

свернуть все

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

Пусть Bt=[βtbt], то есть, вектор из коэффициентов и смещения называет в итерации оптимизации t. Если BtBt1Bt2<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 к Командному окну, затем все, незаданные опции кажутся пустыми ([]). Однако программное обеспечение заменяет пустые опции на их соответствующие значения по умолчанию во время обучения.

Больше о

свернуть все

Горячий запуск

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

Советы

  • Это - лучшая практика ориентировать вашу матрицу предиктора так, чтобы наблюдения соответствовали столбцам и задавать '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] Се, C. J. К. В. Чанг, К. Дж. Лин, С. С. Кирти и С. Сандарарэджэн. “Двойной Координатный Метод Спуска для Крупномасштабного Линейного SVM”. Продолжения 25-й Международной конференции по вопросам Машинного обучения, ICML ’08, 2001, стр 408–415.

[2] Лэнгфорд, J., Л. Ли и Т. Чжан. “Разреженное Дистанционное обучение Через Усеченный Градиент”. Дж. Мах. Учиться. Res., Издание 10, 2009, стр 777–801.

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

[4] Шалев-Шварц, S., И. Зингер и Н. Сребро. “Pegasos: Основной Предполагаемый Решатель Подградиента для SVM”. Продолжения 24-й Международной конференции по вопросам Машинного обучения, ICML ’07, 2007, стр 807–814.

[5] Мастер, S. J. Р. Д. Ноуок и М. А. Т. Фигередо. “Разреженная Реконструкция Отделимым Приближением”. Сигнал сделки Proc., Издание 57, № 7, 2009, стр 2479–2493.

[6] Сяо, Лин. “Двойные Методы усреднения для Упорядоченного Стохастического Изучения и Онлайновой Оптимизации”. Дж. Мах. Учиться. Res., Издание 11, 2010, стр 2543–2596.

[7] Сюй, Вэй. “К Оптимальному Один Крупный масштаб Передачи Изучение с Усредненным Стохастическим Градиентным спуском”. CoRR, abs/1107.2490, 2011.

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

Смотрите также

| |

Введенный в R2016a