Искра в Панд - PullRequest
       29

Искра в Панд

0 голосов
/ 17 декабря 2018

У меня 220 ГБ данных.Я прочитал его в искровой dataframe в виде 2 столбцов: JournalID и Text.Теперь у меня есть 27 строк в моем фрейме данных.

С классом NGram я добавил еще два столбца Unigram и Bigram в датафрейме, содержащие униграммы и биграммы, присутствующие в столбце Text.Затем я вычисляю TFIDF, используя классы pF и TF IDF для столбцов unigram и bigram, и добавляю его как еще один столбец в dataframe.

Теперь у меня есть journalID и вектор TFIDF для каждой строки в dataframe.Я хочу применить SVM со всеми типами ядер с вектором TFIDF в качестве функции и JournalID в качестве метки.Поскольку SVM отсутствует в пакете ML pyspark, мне придется использовать SVM-реализацию Sklearn.Теперь, что будет лучшим способом продолжить Фуртур.Должен ли я преобразовать этот большой Dataframe в pandas dataframe, а затем применить алгоритмы sklearn к столбцам pandas dataframe, или есть какой-то лучший способ.

1 Ответ

0 голосов
/ 17 декабря 2018

Для изучения SVM вам не нужно передавать все данные в классификатор.Следовательно, вы можете сэмплировать данные (1М строк) только с необходимыми столбцами (например, вам не нужен необработанный текст), а затем преобразовать данные примера в кадр данных pandas.

Если вы хотите обучить вашу модельпо всем данным вы можете загрузить порцию ваших данных, размер которой соответствует вашему объему оперативной памяти, и каждый раз изучать каждую порцию ваших данных в модели.Другими словами, загружайте для обучения и выгружайте после обучения каждый блок, чтобы избежать проблемы загрузки всех данных в оперативную память для анализа.

...