Понимание того, как использовать nnet в R

Это моя первая попытка использовать парадигму машинного обучения в R. Я использую набор данных о планетах (url: https://www.kaggle.com/mrisdal/open-exoplanet-catalogue), и я просто хочу предсказать размер планеты на основе размера ее Солнца. Это код, который у меня сейчас есть, используя nnet():

library(nnet)
#Organize data:
cols_to_keep = c(1,4,21)
full_data <- na.omit(read.csv('Planet_Data.csv')[, cols_to_keep])

#Split data:
train_data <- full_data[sample(nrow(full_data), round(nrow(full_data)/2)),]
rownames(train_data) <- 1:nrow(train_data)
test_data <- full_data[!rownames(full_data) %in% rownames(data1),]
rownames(test_data) <- 1:nrow(test_data)

#nnet
nnet_attempt <- nnet(RadiusJpt~HostStarRadiusSlrRad, data=train_data, size=0, linout=TRUE, skip=TRUE, maxNWts=10000, trace=FALSE, maxit=1000, decay=.001)

nnet_newdata <- predict(nnet_attempt, newdata=test_data)
nnet_newdata

Когда я печатаю nnet_newdata, я получаю значение для каждой строки в своих данных, но я действительно не понимаю, что означают эти значения. Является ли это правильным способом использования пакета nnet() для прогнозирования простой регрессии?

Спасибо


person djl    schedule 24.01.2017    source источник


Ответы (1)


Когда predict вызывается для объекта с классом nnet, вы по умолчанию получаете необработанные выходные данные из модели nnet, примененной к вашему новому набору данных. Если вместо этого у вас проблема с классификацией, вы можете использовать type = "class".

См. здесь.

person conrad-mac    schedule 24.01.2017