Size: a a a

Natural Language Processing

2021 March 10

FF

Futorio Franklin in Natural Language Processing
Vladimir R
В математике есть доказательства )
Есть, но изначально вопрос не стоял что-то строго доказывать, а просто поделиться опытом, если вдруг кто-то решал похожую задачу подобным образом
источник

FF

Futorio Franklin in Natural Language Processing
в принципе нет так нет
источник

FF

Futorio Franklin in Natural Language Processing
А если да, то как
источник

VR

Vladimir R in Natural Language Processing
Futorio Franklin
Есть, но изначально вопрос не стоял что-то строго доказывать, а просто поделиться опытом, если вдруг кто-то решал похожую задачу подобным образом
Ясно. Так никто не будет делать, потому, что не может быть положительного результат, т.е. кто не верил теории — убедился в этом на практике, другого быть не может )
источник

VR

Vladimir R in Natural Language Processing
Всю информацию из закономерности модель уже извлекает
источник

VR

Vladimir R in Natural Language Processing
Соотвественно нельзя натренировать модель сверху другой модели, которая будет говорить, когда врет первая
источник

VR

Vladimir R in Natural Language Processing
Только если нет временных последовательностей, например если добавляется параметр время, и ряда ответов во времени..
источник

Е

Егорка in Natural Language Processing
Vladimir R
Соотвественно нельзя натренировать модель сверху другой модели, которая будет говорить, когда врет первая
Если я так выразился, то прошу прощения. Я не имел ввиду что-то дополнительно тренировать. А скорее усреднять результат.
Хотя то, что вы говорите, на мой взгляд, противоречит положительным результатам использования стекинга и других методов композиции.
источник

VR

Vladimir R in Natural Language Processing
Ну так стекинг происходит внутри модели
источник

DD

David Dale in Natural Language Processing
Егорка
Добрый вечер. Не могли бы вы, пожалуйста, подсказать в следующей задаче:
Есть несколько моделей для поиска именованных сущностей (например, только организаций). Есть одни модели с наилучшей прецизиозностью, а другие с наилучшей полнотой.
Отсюда вопрос: можно ли получить лучший результат (F-мера), если каким-то способом ансамблировать две модели (например с наилучшими precision и recall) ? Быть может просто пересечь их результаты.
Есть какие-то исследования, статьи или просто практический опыт по проверке такой методики ?
Мне кажется, сама идея ансамблирования моделей для NER - хорошая.
Другое дело, что эту идею можно декомпозировать на две независимые:
1) Как склеить две модели в одну, потеряв минимум информации?
2) Как настроить модель таким образом, чтобы оптимально сбалансировать precision и recall?

Лично я бы подступился к этой задаче из первых принципов.
Большинство моделей для sequence labeling - вероятностные. Следовательно:
1) ансамблировать модели можно, просто усреднив предсказанные ими вероятности с какими-то весами (веса надо будет подобрать по сетке или выбрать интуитивно)
2) чтобы повлиять на precision/recall полученной модели, надо домножить предсказанные вероятности каждого класса на какие-то константы, отражающие важность ложноположительных и ложноотрицательных срабатываний.

Вот теоретический пост про правильное балансирование предсказаний вероятностного классификатора: http://www.machinelearning.ru/wiki/index.php?title=Байесовский_классификатор
источник

VR

Vladimir R in Natural Language Processing
Т.е. ты получаешь просто модель глубже, но она от этого не станет сразу точнее
источник

FF

Futorio Franklin in Natural Language Processing
Да, нашла коса на камень. Хоть дополнительный трек в Диалоге открывай
источник

VR

Vladimir R in Natural Language Processing
Мне кажется, сама идея ансамблирования моделей для NER - хорошая.
Другое дело, что эту идею можно декомпозировать на две независимые:
1) Как склеить две модели в одну, потеряв минимум информации?
2) Как настроить модель таким образом, чтобы оптимально сбалансировать precision и recall?


Зачем это делать =) у тебя есть dropout он при обучении активирует "подсети" внутри твоей модели, и получается тот же самый ансамбль, только естественным путем, и при этом не нужно думать как складывать информацию из дух моделей - т.к. ответ "как" уже заложен в таком решении в DL.
источник

Е

Егорка in Natural Language Processing
David Dale
Мне кажется, сама идея ансамблирования моделей для NER - хорошая.
Другое дело, что эту идею можно декомпозировать на две независимые:
1) Как склеить две модели в одну, потеряв минимум информации?
2) Как настроить модель таким образом, чтобы оптимально сбалансировать precision и recall?

Лично я бы подступился к этой задаче из первых принципов.
Большинство моделей для sequence labeling - вероятностные. Следовательно:
1) ансамблировать модели можно, просто усреднив предсказанные ими вероятности с какими-то весами (веса надо будет подобрать по сетке или выбрать интуитивно)
2) чтобы повлиять на precision/recall полученной модели, надо домножить предсказанные вероятности каждого класса на какие-то константы, отражающие важность ложноположительных и ложноотрицательных срабатываний.

Вот теоретический пост про правильное балансирование предсказаний вероятностного классификатора: http://www.machinelearning.ru/wiki/index.php?title=Байесовский_классификатор
Спасибо огромное за исчерпывающий ответ
источник

VR

Vladimir R in Natural Language Processing
Егорка
Спасибо огромное за исчерпывающий ответ
@cointegrated ну я же помочь хотел человеку не терять лишнее время на этих бесов =)
источник

DD

David Dale in Natural Language Processing
Vladimir R
Мне кажется, сама идея ансамблирования моделей для NER - хорошая.
Другое дело, что эту идею можно декомпозировать на две независимые:
1) Как склеить две модели в одну, потеряв минимум информации?
2) Как настроить модель таким образом, чтобы оптимально сбалансировать precision и recall?


Зачем это делать =) у тебя есть dropout он при обучении активирует "подсети" внутри твоей модели, и получается тот же самый ансамбль, только естественным путем, и при этом не нужно думать как складывать информацию из дух моделей - т.к. ответ "как" уже заложен в таком решении в DL.
Ансамблировать две нейросетки с одинаковой архитектурой, обученные на одинаковых данных - действительно идея так себе.
Но если две модели обучались на разных датасетах или используют разные фичи или у них сильно разная архитектура, то польза может быть.
источник

DD

David Dale in Natural Language Processing
Vladimir R
@cointegrated ну я же помочь хотел человеку не терять лишнее время на этих бесов =)
Фишка в том, что мы не знаем, в каких условиях автор вопроса находится
источник

VR

Vladimir R in Natural Language Processing
Мудрый человек
источник

DD

David Dale in Natural Language Processing
И допущение, что ты понимаешь, что человеку нужно, лучше, чем он сам - довольно героическое
источник

Е

Егорка in Natural Language Processing
Да, именно так. Я написал, что используются разные модели натренированные на разных датасетах.
источник