Як вибрати оптимальну кількість прихованих факторів при негативній матричній факторизації?


16

З огляду на матрицю Vm×n , Негативна факторизація матриць (NMF) знаходить дві негативні матриці та (тобто з усіма елементами ) представити розкладену матрицю як:H k × n0Wm×kHk×n0

VWH,

WH

VWH2.

Чи є загальна практика для оцінки кількості в NMF? Як, наприклад, для цієї мети можна використовувати перехресну перевірку?k


У мене немає жодних цитат (і насправді я зробив швидкий пошук в Google вченого і не зміг знайти жодного), але я вважаю, що перехресне підтвердження повинно бути можливим.
амеба каже, що поверніть Моніку

2
Не могли б ви розповісти мені більше подробиць про те, як виконати перехресну перевірку для NMF? Значення K для норми Фробеніуса завжди будуть зменшуватися зі збільшенням числа K.
Стів Зайлер

Для чого ви робите NMF? Це представляти V у просторі нижчих розмірів (без нагляду) чи це надавати рекомендації (під наглядом). Наскільки великий ваш V ? Чи потрібно пояснити певний відсоток дисперсії? Ви можете застосувати резюме після визначення об'єктивної метрики. Я б закликав вас продумати додаток і знайти метрику, яка має сенс.
невіглас

Відповіді:


10

Для вибору оптимальної кількості прихованих факторів при негативній матричній факторизації використовуйте перехресну перевірку.

Як ви писали, мета NMF - знайти низькі розміри W і H з усіма негативними елементами, мінімізуючи помилку відновлення VWH2 . Уявіть, що ми залишаємо один елемент V , наприклад Vab , і виконуємо NMF отриманої матриці з однією відсутнім осередком. Це означає, що знаходять W і H мінімізуючи помилку відновлення для всіх відсутніх комірок:

ijab(Vij[WH]ij)2.

Після цього ми можемо передбачити лівий елемент Vab , обчисливши [WH]ab і обчислити помилку передбачення

eab=(Vab[WH]ab)2.
Можна повторити цю процедуру, виключаючи по черзі всі елементи Vab , і підсумовувати помилки передбачення для всіх a і b . Це призведе до загального значення PRESS (передбачувана залишкова сума квадратів) E(k)=abeab що буде залежати відk . Сподіваємось, функціяE(k) матиме мінімум, який можна використовувати як "оптимальний"k .

Зауважте, що це може бути обчислювально дорогим, оскільки NMF повинен бути повторений для кожного випущеного значення, а також може бути складним у програмі (залежно від того, наскільки легко виконати NMF з відсутніми значеннями). У PCA можна обійти це, залишивши повні рядки V (що значно прискорює обчислення), дивіться мою відповідь у розділі Як виконати перехресну перевірку для PCA для визначення кількості основних компонентів? , але це неможливо тут.

Звичайно, тут застосовуються всі звичні принципи перехресної перевірки, тож ви можете залишити безліч осередків одночасно (замість лише однієї) та / або повторити процедуру лише для деяких випадкових комірок замість того, щоб перекидатись на всі комірки. Обидва підходи можуть допомогти прискорити процес.

Редагувати (березень 2019 р.): Дивіться це дуже приємне ілюстроване написання @AlexWilliams : http://alexhwilliams.info/itsneuronalblog/2018/02/26/crossval . Алекс використовує https://github.com/kimjingu/nonnegfac-python для NMF з відсутніми значеннями.


4

