Мой алгоритм RBM для совместной фильтрации не сойдется... Идея того, что я думаю о RBM для совместной фильтрации, заключается в следующем.
начальный w , b , c и случайный в [0,1]
Для данных зажима пользователя -> видимые (softmax)
Скрытый = сигмоид (b+W*V)
Запустить Gibbs на Hidden -> Hidden_gibbs
Положительный = Скрытый * Видимый
Скрытый -> реконструировать -> реконструировать_видимый
Запустите Gibbs на реконструкторе_visible -> реконструируйте_visible_gibbs
отрицательный = Hidden_gibbs*reconstruct_visible_gibbs
Конец для
Обновлять
w = w + (положительное-отрицательное)/Number_User
b = b + (видимый - реконструировать_видимый_гиббс)/Число_Пользователя
c = c + (Hidden - Hidden_gibbs)/Number_User
Я видел много статей или лекций и понятия не имею, где что-то не так.