yokotoka
@yokotoka
Python guru

Как разбить текст на предложения?

Есть сплошной поток текста, полученный на выходе системы распознавания речи.

Нужно этот сплошной поток текста автоматически преобразовать в более-менее читаемый вид - с правильной пунктуацией и разделением на предложения, абзацы. Для простоты пока положим, что это нужно только для русского или английского языка.

Какие существуют алгоритмы, подходы, библиотеки, наработки, литература, где подобная задача или её части уже решены?
  • Вопрос задан
  • 829 просмотров
Пригласить эксперта
Ответы на вопрос 4
demon416nds
@demon416nds
Разработчик на чем попало
в таком виде задачка скорее всего решается нейросетями после долгого обучения
но имхо грубо разметить если есть сопоставление звука и текста можно по паузам
Ответ написан
2ord
@2ord
продвинутый чайник
Я думаю, что программа должна уметь:
  1. определять небольшие паузы в речи для возможности разделения речи на предложения
  2. понимать части речи
  3. определять какие части речи сочетаются с другими, чтобы не разбивать там где не нужно
  4. определять вопросительные предложения по интонации
  5. определять по каким правилам расставляются знаки препинания

А об абзацах можно лишь мечтать. Вот почему: Как делать разбивку текста на абзацы?
Ответ написан
mindtester
@mindtester
https://youtu.be/UtO6HIp1908?list=RDUtO6HIp1908
прогресс ИТ в этой области растет, и довольно быстро, особенно последнее время

но запрошенная вами планка, все еще достаточно высока.. по крайней мере для домашнего пользователя

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

если конечно не наговаривать монотонно большие объемы текстов.. вы ни в каком месте не лукавите?

попробуйте api от MS тут человек делится опытом
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
В 2 этапа:
1. На основе аудио-потока
2. На основе смысла текста и грамматики

1 Этап:
1. Запятая - прыжки высот тона (снизу вверх или наоборот) без изменения громкости или короткая пауза.
2. Точки или тире - длинная пауза.
3. Вопросительная или восклицательная интонация - резкое повышение громкости с дальнейшей паузой. Распознавание интонации - только обученная НС (здесь без НС - уже не получится).

2-й этап:
1. Выявление нужных частей речи (и их цепочек) и формирование секций предложения: сложно-сочиненные/подчинённые, причастный/деепричастный оборот и т.д.
2. Согласование с правилами языка и исправление ошибок пунктуации.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы