sklearn Vectorizer (задача NLP): создание пользовательских NGrams, которые способны масштабироваться для n> = 3 - PullRequest
0 голосов
/ 27 февраля 2019

Я хотел бы создать векторизатор в sklearn, который может масштабироваться для более высоких значений n.Здесь n - количество различных слов, рассматриваемых как один элемент vocab.


Моя идея состоит в том, что для n = 1 и n = 2 мой пользовательский векторизатор остается таким же, как и sklearnвекторизаторами, но для n> = 3 я бы хотел заменить «я хороший», «Гарри сыграет» на «я х хороший» и «Гарри х играть».

Пример: Давайте рассмотрим, что яхочу построить векторизатор, который масштабируется до n = 4. Теперь возьмем пример предложения «Гарри сыграет завтра».

Тогда «Гарри сыграет завтра» может разбиться на: -

Все слова из словарей длиной 1,2, «Harry x play», «will x tommorow» и «Harry xx tommorow».

Поскольку порядок элементов в этом словаре такой же, как и для n = 2,и слова формы «A x B» не будут реже, чем «AB», я считаю, что эта модель может масштабироваться лучше и давать преимущества в производительности.

Я искал в сети, чтобы найти способ сделать этои хотя существует множество учебных пособий по созданию пользовательских векторизаторов, все они в конечном итоге используют thЭто предварительно реализованный метод n-граммы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...