Ємність - це неофіційний термін. Це дуже близько (якщо не синонім) до складності моделі. Це спосіб поговорити про те, наскільки складний візерунок або стосунки може виражати модель. Можна очікувати, що модель з більшою ємністю зможе моделювати більше співвідношень між більшою кількістю змінних, ніж модель із меншою ємністю.
Проводячи аналогію з розмовного визначення ємності, ви можете розглядати це як здатність моделі вчитися з дедалі більше даних, поки вона не буде повністю «заповнена» інформацією.
Існують різні способи формалізації ємності та обчислення числового значення для неї, але важливо, що це лише деякі можливі "операціоналізації" ємності (приблизно так само, якби хтось придумав формулу для обчислення краси, ви зрозуміли б, що формула - це лише одна помилкова інтерпретація краси).
Вимір VC - це математично сувора формулювання ємності. Однак може бути великий розрив між розмірністю ВК моделі та фактичною здатністю моделі підходити до даних. Навіть незважаючи на те, що знання VC-диму дає обмеження на помилку узагальнення моделі, це, як правило, занадто вільно, щоб бути корисним для нейронних мереж.
Інший напрям досліджень, який ми бачимо тут, полягає у використанні спектральної норми вагових матриць у нейронній мережі як міри потужності. Одним із способів зрозуміти це є те, що спектральна норма виходить за межі константи Ліпшица.
Найпоширеніший спосіб оцінити місткість моделі - підрахувати кількість параметрів. Чим більше параметрів, тим вище ємність в цілому. Звичайно, часто менша мережа вчиться моделювати складніші дані краще, ніж велика мережа, тому цей захід також далеко не ідеальний.
Іншим способом вимірювання ємності може бути навчання вашої моделі випадковими мітками ( Нейшабур та ін. ) - якщо ваша мережа може правильно запам'ятати купу входів разом із випадковими мітками, це по суті показує, що модель має можливість запам'ятовувати всі ці точки даних індивідуально. Чим більше пар вводу / виводу, які можна "дізнатися", тим вище ємність.
Пристосовуючи це до автокодера, ви можете генерувати випадкові входи, навчати мережу реконструювати їх, а потім порахувати, скільки випадкових входів ви зможете успішно реконструювати з меншою помилкою .ϵ