Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik: Sql Server 2016 (13.x) és újabb verziók
felügyelt Azure SQL-példány
A négyrészes oktatóanyag-sorozat harmadik részében betanítunk egy prediktív modellt az R-ben. A sorozat következő részében ezt a modellt egy SQL Server-adatbázisban fogja üzembe helyezni a Machine Learning Services vagy a Big Data-fürtök használatával.
A négyrészes oktatóanyag-sorozat harmadik részében betanítunk egy prediktív modellt az R-ben. A sorozat következő részében ezt a modellt egy SQL Server-adatbázisban fogja üzembe helyezni a Machine Learning Services használatával.
A négyrészes oktatóanyag-sorozat harmadik részében betanítunk egy prediktív modellt az R-ben. A sorozat következő részében ezt a modellt egy SQL Server R Services-szolgáltatással rendelkező adatbázisban fogja üzembe helyezni.
A négyrészes oktatóanyag-sorozat harmadik részében betanítunk egy prediktív modellt az R-ben. A sorozat következő részében ezt a modellt egy Felügyelt Azure SQL-példány-adatbázisban fogja üzembe helyezni a Machine Learning Services használatával.
Ebben a cikkben megtudhatja, hogyan:
- Két gépi tanulási modell betanítása
- Előrejelzések készítése mindkét modellből
- Az eredmények összehasonlítása a legpontosabb modell kiválasztásához
Az első részben megtanulta, hogyan állíthatja vissza a mintaadatbázist.
A második részben megtanulta, hogyan töltheti be az adatokat egy adatbázisból egy Python-adatkeretbe, és hogyan készítheti elő az adatokat az R-ben.
A negyedik részben megtanulhatja, hogyan tárolhatja a modellt egy adatbázisban, majd hogyan hozhat létre tárolt eljárásokat a második és harmadik részben kifejlesztett Python-szkriptekből. A tárolt eljárások befutnak a kiszolgálón, hogy új adatok alapján előrejelzéseket készítsenek.
Prerequisites
Az oktatóanyag-sorozat harmadik része feltételezi, hogy teljesítette az első rész előfeltételeit, és elvégezte a második rész lépéseit.
Két modell betanítása
Ha meg szeretné találni a legjobb modellt a síkölcsönzési adatokhoz, hozzon létre két különböző modellt (lineáris regressziós és döntési fa), és nézze meg, melyiket előrejelzi pontosabban. A sorozat első részében létrehozott adatkeretet rentaldata fogja használni.
#First, split the dataset into two different sets:
# one for training the model and the other for validating it
train_data = rentaldata[rentaldata$Year < 2015,];
test_data = rentaldata[rentaldata$Year == 2015,];
#Use the RentalCount column to check the quality of the prediction against actual values
actual_counts <- test_data$RentalCount;
#Model 1: Use lm to create a linear regression model, trained with the training data set
model_lm <- lm(RentalCount ~ Month + Day + WeekDay + Snow + Holiday, data = train_data);
#Model 2: Use rpart to create a decision tree model, trained with the training data set
library(rpart);
model_rpart <- rpart(RentalCount ~ Month + Day + WeekDay + Snow + Holiday, data = train_data);
Előrejelzések készítése mindkét modellből
Használjon előrejelzési függvényt a bérleti díjak számának előrejelzéséhez az egyes betanított modellek használatával.
#Use both models to make predictions using the test data set.
predict_lm <- predict(model_lm, test_data)
predict_lm <- data.frame(RentalCount_Pred = predict_lm, RentalCount = test_data$RentalCount,
Year = test_data$Year, Month = test_data$Month,
Day = test_data$Day, Weekday = test_data$WeekDay,
Snow = test_data$Snow, Holiday = test_data$Holiday)
predict_rpart <- predict(model_rpart, test_data)
predict_rpart <- data.frame(RentalCount_Pred = predict_rpart, RentalCount = test_data$RentalCount,
Year = test_data$Year, Month = test_data$Month,
Day = test_data$Day, Weekday = test_data$WeekDay,
Snow = test_data$Snow, Holiday = test_data$Holiday)
#To verify it worked, look at the top rows of the two prediction data sets.
head(predict_lm);
head(predict_rpart);
Itt van az eredmények összessége.
RentalCount_Pred RentalCount Month Day WeekDay Snow Holiday
1 27.45858 42 2 11 4 0 0
2 387.29344 360 3 29 1 0 0
3 16.37349 20 4 22 4 0 0
4 31.07058 42 3 6 6 0 0
5 463.97263 405 2 28 7 1 0
6 102.21695 38 1 12 2 1 0
RentalCount_Pred RentalCount Month Day WeekDay Snow Holiday
1 40.0000 42 2 11 4 0 0
2 332.5714 360 3 29 1 0 0
3 27.7500 20 4 22 4 0 0
4 34.2500 42 3 6 6 0 0
5 645.7059 405 2 28 7 1 0
6 40.0000 38 1 12 2 1 0
Az eredmények összehasonlítása
Most látni szeretné, hogy mely modellek adják a legjobb előrejelzéseket. Ennek gyors és egyszerű módja egy egyszerű ábrázolási függvény használata a betanítási adatok tényleges értékei és az előrejelzett értékek közötti különbség megtekintéséhez.
#Use the plotting functionality in R to visualize the results from the predictions
par(mfrow = c(1, 1));
plot(predict_lm$RentalCount_Pred - predict_lm$RentalCount, main = "Difference between actual and predicted. lm")
plot(predict_rpart$RentalCount_Pred - predict_rpart$RentalCount, main = "Difference between actual and predicted. rpart")
Úgy tűnik, hogy a döntési fa modell a két modell közül a pontosabb.
Erőforrások tisztítása
Ha nem folytatja ezt az oktatóanyagot, törölje a TutorialDB-adatbázist.
Következő lépések
Az oktatóanyag-sorozat harmadik részében megtanulta, hogyan:
- Két gépi tanulási modell betanítása
- Előrejelzések készítése mindkét modellből
- Az eredmények összehasonlítása a legpontosabb modell kiválasztásához
A létrehozott gépi tanulási modell üzembe helyezéséhez kövesse az oktatóanyag-sorozat negyedik részét: