учитывая, что в данным случае код написан в одном файлике, и проект носит исключительно демонстрационный характер, то я считаю, что данным правилом можно пренебречь, чтобы не усложнять материал самого туторила.
А так, я согласна с вами полностью ибо на с++ ещё на первом курсе увидела, чем могут быть опасны глобальные переменные :D
LinearSVC используется для получения класса с лучшим совпадением (давал лучший результат, но нет возможности из него получать значение вероятности для сравнения)
Поэтому, собственно, я решила попробовать использовать LogisticRegression для получения вероятности и обучить на тех же данных
На самом деле можно обойтись только LogisticRegression или вообще что-то другое попробовать, в том числе использовать другой Vectorizer
Я планирую еще поэкспериментировать с этим в ближайшие выходные, и, скорее всего обновлю в статье кусочек кода и на GitHub в проекте
Пишем голосового ассистента на Python