Я пытаюсь использовать knn в R (использовал несколько пакетов(knnflex
, class
)) для предсказания вероятности дефолта на основе 8 переменных. Набор данных составляет около 100 тысяч строк по 8 столбцов, но моя машина, похоже, испытывает трудности с выборкой в 10 тысяч строк. Есть ли какие-нибудь предложения по работе с knn на наборе данных > 50 строк (т.е. iris
)?
EDIT:
Для уточнения есть пара проблем.
1) Примеры в пакетах class
и knnflex
немного неясны, и мне было интересно, есть ли какая-то реализация, похожая на пакет randomForest, где вы даете ему переменную, которую хотите предсказать, и данные, которые хотите использовать для обучения модели:
RF <- randomForest(x, y, ntree, type,...)
затем разворачиваетесь и используете модель для прогнозирования данных, используя тестовый набор данных:
pred <- predict(RF, testData)
2) Я не очень понимаю, почему knn
хочет получить обучающие и тестовые данные для построения модели. Насколько я могу судить, пакет создает матрицу ~ до nrows(trainingData)^2
, что также кажется верхним пределом размера предсказанных данных. Я создал модель, используя 5000 строк (выше этого # я получал ошибки распределения памяти) и не смог предсказать тестовые наборы > 5000 строк. Таким образом, мне нужно либо:
a) найти способ использовать > 5000 строк в тренировочном наборе
либо
b) найти способ использовать модель на полных 100 тыс. строк.