Why is fitcsvm not saving model convergence history?

조회 수: 1 (최근 30일)
Vishesh Sarin
Vishesh Sarin 2021년 10월 19일
답변: Darshak 2025년 2월 6일
My supervisor would like me to graph the objective function per iteration for my SVM model, and so I was trying to save convergence history.
According to the fitcsvm documentation, if you set 'Verbose' to 2 then convergence history will be found at Mdl.ConvergenceInfo.History
Yet this is not the case when using L1QP as the solver (it is found exactly there when using the SMO solver). This is especially strange as the actual per iteration information is still displayed in the Matlab console/command window, but after training the model there is no History struct under the ConvergenceInfo struct.

답변 (1개)

Darshak
Darshak 2025년 2월 6일
Hi Vishesh,
It is correct that when we run fitcsvmwith L1QP as the solver and verbose 2 there is no convergence history generated, but the L1QP solver doesn’t actually work in an iterative manner. This will be due to the working of the algorithm for both the solvers, according to which -
SMO This solver is iterative in nature, due to which we can have more detailed and iterative convergence history, through which we can track progress.
L1QP – The solver is based on solving a quadratic programming problem using optimization routines, which doesn’t involve iteration, so there isn’t any convergence history. Although using verbose we can see more details when we use this.
This is mentioned in the documentation of the fitcsvm function too, which can be found here:
I hope this helps with your question.

카테고리

Help CenterFile Exchange에서 Manual Performance Optimization에 대해 자세히 알아보기

제품


릴리스

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by