Аннотация
ВВЕДЕНИЕ 3
1 Актуальность и анализ требований 4
1.1 Требования 4
1.2 Актуальность 4
2 Технологии 6
2.1 Программные средства 6
2.2 Предметная область 7
3 Данные 13
3.1 Набор данных 13
3.2 Подготовка данных 14
4 Распознавание именованных сущностей 17
4.1 Алгоритм выделения компаний в тексте 17
4.2 Решение задачи NER с помощью нейронных сетей 19
4.3 XLM-RoBERTa-large 25
5 Анализ тональности 30
5.1 CatBoostClassifier 30
5.2 Сравнение моделей для анализа тональности 35
ЗАКЛЮЧЕНИЕ 40
ЛИТЕРАТУРА 41
В последние годы Telegram стал одним из самых популярных мессенджеров для общения и распространения информации. Особую популярность получили Telegram-каналы, посвященные инвестициям и изменениям на рынке акций и фондовых биржах. Такие каналы предоставляют инвесторам и трейдерам ценную информацию, например, новости рынка, советы по инвестированию и анализ изменений цен на акции.
Анализ тональности постов в таких каналах может быть полезен для предсказания изменений настроений на рынке акций, так как отношение инвесторов к разным компаниям может отражать их ожидания в финансовом плане. Это поможет трейдерам принимать более обдуманные решения, предсказывать рыночные тенденции и получать конкурентное преимущество на рынке.
Однако существует сложность в решении это й задачи. В одном сообщении могут упоминаться несколько компаний, а отзывы к ним могут быть как положительными, так и отрицательными. Иногда в посте может вообще отсутствовать упоминание компании.
Для решения этой проблемы необходимо разработать систему, способную анализировать тональность текста относительно каждой конкретной упомянутой компании. Для этого можно использовать методы машинного обучения, которые позволять классифицировать отзывы к разным компаниям и выявлять общие тенденции на рынке. Такой подход поможет инвесторам быть более информированными и принимать обоснованные решения при инвестировании.
В процессе анализа предметной области были выявлены причины, по которым проделываемую работу можно считать актуальной.
В ходе работы были рассмотрены разные варианты выполнения поставленных задач, разобраны алгоритмы и архитектуры моделей машинного обучения, необходимые для разработки интеллектуальной системы.
В результате данной работы были собраны необходимые требования для достижения цели, и была создана система, способная в посте из Telegram-канала выделить названия компаний и определить эмоциональную окраску текста относительно них.
В ходе выполнения выпускной квалификационной работы были выполнены следующие задачи:
1. Сформировать требования к разрабатываемой системе;
2. Определить программные средства, необходимые для разработки;
3. Выполнить поиск набора данных, подходящего под требования;
4. Подготовить данные;
5. Выделить в тексте названия нужных компаний;
6. Разметить текст;
7. Дообучить или взять готовую модель для определения сущностей в тексте;
8. Создать и обучить модель для анализа тональности;
9. Провести тесты системы.