Size: a a a

Natural Language Processing

2021 September 07

SS

Shivashis Swain in Natural Language Processing
I need unseen data of 5k, 10k records for test evaluation
источник

SancheZz Мов in Natural Language Processing
источник

SancheZz Мов in Natural Language Processing
You can create own labels
источник

SS

Shivashis Swain in Natural Language Processing
Ok sure let me explore that
источник

SS

Shivashis Swain in Natural Language Processing
Yeah I get that, but how can be done? I don't have any idea
источник

МЕ

Максим Ермаков... in Natural Language Processing
.spacy создаются внутри самого spacy - вы перегоняете ваши текстовые данные в spacy Docs, а их в DocBin, которые .to_disk(output_file) в формате .spacy - https://spacy.io/usage/training#training-data
источник

VG

Vladimir Grigoryev in Natural Language Processing
источник

S

Swara in Natural Language Processing
Can anyone explain what is the meaning of this underline code?! What does idx mean?!
источник

S

Swara in Natural Language Processing
Why is it written sum_words [0,idx]?!
источник

N

Nikolay in Natural Language Processing
Спасибо за помощь. Возможно, задал вопрос некорректно. Я имел ввиду, как автоматизировать процесс создания данных вот такого вида:

training_data = [ ("Tokyo Tower is 333m tall.", [(0, 11, "BUILDING")]), ]

То, есть для обучения определений сущностей, их будет достаточное количество.
источник

МЕ

Максим Ермаков... in Natural Language Processing
В чём именно ваш вопрос? Для Doc можно задавать кастомные сущности, добавляя в Doc.ents размеченные Span'ы, а массив доков можно запихнуть в DocBin и сохранить скопом в один .spacy файл.
источник

N

Nikolay in Natural Language Processing
Как автоматизировать процесс создания вот такого массива training_data с нужными позициями, выделящие сущности в предложении?

training_data = [ ("Tokyo Tower is 333m tall.", [(0, 11, "BUILDING")]), ]

Здесь у нас есть предложение "Tokyo Tower is 333m tall". Далее мы указываем позицию, где находится наша сущность и её классификацию. Кроме как руками, как автоматически определять позицию сущностей из различных примеров?
источник

МЕ

Максим Ермаков... in Natural Language Processing
Если вы делаете именно, как вы написали, training_data, то размечаете руками (например, в labelstudio).
Если у вас есть способ автоматически разметить эти сущности, то зачем вам создавать training_data тогда, если у вас уже есть модель, которая решает эту задачу.
источник

N

Nikolay in Natural Language Processing
У меня еще нет модели, я ее пытаюсь создать. Я как видел ситуацию до: spacy требует файлы своего формата .spacy. чтобы их слепить, нужно привести данные к виду, как с training data выше. Но теперь, благодаря Вам, я понимаю что есть еще какой-то способ создать данные для обучения модели spacy? У меня нет модели, повторюсь. Я пытаюсь ее создать исходя из моих обучающих данных. Обучающие данные лежат просто в виде текста. Не могу определиться, кому и в каком виде их передать.
источник

МЕ

Максим Ермаков... in Natural Language Processing
Файлы .spacy - это просто способ сериализовать кучу Doc'ов и не более. Основная работа со spacy строится на Doc-ах, то есть, как я уже сказал, вы легко можете на своих текстах создать Doc'и, присвоить им разметку ваших сущностей и обучать модель.
источник

МЕ

Максим Ермаков... in Natural Language Processing
Создание своей модели строится на сборке конфига и обучении, вот тут https://spacy.io/usage/training плюс на Youtube-канале spaCy есть туториалы https://www.youtube.com/c/ExplosionAI/videos как собирать пайплайны под разные нужды.
источник

N

Nikolay in Natural Language Processing
Благодарю за помощь, Максим!
источник

IP

Igor Panteleev in Natural Language Processing
Всем привет! Подскажите, может есть какие-то интересные статьи/мнения или сравнения по инструментам для решения задачи NER.

В частности интересны аргументы почему контекстно свободными грамматиками (например, yargy parser'ом) можно добиться результатов не хуже чем нейросетями. Особенно для задач с нетипичными сущностями (например, не имена и адреса, а какие-то бизнес-сущности конкретной компании).

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

Е

Егорка in Natural Language Processing
Вот сравнение, где интересующий  инструмент на основе лингвистических шаблонов - Pullenty
https://github.com/natasha/slovnet#evaluation
источник

Е

Егорка in Natural Language Processing
Я думаю, ваш случай, где шаблоны могут быть лучше моделей глубокого обучения следующий:
Модели обучаются на датасетах в основном конкретной предметной области. При изменении домена анализируемых текстов качество падает. Вы можете это проэксплуатировать, например, написав правила для специфической задачи, для текстов которой нет подходящих моделей.
Но стоит верно рассчитать свои силы: вы точно можете написать анализатор для формальных документов в стиле МФЦ, но писать NER инструмент общего назначения на основе шаблонов самому - задача матёрых лингвистов.
источник