К задачам

XOR через ReLU-блоки

СредняяML-задачи
Лучше работает на десктопе
ReLUБитовые операцииКонструктивные сети

Реализуйте побитовый XOR двух неотрицательных чисел через простые ReLU-блоки.

Для каждого бита a_i и b_i значение XOR можно записать как:

relu(a_i - b_i) + relu(b_i - a_i)

где relu(x) = max(0, x).

Сигнатура

def xor_relu(a: int, b: int, bits: int = 16) -> int:

Обработайте младшие bits битов и верните целое число.

Примеры

Пример 1

Вход:
a = 5
b = 3
bits = 4
Выход:6

Пример 2

Вход:
a = 65535
b = 0
bits = 16
Выход:65535

Пример 3

Вход:
a = 43690
b = 21845
bits = 16
Выход:65535
Код
Python · Ctrl/⌘ + Enter для запуска
Лимит
06:00
Консоль
Нажмите кнопку запуска или Ctrl+Enter
XOR через ReLU-блоки — ML-задачи задача — ML Mentor