Как стать автором
Обновить
28
0
Понимаш Захар Алексеевич @Zachar_5

Программист

Отправить сообщение

Здравствуйте! .

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

Чтобы Ваш метод заработал, нужно обучить сиамскую сеть, для поиска соответствия вопрос - сниппет. И в выборке должны быть сниппеты разной длинны.

"А что вообще тогда у вас есть готового? Только идея?" есть готовый алгоритм синтеза ответа на вопрос по документу, в статье приведены скриншоты его работы. Сейчас работаем над его улучшением.

Предложенный Вами метод решает немного другую задачу, он решает задачу поиска сниппета, отвечающего на вопрос пользователя, у нас задача несколько сложнее, а именно, преобразование графа документа в граф ответа. Можете посмотреть на скриншоты, ответы создаются фактологические и читаемые.

По датасету, я могу проверить вхождение словосочетаний из датасета в ответ и написать сюда точность. Но это не совсем корректно, т.к. датасет, на котором Вы предложили тестировать, для другой задачи, т.е. когда текст достаточно короткий, а нужно найти ответ из нескольких слов. Это обычно решается бертом с классификатором, который классифицирует каждый токен является ли он началом или концом ответа, после чего извлекают топ n ответов.

Квантование и дистилляция

Для этого метода нужно обучить сеть, если будем так делать - напишу.

"Кто ни будь пробовал обучать одни у туже сеть несколько раз на одних и тех же данных каждый раз ограничивая минимальный размет токенов? Т.е. в начале размер токена - минимум 1 буква, второй проход минимум 2 слово, 3й проход минимум 3-4 слова. т.о. сеть будет видеть не только деревья, но и лес."

Это как?)
Когда учат GPT, то подают блок токенов, например 512 токенов и учат предсказывать 513-й, во время работы сеть выдает распределение вероятностей токенов продолжения в ответ на некую входящую последовательность. Из этого набора различными методами (ядерного семплирования, поиска луча и т.п.) выдается следующий токен и так продолжается или заданное число раз, либо пока не встретится спец. токен окончания генерации.

Спасибо большое за ответ! Почитаю!

Здравтствуйте!

А можно где-нибудь по подробнее почитать про использование LSTM. Т.к. как я сейчас понимаю Вашу работу, вы размечаете части запроса подсказками, а потом помещаете теги подсказок в словарь и создаете случайные вектора встраивания, потом считаете градиенты по всей gpt, но обновляете веса только у Ваших новых тегов. И тут я не совсем понимаю, где используется LSTM, т.к. градиенты приходят с трансформеров.

По сравнению с найденными пред. обученными моделями Bert
1) Наше решение занимает меньше места в GPU
2) Быстрее работает
3) Из-за того, что мы работаем с не очень длинными последовательностями, мы получаем хороший результат.

"Что здесь вектор, что здесь индекс?"
Тут используются т.н. эмбеддинги (слои встраивания). Вот документация на слой https://keras.io/api/layers/core_layers/embedding . Т.е. как они работают, например у нас есть предложение "Привет, как дела?", на этапе токенизации мы получим что-то вроде [10, 50, 21], потом дополняем нулями, например, максимальная длинна у нас 5, [10, 50, 21, 0, 0]. Далее слой встраивания каждому индексу в соответствие ставит вектор(при обратном проходе вектора тоже учатся), предположим, размерностью 10. И каждое предложение преобразуется в матрицу 5х10. Далее по этой матрице можно проходить одномерными свертками или LSTM сетями и т.п..

"токенизируем и прогоняем весь предыдущий текст диалога?" Да + можно разделить вопросы и ответы дополнительными токенами.

"А просто перплексию фразы на языковой модели вы не сравнивали?" нет, нам же нужно получить согласование тем в вопросе и ответе, чтобы выбрать тот ответ, который меньше всего отходит от темы вопроса.

Спасибо, хорошая статья! Возник такой вопрос, а насколько catboost устойчив к появлению слов не из датасета?

Можно перебрать в определенном диапазоне точки и сделать более качественное заполнение, но это долго.
Идея понятна, спасибо!

Современные подходы к визуализации решений классификаторов в основном либо используют диаграммы рассеивания, которые могут отображать лишь проекции исходных обучающих выборок, но явно не показывают фактические границы принятия решений

Я вот немного не понял, почему это не будет работать?
А что нам мешает взять проекцию, например с t-SNE или первых двух главных компонент, и покрасить этот пиксель цветом, присвоенным к определенному классу. Например у нас есть вектор {0.1, -0.5, 2}, к примеру, его проекция будет {0.9, -0.3}, ставим в соответствие пиксель {12, 30}, "прогоняем" это через классификатор получаем, что это класс 7, у нас ему соответствует красный. И так для всего датасета.

Спасибо большое!))
Только сейчас высвободилось время, посмотрел, очень крутая технология.

Спасибо, изучу ее!
Но тут стоит лицензия MIT, которая подразумевает бесплатное использование и в коммерческих проектах тоже, а единственным требованием является указание авторства и копия лицензии, но не обязывает использовать ту же лицензию, в отличии от GPL. Или публиковать производные библиотеки под той же лицензией, как в LGPL. Я тут делал небольшой обзор лицензий, если интересно, можете посмотреть: https://vk.com/@ponimashzahar-licenzii-na-open-source-proekty

Да, на данный момент это Face Swap. Но конечная цель — полноценный DeepFake.

Кстати, что касается использования NN+GPU+C#, есть такие проекты:


Да, Вы правы, сейчас это FaceSwap. В первых 3х статьях я планирую повторить на языке C# этот проект.
Первая нейронная сеть появится в 4-й части, там будет замена лица конкретного человека на видео. Нейросеть будет использоваться для распознавания лиц, до этого момента буду работать с одним лицом.
В 5-й части планирую сделать "оживление" портрета. Т.е. синтезировать мимику по голосу, думаю использовать LSTM, на вход принимать спектрограмму голоса за короткий промежуток времени, на выходе выдавать изменения Landmarks.

Классная библиотека))

Информация

В рейтинге
Не участвует
Откуда
Таганрог, Ростовская обл., Россия
Дата рождения
Зарегистрирован
Активность