Как выполнить подвыборку набора данных

Я собираюсь реализовать svm (машины опорных векторов) и различные другие алгоритмы классификации. Но мой набор данных поезда имеет размер 10 ГБ. Как я могу сделать подвыборку? Это очень простой вопрос, но я новичок.

Спасибо за помощь


person Saurabh Saxena    schedule 03.12.2014    source источник


Ответы (2)


Первое, что вы должны сделать, это уменьшить количество выборок (строк). LibSVM предоставляет для этого очень полезный скрипт Python. Если в вашем наборе данных есть N выборок, и вы хотите уменьшить его выборку до N-K выборок, вы можете использовать вышеупомянутый скрипт для: (1) случайного удаления K выборок из ваших данных; (2) удалить K выборок из ваших данных, используя стратифицированную выборку. Рекомендуется последний.

Гораздо сложнее уменьшить количество признаков (столбцов). Вы не можете (не должны) удалять их случайным образом. Для этого существует множество алгоритмов, которые обычно называют алгоритмами сокращения данных. Наиболее часто используется PCA. Но это не так просто использовать.

person Daniel Moraes    schedule 03.12.2014

Это зависит от ваших данных.

Поскольку вы работаете над вопросом базового уровня, я полагаю, что лучше всего начать с значительного сокращения размера выборки. Как только это будет сделано, уменьшите количество функций до назначенного размера.

Как только набор данных станет небольшим и достаточно простым, вы можете подумать о добавлении дополнительных атрибутов или выборок, которые подходят для рассматриваемой проблемы.

Надеюсь это поможет!

person Matthew Spencer    schedule 03.12.2014