Код Middle kNN и SVM обновлено

Hinge loss и опорные объекты

Условие

Линейная модель f(x) = w·x + b, метки y ∈ {-1, 1}. Напишите svm_objective(w, b, X, y, C): верните [objective, support], где objective = |w|²/2 + C·Σmax(0, 1 - yᵢf(xᵢ)) (округлить до 4 знаков), support это отсортированный список индексов объектов с yᵢf(xᵢ) ≤ 1.

Примеры

svm_objective([1, 0], 0, [[2, 0], [-2, 0], [1, 5]], [1, -1, 1], 1) // [0.5, [2]]
svm_objective([1, 1], -1, [[1, 1], [0, 0], [0.5, 0.5]], [1, -1, 1], 2) // [3, [0, 1, 2]]
svm_objective([0.5], 0, [[4], [-4]], [1, -1], 10) // [0.125, []]

Решите в тренажёре

Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.

Термины по теме