Наскільки мені відомо, є два хороших критерії: 1) коефіцієнт кофенетичної кореляції та 2) порівняння залишкової суми квадратів з рандомізованими даними для набору рангів (можливо, для цього є назва, але я не пам’ятаю)

  1. Коефіцієнт кофенетичної кореляції: Ви повторюєте NMF кілька разів на ранг і ви обчислюєте, наскільки схожі результати. Іншими словами, наскільки стійкі виявлені скупчення, враховуючи, що початкове насіння є випадковим. Виберіть найвищий К до падіння коефіцієнтного коефіцієнта.

  2. RSS проти рандомізованих даних Для будь-якого підходу до зменшення розмірності завжди є втрата інформації порівняно з вашими вихідними даними (оцінюється за допомогою RSS). Тепер виконайте NMF для збільшення K та обчисліть RSS як з оригінальним набором даних, так і з рандомізованим набором даних. Порівнюючи RSS у функції K, RSS зменшується зі збільшенням K у вихідному наборі даних, але це менше випадків для рандомізованого набору даних. Порівнюючи обидва схили, має бути K, де вони перетинаються. Іншими словами, скільки інформації ви могли б дозволити собі втратити (= найвищий К), перш ніж потрапити в шуму.

Сподіваюся, я був досить зрозумілий.

Редагувати: я знайшов ці статті.

1.Jean-P. Брунет, Пабло Тамайо, Тодд Р. Голуб та Джилл П. Месірова. Виявлення метагенів та молекулярних зразків з використанням матричної факторизації. У працях Національної академії наук США, 101 (12): 4164-4169, 2004.

2.Аттіла Фріг'єзі та Маттіас Хоглунд. Негативна матрична факторизація для аналізу даних про комплексну експресію генів: ідентифікація клінічно значущих підтипів пухлини. Інформатика про рак, 6: 275-292, 2008.


Незрозуміло, чому RSS випадкових даних повинен бути нижчим, ніж RSS, обчислений з оригінальними даними, коли K невеликий? В іншому я розумію, що RSS у випадкових випадках повинен зменшуватися повільніше, ніж у вихідних даних.
Malik Koné

1

При NMF-факторизації параметр (відзначений r у більшості літератури) є рангом наближення V і вибирається таким, що k < min ( m , n ) . Вибір параметра визначає подання ваших даних V на надмірно повній основі, що складається із стовпців W ; the w i  ,  i = 1 , 2 , , k . Результати полягають у тому, що ряди матриць W і H мають верхню межуkrVk<min(m,n)VWwi , i=1,2,,kWH і добуток W H - наближення низького рангу V ; також k максимум. Отже, вибір k < min ( m , n ) повинен являти собою зменшення розмірності, де V може бути сформований / віднесений від вищезгаданих векторів бази.kWHVkk<min(m,n)V

Більш детальну інформацію можна знайти в розділі 6 цієї книги С. Теодорідіса та К. Кутроумбаса.

Після мінімізації обраної вами функції витрат відносно і H , оптимальний вибір k ( вибраний емпіричним шляхом, працюючи з різними підпробілами функції) повинен дати V , наближення V , з особливостями, репрезентативними для вашої початкової матриці даних В . WHkVVV

Робота з різними підпросторами ознак у тому сенсі, що, кількість стовпців у W , - кількість базових векторів у підпросторі NMF. І емпірична робота з різними значеннями k рівнозначна роботі з функціональними просторами, зменшеними розмірністю.kWk


4
Але питання полягало у тому, як вибрати оптимальний ! Чи можете ви надати якусь інформацію про це? k
амеба каже, що повернеться до Моніки

@amoeba Якщо я не перечитав початкове запитання, це "Чи є загальна практика для оцінки числа в NMF?". Оптимальний k вибирається емпірично . Я розширив свою відповідь. kk
Жиль

2
Ваше пояснення факторизації NMF має повний сенс, але початкове питання стосувалося конкретно звичних практик оцінки k. Тепер ви писали, що ви можете вибрати k "емпірично" (добре) ", працюючи з різними підпробілами функції". Я не впевнений, що розумію, що означає "робота з різними підпробілами", чи можете ви розширити це? Як треба з ними працювати ?? Який рецепт обрати k? Про це йдеться в питаннях (принаймні, як я це зрозумів). Буду радий повернути мою низку!
амеба каже, що поверніть Моніку

2
k

1
k
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.