На полученном SPU можно сэмплить из 8-мерного Гауссового...
На полученном SPU можно сэмплить из 8-мерного Гауссового распределения. Другой полезный примитив -- обращение матрицы. Математика процесса была описана в другой вышеупомянутой работе (https://arxiv.org/abs/2308.05660). Для этого элементы матрицы переводятся в связи системы осцилляторов, и после прихода системы в термодинамическое равновесие снимаются значения напряжений (много сэмплов) и считается ковариационная матрица, которая в свою очередь пропорциональна обратной матрице, которую и надо найти.
Сначала на SPU инвертировали матрицу 4x4, для этого потребовалось лишь подмножество ячеек. Чем больше сэмплов, тем ниже ошибка, но совсем до нуля она не доходит (несовершенство эксперимента). Затем инвертировали матрицу 8x8. Сделали это на трёх независимых SPU и показали, что они дают близкие результаты, то есть процесс воспроизводим.
Также на SPU реализовали Gaussian process regression и Uncertainty quantification через spectral-normalized neural Gaussian processes для предсказания классов нейросетью. Результаты SPU хорошо согласуются с результатами, посчитанными на цифровом компьютере.
Авторы ожидают, что на большом масштабе у SPU будут преимущества перед классическим железом. Для этого сравнили SPU с GPU RTX A6000 на задаче сэмплинга из многомерного Гауссового распределения. На большом количестве измерений SPU ведёт себя лучше классических методов на GPU. Точка пересечения двух кривых (так называемый “thermodynamic advantage”) находится в районе 3000 измерений. В целом асимптотика для SPU оценивается как O(d^2), а для Cholesky sampling на GPU это O(d^3). С точки зрения потребляемой энергии SPU тоже лучше.
Короче, интересное направление. Область сейчас находится в своём младенчестве, можно приложиться к нахождению новых интересных алгоритмов под новое железо, как в своё время было с алгоритмами для квантовых компьютеров. До обучения нейросетей на таком новом железе пока далековато, но кто знает, как быстро мы туда сможем прийти.
Сначала на SPU инвертировали матрицу 4x4, для этого потребовалось лишь подмножество ячеек. Чем больше сэмплов, тем ниже ошибка, но совсем до нуля она не доходит (несовершенство эксперимента). Затем инвертировали матрицу 8x8. Сделали это на трёх независимых SPU и показали, что они дают близкие результаты, то есть процесс воспроизводим.
Также на SPU реализовали Gaussian process regression и Uncertainty quantification через spectral-normalized neural Gaussian processes для предсказания классов нейросетью. Результаты SPU хорошо согласуются с результатами, посчитанными на цифровом компьютере.
Авторы ожидают, что на большом масштабе у SPU будут преимущества перед классическим железом. Для этого сравнили SPU с GPU RTX A6000 на задаче сэмплинга из многомерного Гауссового распределения. На большом количестве измерений SPU ведёт себя лучше классических методов на GPU. Точка пересечения двух кривых (так называемый “thermodynamic advantage”) находится в районе 3000 измерений. В целом асимптотика для SPU оценивается как O(d^2), а для Cholesky sampling на GPU это O(d^3). С точки зрения потребляемой энергии SPU тоже лучше.
Короче, интересное направление. Область сейчас находится в своём младенчестве, можно приложиться к нахождению новых интересных алгоритмов под новое железо, как в своё время было с алгоритмами для квантовых компьютеров. До обучения нейросетей на таком новом железе пока далековато, но кто знает, как быстро мы туда сможем прийти.
Источник: gonzo-обзоры ML статей
2024-02-07 23:18:17