Size: a a a

Natural Language Processing

2020 March 01

AC

Alexander C in Natural Language Processing
А как такое делается? Ну то есть забудем про вирусы. Просто есть набор строк (рнк) . А мы хотим построить подобное дерево. Какие методы? Пакеты?
источник

AC

Alexander C in Natural Language Processing
Как такое смотрится с тз NLP ?
источник

IS

I Sh in Natural Language Processing
Alexander C
Как такое смотрится с тз NLP ?
Обрабатываются именно как строки и ДНК, и РНК и другие молекулы (белки, например). Но для ДНК и РНК в основном применяют стат-методы, а вот, например, для создания новых белков - можно применять и языковые модели. Например, в прошлом году была статья про применение BERT'а для предсказания третичной структуры белка.

Но тут есть одно "но": просто так Трансформеры для формирования новых молекул не всегда можно применять - последовательность атомов правильно предсказывается (последовательность "букв"), а пространственная структура молекулы - некорректна. Для корректировки химики применяют постобработку - специальные алгоритмы обработки уже сформированного Трансформером "текста" молекулы.
источник

IS

I Sh in Natural Language Processing
И для определения таксономии берут не всю ДНК или РНК, а лишь определённые куски - маркерные гены. Их сравнивают с такими же участками из баз данных - они в открытом доступе.
источник

AC

Alexander C in Natural Language Processing
источник

AC

Alexander C in Natural Language Processing
источник

AC

Alexander C in Natural Language Processing
источник

AC

Alexander C in Natural Language Processing
I Sh
Обрабатываются именно как строки и ДНК, и РНК и другие молекулы (белки, например). Но для ДНК и РНК в основном применяют стат-методы, а вот, например, для создания новых белков - можно применять и языковые модели. Например, в прошлом году была статья про применение BERT'а для предсказания третичной структуры белка.

Но тут есть одно "но": просто так Трансформеры для формирования новых молекул не всегда можно применять - последовательность атомов правильно предсказывается (последовательность "букв"), а пространственная структура молекулы - некорректна. Для корректировки химики применяют постобработку - специальные алгоритмы обработки уже сформированного Трансформером "текста" молекулы.
А скинь ссылку на эту статейку.
источник
2020 March 02

YB

Yuri Baburov in Natural Language Processing
@cointegrated давай сожмём твоей библиотекой https://github.com/avidale/compress-fasttext вектора от @snakers41 на 10 гб : https://t.me/snakers4/2175
наверное, раз в 10-20. что надо делать для этого? какие опции лучше включить?
источник

YB

Yuri Baburov in Natural Language Processing
Yuri Baburov
@cointegrated давай сожмём твоей библиотекой https://github.com/avidale/compress-fasttext вектора от @snakers41 на 10 гб : https://t.me/snakers4/2175
наверное, раз в 10-20. что надо делать для этого? какие опции лучше включить?
т.к. проблема с векторами из rusvectores — это вектора по леммам.
источник

D(

David (ddale) Dale in Natural Language Processing
Yuri Baburov
@cointegrated давай сожмём твоей библиотекой https://github.com/avidale/compress-fasttext вектора от @snakers41 на 10 гб : https://t.me/snakers4/2175
наверное, раз в 10-20. что надо делать для этого? какие опции лучше включить?
А насколько сильно хочется пожать?
Если хочется получить несколько десятков мб, то можно использовать дефолтное compress_fasttext.prune_ft_freq(big_model, pq=True)
Если хочется модель побольше и поточнее, ставь compress_fasttext.prune_ft_freq(big_model, pq=True, new_vocab_size=100_000, new_ngrams_size=400_000, qdim=300)
Ну и параметры new_vocab_size и new_ngrams_size можно пробовать увеличивать ещё больше.
источник

YB

Yuri Baburov in Natural Language Processing
David (ddale) Dale
А насколько сильно хочется пожать?
Если хочется получить несколько десятков мб, то можно использовать дефолтное compress_fasttext.prune_ft_freq(big_model, pq=True)
Если хочется модель побольше и поточнее, ставь compress_fasttext.prune_ft_freq(big_model, pq=True, new_vocab_size=100_000, new_ngrams_size=400_000, qdim=300)
Ну и параметры new_vocab_size и new_ngrams_size можно пробовать увеличивать ещё больше.
было: 10 гб
хочется: 500 мб
источник

YB

Yuri Baburov in Natural Language Processing
явно самому считать, 500e6/300 * 0.2 и * 0.8 ?
источник

D(

David (ddale) Dale in Natural Language Processing
Yuri Baburov
было: 10 гб
хочется: 500 мб
Бери тогда второй вариант, откручивай new_vocab_size и new_ngrams_size до максимума (текущие значения); тогда модель сожмется только за счет квантизации и выкидывания неиспользуемых n-грамм.
Если в 500 мб не уложишься, то уменьшай их в одном темпе.
источник

YB

Yuri Baburov in Natural Language Processing
ну, я вроде бы сразу точно посчитал, сколько надо, для определённого размера финальной модели :)
источник

YB

Yuri Baburov in Natural Language Processing
ок, сейчас попробую
источник

YB

Yuri Baburov in Natural Language Processing
спасибо
источник

D(

David (ddale) Dale in Natural Language Processing
Yuri Baburov
ну, я вроде бы сразу точно посчитал, сколько надо, для определённого размера финальной модели :)
Нет, не точно, т.к. prune_ft_freq выкидывает n-граммы, не использованные ни разу, и заготовки для эмбеддингов слов.
источник

YB

Yuri Baburov in Natural Language Processing
David (ddale) Dale
Бери тогда второй вариант, откручивай new_vocab_size и new_ngrams_size до максимума (текущие значения); тогда модель сожмется только за счет квантизации и выкидывания неиспользуемых n-грамм.
Если в 500 мб не уложишься, то уменьшай их в одном темпе.
а как можно узнать текущее количество vocab и ngrams? искать, как это в keyedvectors делается?
источник

D(

David (ddale) Dale in Natural Language Processing
Yuri Baburov
а как можно узнать текущее количество vocab и ngrams? искать, как это в keyedvectors делается?
model.vectors.shape[0], model.vectors_ngrams.shape[0], как-то так
источник