Пунктуация текста - PullRequest
       8

Пунктуация текста

0 голосов
/ 26 октября 2018

Я подумываю об обобщении аудио видео на Youtube с использованием искусственного интеллекта и машинного обучения в качестве хобби-проекта.

Я могу извлечь автоматически сгенерированный текст с субтитрами в виде CLOB, как показано ниже:

Добрый день, коллеги, инвесторы. Я не думаю, что когда-либо упоминал об этом, но я подписан почти на все Bloomberg Wall Street Journal Morningstar и многих других, о которых я не хочу упоминать, чтобы не публиковать их.обнародовать их, потому что большинство не заслуживают моих денег, но все же, если даже если я получу немного оттуда, это хорошо, однако что-то хорошее, что пришло в электронном письме вчера, было, конечно, Wall Street Journal, и я подписан на их ежедневный снимок, который даетмножество слайдов о том, что происходит на рынках экономики и т. д., на которые всегда приятно смотреть ежедневно

Но, как вы видите, в нем вообще нет знаков препинания.Я планирую использовать библиотеку Python NLTK, но Sentence Tokenizer не может разбить текст на более мелкие фрагменты.

Я новичок в NLP (как вы можете догадаться), может кто-нибудь указать мнестатья, предпочтительно руководство, как «акцентировать внимание на куске текста».Я не получаю большой помощи от поиска Google (мой плохой).

Пожалуйста, предложите путь вперед, спасибо.

1 Ответ

0 голосов
/ 26 октября 2018

Нет пакета NLTK / SpaCy, который мог бы напрямую решить вашу задачу.

Я бы предложил использовать один из трех методов глубокого обучения, как упомянуто в этой статье LREC (Che et al., 2016).Вы должны представить свою проблему как задачу классификации, где вы должны предсказать, следует ли за словом в последовательности знак пунктуации.

Сама бумага берет подмножество последовательности, <w(n-m) ... w(n-1), w, w(n+1), ... w(n+m)>, чтобыучитывает контекст, использует их векторы слов и обучается по трем различным моделям, каждая из которых имеет 2, 3 или 4 выходных класса (O: без знаков препинания, PERIOD: точки, точки с запятой, восклицательные знаки, COMMA: запятые, тире и двоеточия, QUESTION MARK: q знаков).

Первая модель использует простой DNN, вторая - CNN, а третья - это вариант CNN во второй модели.Если вы решите использовать только периоды (сокращая количество классов), простая модель DNN, как сообщается, обеспечивает F1 баллы ~ 60%.

Что касается кода, вы можете запросить авторов.Или, так как вы хотите заняться этим как хобби, вы можете реализовать это с нуля самостоятельно.

...