Проверить, является предложение вопросом

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

Как эффективнее всего отсеить невопросительные предложения?

На самом деле я ищу что-то вроде nltk.is_question()

Я думал о проверке на наличе вопросительного знака и вопросительных слов в начале, но учитывая, что не все ставят вопросительные знаки в конце предложений, не думаю, что это будет лучший способ. В любом случае, относительно небольшой процент ошибки меня устроит. Спасибо.

P.S. Каждое сообщение представлено вот такой json-записью:

{
   "id": 00,
   "type": "message",
   "date": "2019-00-00T00:00:00",
   "from": "Иван Иваной",
   "from_id": "user000000000",
   "text": "Текст сообщения здесь"
}

Ответы (1 шт):

Автор решения: Kromster

В общем случае, это недостижимо. Даже такое простое предложение как "Это вопрос" нельзя однозначно отнести к той или иной категории. В дополнении, вы не сможете проверить правильности категоризации, т.к. у вас, предполагаю, нет контакта автора сообщения, чтобы у него спросить, что он имел ввиду, вопрос или утверждение.

Может быть у вас есть какие-то еще признаки или мета-признаки?

→ Ссылка