Как сеть выбирает класс: задача XOR
До сих пор сеть предсказывала числовую величину. При распознавании цифр вопрос устроен иначе: нужно выбрать один вариант из нескольких. Такую задачу называют классификацией, а возможные варианты — классами. Цифры от 0 до 9 образуют десять классов. Прежде чем переходить к изображениям, разберём маленькую задачу с двумя классами, чтобы все объекты и все ответы помещались перед глазами.
Задача называется XOR, или исключающее ИЛИ. На вход подаются два числа, каждое из которых равно нулю или единице. Правильный ответ равен 1, когда входы различаются, и 0, когда они одинаковы. Значит, пары (0, 0) и (1, 1) относятся к классу 0, а пары (0, 1) и (1, 0) — к классу 1. Мы знаем логическое правило, но снова не будем записывать его в вычисление модели: предоставим ей только примеры.
Входы организуем в таблицу формы (4, 2). Для каждого объекта достаточно одного правильного номера класса, поэтому метки образуют вектор формы (4,). Здесь числа 0 и 1 являются названиями вариантов. Для выбранного далее способа вычисления ошибки эти номера должны иметь целочисленный тип torch.long.