2016-08-10 3 views
3

Я работаю над умеренным набором данных (train_data). Есть более 124 переменных и 50 000 000 наблюдений. Для категориальных переменных, я использовал функцию хэширования на ней через функцию hashed.model.matrix в R.Как использовать хешированную матрицу H2o в R

## feature hashing 
b <- 2^22 
f <- ~ .-1 
X_train <- hashed.model.matrix(f, train_data, hash.size=b) 

Таким образом, в результате, у меня большой dgCmatrix (разреженная матрица) в качестве выходного (X_train) , Как я могу использовать оболочку H2o на этой матрице и использовать различные алгоритмы, доступные в H2o? Оболочка H2o принимает разреженную матрицу (dgCmatrix). Любая ссылка/пример такого использования будет полезна. Спасибо в ожидании.

Глядя вперед, чтобы импортировать X_train в среде H2o сделать тип dollowing шагов

# initialize connection to H2O server 
    h2o.init(nthreads = -1) 
train.hex <- h2o.uploadFile('./X_train', destination_frame='train') 

# list of features for training 
feature.names <- names(train.hex) 

# train random forest model, use ntrees = 500 
drf <- h2o.randomForest(x=feature.names, y='outcome', training_frame,train.hex, ntrees =500) 

ответ

2

вы могли бы сохранить разреженную матрицу в svmlight разреженный формат, а затем использовать

train.hex <- h2o.uploadFile('./X_train', parse_type = "SVMLight", destination_frame='train') 

svmlight редкий формат также будет обнаружен h2o.importFile(), который является параллельным считывателем и извлекает информацию с сервера из местоположения, указанного клиентом.

train.hex <- h2o.importFile('./X_train', destination_frame='train') 
+0

Знаете ли вы, что вы хотите сохранить в svmlight-формате? –

+0

да второй пример должен был сказать h2o.importFile, спасибо, что поймали это. Я отредактирую его. – Lauren