Spark эквивалент Keras Tokenizer? - PullRequest
1 голос
/ 18 июня 2020

Пока что я предварительно обрабатываю текстовые данные, используя numpy и встроенные функции (например, класс токенизатора keras, tf.keras.preprocessing.text.Tokenizer: https://keras.io/api/preprocessing/text/).

И вот где я застрял: поскольку я пытаюсь масштабировать свою модель и набор данных, я экспериментирую с Spark and Spark nlp (https://nlp.johnsnowlabs.com/docs/en/annotators#tokenizer) ... однако, Мне пока не удалось найти аналогичный рабочий токенизатор. Установленный токенизатор должен быть позже доступен для преобразования проверочных / новых данных.

Мой вывод должен представлять каждый токен как уникальное целочисленное значение (начиная с 1), что-то вроде:

[ 10,... ,  64,  555]
[ 1,... , 264,   39]
[ 12,..., 1158, 1770]

В настоящее время , Я смог использовать Spark NLP-tokenizer для получения токенизированных слов:

[okay,..., reason, still, not, get, background] 
[picture,..., expand, fill, whole, excited]                     
[not, worry,..., happy, well, depend, on, situation]

Есть ли у кого-нибудь решение, которое не требует копирования данных из среды Spark?

ОБНОВЛЕНИЕ:

Я создал два CSV, чтобы прояснить мою текущую проблему. Первый файл был создан с помощью конвейера предварительной обработки: 1. cleaned_delim_text

После этого слова с разделителями должны быть «переведены» в целые значения, а последовательность должна быть дополнена нулями, чтобы такая же длина: 2. cleaned_tok_text

1 Ответ

0 голосов
/ 19 июня 2020

Пожалуйста, попробуйте комбинацию ниже -

1. Используйте tokenizer для преобразования операторов в слова, а затем

2. используйте word2ve c для вычисления распределенного векторного представления этих слов

...