Какой инструмент в spaCy использовать для распознавания названия компании по символу тикера? - PullRequest
1 голос
/ 07 июня 2019

Я пытаюсь провести анализ настроений в финансовых новостях, и я хочу иметь возможность узнавать компании по символу тикера. Например. признать Spotify от SPOT. Конечная цель заключается в создании моделей настроений каждой компании. spaCy довольно хорошо умеет распознавать именованные сущности из коробки, но при сравнении символа тикера и компании его не хватает. У меня есть список символов тикера и названия компаний (из NASDAQ, NYSE, AMEX) в формате CSV.

Основываясь на использовании функции Similarity () в spaCy, результаты пока не очень хорошие. В приведенной ниже таблице показан пример нескольких компаний, у которых низкий показатель сходства, хотя названия выглядят одинаково. Я хочу обучить модель, используя список названий компаний / тикеров, и получить более высокий показатель сходства после этого процесса обучения.

+------------+-------------------------+------------+
|   Stock    |          Name           | Similarity |
+------------+-------------------------+------------+
| CSPI stock | CSP Inc.                | 0.072      |
| CHGG stock | Chegg, Inc.             | 0.071      |
| QADA stock | QAD Inc.                | 0.065      |
| SPOT stock | Spotify Technology S.A. | 0.064      |
+------------+-------------------------+------------+

На основании документации spaCy некоторые инструменты включают использование PhraseMatcher , EntityRuler , Соответствие на основе правил , Token Matcher. Какой из них больше всего подходит для этого варианта использования?

1 Ответ

0 голосов
/ 09 июня 2019

Вы можете обучать модели sense2vec, а затем использовать их вместе с spaCy.Они хорошо идут рука об руку.https://github.com/explosion/sense2vec

sense2vec поможет вам определить, что SPOT похож на Spotify в контексте.

...