Подгонка задних вероятностей для классификатора опорной векторной машины (SVM)
возвращает классификатор обученной машины вектора поддержки (SVM) ScoreSVMModel = fitPosterior(SVMModel)ScoreSVMModel содержащий оптимальную функцию преобразования оценки в апостериорную вероятность для двухклассного обучения. Дополнительные сведения см. в разделе Алгоритмы.
[ дополнительно возвращает параметры оптимальной функции преобразования «оценка-задняя вероятность».ScoreSVMModel,ScoreTransform] = fitPosterior(SVMModel)
[ использует дополнительные параметры, заданные одним или несколькими аргументами пары имя-значение. Например, можно указать количество сгибов или долю выборки при удержании.ScoreSVMModel,ScoreTransform] = fitPosterior(SVMModel,Name,Value)
Этот процесс описывает один способ предсказать положительные апостериорные вероятности класса.
Обучение классификатора SVM путем передачи данных в fitcsvm. Результатом является обученный классификатор SVM, такой как SVMModel, которая хранит данные. Программа устанавливает свойство функции преобразования баллов (SVMModel.ScoreTransformationКому none.
Сдать обученный классификатор SVM SVMModel кому fitSVMPosterior или fitPosterior. Результат, например, ScoreSVMModel, является тем же обученным классификатором SVM, что и SVMModel, за исключением наборов программного обеспечения ScoreSVMModel.ScoreTransformation к оптимальной функции преобразования баллов.
Передайте матрицу данных предиктора и обученный классификатор SVM, содержащий функцию оптимального преобразования баллов (ScoreSVMModelКому predict. Второй столбец во втором выходном аргументе predict сохраняет положительные апостериорные вероятности класса, соответствующие каждой строке матрицы данных предиктора.
Если пропустить шаг 2, то predict возвращает положительный балл класса, а не положительную апостериорную вероятность класса.
После подгонки задних вероятностей можно создать код C/C + +, который предсказывает метки для новых данных. Для создания кода C/C + + требуется Coder™ MATLAB ®. Дополнительные сведения см. в разделе Введение в создание кода.
Программное обеспечение подходит для соответствующей функции преобразования «оценка-задняя вероятность» с использованием классификатора SVM SVMModel и путем проведения 10-кратной перекрестной проверки с использованием сохраненных данных предиктора (SVMModel.Xи метки класса (SVMModel.Y), как указано в [1]. Функция преобразования вычисляет апостериорную вероятность того, что наблюдение классифицируется в положительный класс (SVMModel.Classnames(2)).
Если классы неразделимы, то функция преобразования является сигмоидной функцией.
Если классы являются полностью разделяемыми, то функция преобразования является функцией шага.
В двухклассном обучении, если один из двух классов имеет относительную частоту 0, то функция преобразования является постоянной функцией. fitPosterior функция не подходит для одноклассного обучения.
Программное обеспечение хранит оптимальную функцию преобразования «оценка-задняя вероятность» в ScoreSVMModel.ScoreTransform.
Если повторно оценить функцию преобразования оценки в апостериорную вероятность, то есть если передать классификатор SVM fitPosterior или fitSVMPosterior и его ScoreTransform свойство не является none, затем программное обеспечение:
Отображает предупреждение
Сбрасывает исходную функцию преобразования в 'none' перед оценкой нового
Вы также можете подогнать апостериорную функцию вероятности, используя fitSVMPosterior. Эта функция аналогична fitPosterior, за исключением того, что он является более широким, поскольку допускает более широкий диапазон типов классификаторов SVM.
[1] Плэтт, J. «Вероятностные результаты для вспомогательных векторных машин и сравнения с регуляризованными методами правдоподобия». Достижения в классификаторах больших марж. Кембридж, Массачусетс: MIT Press, 2000, стр. 61-74.