Никто не станет спорить, что у Гэри Каспарова более сложный интеллект, чем у его Deep Blue, или у Ли Седоля более сложный интеллект, чем у Alpha Go. Они направляют большую часть своих умственных способностей на повседневную жизнь человека. Они обладают менее специализированным, но более сложным интеллектом, чем их заклятый враг-андроид.

Человеческому мозгу требуется больше всего времени для развития из-за его сложности. Менее сложным существам, таким как наши питомцы, требуется меньше времени, чтобы достичь зрелости, потому что они обладают более специализированными навыками. Комаров и того меньше. Этот принцип справедлив в природе и математике. Специализированная система должна принимать меньше решений для достижения оптимального результата.

Интеллектуальная система неизбежно усложняется с каждым новым добавленным навыком. Однако по мере увеличения сложности увеличивается и количество ошибок. Кроме того, требуется больше обучающих примеров, чтобы уменьшить количество ошибок в заданном навыке.

Поэтому, когда мы разрабатываем решение для машинного обучения, сложность проблемы будет идти рука об руку со сложностью вашего решения. Есть некоторые вопросы, например, сколько слоев должно быть в моем CNN? Сколько обучающих примеров мне нужно, чтобы достичь определенной ошибки.

Сложность ответа — это расчет, помогающий понять сложность проблемы с учетом помеченных обучающих данных.

Для набора обучающих данных с входами N с числом возможных входов n и набором выходов M с числом возможных выходов m и дисперсией выход где n ›= 1 и m ›= 1.

RC=(n — 1)σ²(m — 1)

Некоторые наблюдения

  • С каждым добавленным навыком сложность сети
  • Если возможное количество выходов равно 1, сложность равна 0.
  • Если возможное количество выходов бесконечно, но дисперсия равна 0, то сложность равна 0.
  • Если возможное количество выходов бесконечно, а количество входов равно 1. Сложность равна 0. Разумного ответа быть не может.
  • Сложность возрастает линейно по отношению к m и n.

Прощальные мысли

Я надеюсь, что для разных классов сложности ответа будут представлены разные оптимальные решения для машинного обучения. Например, если RC превышает пороговое значение T, оптимальной архитектурой будет вариант CNN. Для проблем с меньшими сложностями ответа могут появиться более простые решения. Если мы сможем классифицировать сложность каждой проблемы, это облегчит разработчику разработку решений машинного обучения, и, возможно, даже машина сможет разработать собственное решение.

Примечание

Уравнение для сложности отклика все еще новое, и у меня есть много сомнений по поводу конкретных взаимосвязей с переменными. Я считаю, что добавление вывода добавляет больше сложности, чем добавление ввода, но на данный момент трудно определить, насколько больше. Должен ли я квадратировать вывод? Зарегистрировать ввод? Возможно ли иметь одно уравнение, объединяющее регрессоры и классификаторы? Это исследование теории сложности и анализ алгоритмов машинного обучения, которое я и, надеюсь, другие продолжат изучать.