2015-07-28 20 views
6

Bu hataya sahip başka kişileri daha önce görmüştüm, ancak tatmin edici bir yanıt bulamadım. Kimsenin benim sorunumla ilgili bazı anlayışlar sunabilir mi?Caret Nöral Ağ Hatası: "Yeniden örneklenen performans ölçütlerindeki eksik değerler"

Hammer.Price'u tahmin etmek için model oluşturmaya çalıştığım bazı araba açık artırma verilerine sahibim.

> str(myTrain) 
'data.frame': 34375 obs. of 9 variables: 
$ Grade   : int 4 4 4 4 2 3 4 3 3 4 ... 
$ Mileage  : num 150850 113961 71834 57770 43161 ... 
$ Hammer.Price : num 750 450 1600 4650 4800 ... 
$ New.Price  : num 15051 13795 15051 14475 14475 ... 
$ Year.Introduced: int 1996 1996 1996 1996 1996 1996 1996 1996 1996 1996 ... 
$ Engine.Size : num 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 1.6 ... 
$ Doors   : int 3 3 3 3 3 3 3 3 3 3 ... 
$ Age   : int 3771 4775 3802 2402 2463 3528 3315 3193 4075 4988 ... 
$ Days.from.Sale : int 1778 1890 2183 1939 1876 1477 1526 1812 1813 1472 ... 

myTrain ben modeli tren, rasgele 70 veri ve% myTest diğer% 30 ihtiva eden bu aşağıdaki uyarıyı sonuçlanır

myModel <- train(Hammer.Price ~ ., data = myTrain, method = "nnet") 

:

Warning message: In nominalTrainWorkflow(x = x, y = y, wts = weights, info = trainInfo, : There were missing values in resampled performance measures.

I Tüm sonuçların eşit olduğunu tahmin etmeye çalışın.

myTestPred <- predict(myModel, myTest) 

Daha önce bu verileri SPSS Modelleyicisi kullanarak MLP sinir ağını eğitmek için kullandım, ancak sonuçları R içinde yeniden oluşturabiliyor gibi görünmüyorum. Diğer sinir ağları paketlerini denedim ama her zaman aynı şekilde sonuç.

Bunu benden daha iyi anlayan var mı?

cevap

3

train numaralı telefonu aramadan önce verileri ölçeklendirirseniz sorunu düzeltir mi? Eğer modeli çalıştırmadan önce tüm değişkenleri ölçeklemezseniz glmnet ve nnet ile bu problemi yaşadım. Ayrıca tüm değişkenlerinizi sayısallaştırırsanız (anekdot olarak) yardımcı olur. Yeniden örneklemenizi açık yapmayı deneyebilirsiniz. Örn. Sonra

myControl <- trainControl(method = "repeatedcv", repeats=5, number = 10) 

kullanarak ve train bu geçen:

myModel <- train(Hammer.Price ~ ., 
    data = myTrain, 
    method = "nnet", 
    trControl = mycontrol) 

verilerine olmadan üzgünüm, hatayı fark etmek bazen zordur.

+1

Yanıt için teşekkürler. Ne yazık ki bu şeylerden hiçbiri yardım etmedi. Brnn paketinin veri kümesi için çalıştığını buldum ama neden emin değilim. –

0

Hedef değişkeniniz Hammer.Price sayısal bir değişkendir. nnet işlevinin yardım sayfasından, nnet'daki varsayılanın bir lojistik hedef değişkeni olduğunu göreceksiniz. Böylece, sayısal hedef değişkeni modelleme yaparken, nnet 'u anlatıyorsunuz. linout parametresi, ihtiyacınız olan parametredir. linout = TRUE ayarlanarak uyarı mesajını tekrar almamalısınız.