Назад к вопросам
JuniorТеорияЧасто
Что выведет эта программа?
import numpy as np
X = np.array([[0, 0], [1, 1], [2, 1], [3, 2], [1, 3], [4, 3]])
y = np.array([-1, -1, -1, -1, 1, 1])
w = np.array([1, 1])
b = -3
margins = y * (X @ w + b)
print(int((margins < 1).sum()), int((margins < 0).sum()))2 1
- Ждать
1 1: точка[2, 1]лежит на самой прямой, её значениеmarginsравно0, а это меньше1, так что зазор она тоже нарушает. - Ждать
4 1: точки[1, 1]и[1, 3]дают ровно1, то есть лежат на краю полосы, иmargins < 1их не считает.
- Какие из этих шести точек — опорные векторы этой прямой?
- Какова ширина полосы у этой прямой и как она изменится, если удвоить
wиb?