Leave a comment

Comments 12

vdggenerator September 25 2024, 06:23:26 UTC

Интересно, а совместимы ли идеи градиентного спуска и адаптивного переписывания строк?

Reply

thesz September 25 2024, 06:36:51 UTC
Правила же у нас текст, или могут быть представлены текстом. Или графом. Тексту (или графу) можно назначить "вложение," embedding - вектор "смысла," - вычислив или просто присвоив.

Вот мы и попали в область векторов, функций потерь и прочего, где можно пользоваться градиентом. ;)

Reply

vdggenerator September 25 2024, 07:09:49 UTC

Если правила переписывания строк - это искомая модель для сжатия входного текста, представимая в виде векторов через эмбеддинги, а потери - это размер сжатого входного текста, то я себе представляю как-то так. На каждой итерации градиентного спуска будем сжимать очередную порцию входного текста с помощью вычисленных правил, считать потери и обновлять вектора правил. Но, я не совсем понимаю, как из векторов однозначно восстановить сами правила.

PS: всё это вызвало у меня ассоциации с конкурсом NNCP https://bellard.org/nncp/

Reply

thesz September 25 2024, 09:03:10 UTC
Задача сжатия NP-сложная (NP-hard), поскольку это оптимизация, для её решения надо решить несколько NP-полных (NP-complete) задач. В таких вещах градиентный спуск может быть полезен, ибо он позволяет не то, чтобы обойти, но спрямить поиск решения.

Поэтому переписывание должно быть дискретным (правила запоминаем), а поиск подходящего правила может быть мягким (например, несколько ближайших-по-смыслу правил).

Да, с nncp я знаком. ;)

У его автора интересное понимание термина "практический" в словосочетании "практический метод сжатия с помощью нейросетей." ;)

Reply


Leave a comment

Up