1 Дата мэдээлэл Ашиглах package-ууд

##  maxPlayerLevel   numberOfAttemptedLevels attemptsOnTheHighestLevel
##  Min.   :  0.00   Min.   :  1.00          Min.   :  1.000          
##  1st Qu.:  4.00   1st Qu.:  3.00          1st Qu.:  1.000          
##  Median : 11.00   Median :  8.00          Median :  1.000          
##  Mean   : 18.42   Mean   : 12.42          Mean   :  3.508          
##  3rd Qu.: 27.00   3rd Qu.: 16.00          3rd Qu.:  3.000          
##  Max.   :146.00   Max.   :142.00          Max.   :186.000          
##  totalNumOfAttempts averageNumOfTurnsPerCompletedLevel
##  Min.   :  1.00     Min.   : 0.00                     
##  1st Qu.:  4.00     1st Qu.: 8.40                     
##  Median : 12.00     Median :14.56                     
##  Mean   : 26.84     Mean   :13.33                     
##  3rd Qu.: 31.00     3rd Qu.:17.72                     
##  Max.   :563.00     Max.   :40.00                     
##  doReturnOnLowerLevels numberOfBoostersUsed fractionOfUsefullBoosters
##  Min.   :0.0000        Min.   : 0.000       Min.   :0.0000           
##  1st Qu.:0.0000        1st Qu.: 0.000       1st Qu.:0.0000           
##  Median :0.0000        Median : 2.000       Median :0.6190           
##  Mean   :0.1524        Mean   : 4.901       Mean   :0.5348           
##  3rd Qu.:0.0000        3rd Qu.: 6.000       3rd Qu.:1.0000           
##  Max.   :1.0000        Max.   :81.000       Max.   :1.0000           
##    totalScore       totalBonusScore totalStarsCount 
##  Min.   :       0   Min.   :    0   Min.   :  0.00  
##  1st Qu.:  483000   1st Qu.:  575   1st Qu.:  6.00  
##  Median : 1700000   Median : 1500   Median : 18.00  
##  Mean   : 2884268   Mean   : 2138   Mean   : 26.88  
##  3rd Qu.: 3890000   3rd Qu.: 2875   3rd Qu.: 37.00  
##  Max.   :31338000   Max.   :24275   Max.   :319.00  
##  numberOfDaysActuallyPlayed     ytrain      
##  Min.   : 1.000             Min.   :0.0000  
##  1st Qu.: 1.000             1st Qu.:0.0000  
##  Median : 1.000             Median :0.0000  
##  Mean   : 2.725             Mean   :0.2882  
##  3rd Qu.: 3.000             3rd Qu.:1.0000  
##  Max.   :14.000             Max.   :1.0000

1.1 Корреляцийн матриц

Дата мэдээллийн хувьд нийт 13 хувьсагч бүхий 25289 тоглогчийн мэдээлэл байна. Нийт 28289 тоглогчдын дата мэдээлэл дээр график байгуулж харахад 18001 тоглогч ахин тоглоогүй ,7288 тоглогч ахин тоглох эсэх юм. Дата мэдээлэлд өгөгдсөнөөр хамааран хувьсагч бол дараагийн 14 хоногт тухайн харилцагч уг тоглоомыг ахин тоглоно эсэх юм. Корреляцийн матрицаас харахад хамааран хувьсагч болон тайлбарлан хувьсагчдын хоорондын коррялци нь (0.1-0.58) хооронд байгаа нь бага корреялци хамааралтай харагдаж байна.

2 Machine learning процесс

Machine learning проецесс дээрх зурганд харуулсан үе шатуудын дагуу явагддаг. Дата мэдээлэлд өгөгдсөнөөр train data дээр үндэслэн classfication алгоритмууд ашиглан загвараа байгуулах бөгөөд, байгуулсан загвараа ашиглан test датагаа таамаглаж болно.Харин дугуйлсан хэсэг болох загварын тохирол,манай загвар хэдэн хувийн зөв таамаглаж байгаа,аль загвар нь илүү таамаглаж байгаа зэргийг тодорхойлох боломжгүй байна.Учир нь бид эдгээр үр дүнг харахын тулд x_test-н таамагласан үр дүнгээ бодит үр дүн буюу(y_test) дататайгаа жиших ёстой билээ.

3 classification алгоритмууд

  • Logistic Regression,
  • Naive Bayes Classifier
  • Support Vector Machines
  • Decision Trees
  • Boosted Trees
  • Random Forest
  • Neural Networks
  • Nearest Neighbor

3.1 Ложистик регрессийн загвар

\[Чанарын \ утга \ бүхий \ Y-ийн \ хувьд \ ямар \ нэг \ тохиох \ магадлалыг \ тодорхойлоход \\ ашигладаг.\ Жишээ \ нь \ орон \ сууцтай \ эсэх, \ эрсдэлтэй\ зээлдэгч \ эсвэл\ эрсдэлгүй \ зээлдэгч\]

\[p(Y = 1|X)=g(\theta^TX )=\dfrac{1}{1+e^(-\theta^TX) }\ (1)\]

\[\theta^TX=\theta_0+\theta_1X_1+\theta_2X_2...+\theta_nX_n \ (2)\] \[\theta^TX \ нь \ утгаа \ авахад\ P(i) \ нь \ (0,1)\ хооронд\ утагаа\ авч \ байдаг \ функц \ юм.\]

\[p(Y = 0|X)=1-g(-\theta^TX )=\dfrac{e^(\theta^TX)}{1+e^(-\theta^TX) }\ (3)\] Машин сургалтын caret package-ийн train функцийг ашиглан ложистик регрессийн загварыг байгуулья.Дата мэдээлэлд өгөгдсөнөөр хамааран хувьсагч бол дараагийн 14 хоногт тухайн харилцагч уг тоглоомыг ахин тоглох эсэх юм. Ложистик регрессийн хувьд тархалт нь бином тархалттай учир зааж өгөв

## Generalized Linear Model 
## 
## 25289 samples
##    12 predictor
##     2 classes: 'тоглоно', 'тоглохгүй' 
## 
## No pre-processing
## Resampling: Bootstrapped (25 reps) 
## Summary of sample sizes: 25289, 25289, 25289, 25289, 25289, 25289, ... 
## Resampling results:
## 
##   Accuracy   Kappa    
##   0.8238233  0.5328666
## 
## Call:  NULL
## 
## Coefficients:
##                        (Intercept)                      maxPlayerLevel  
##                          3.349e+00                          -1.375e-02  
##            numberOfAttemptedLevels           attemptsOnTheHighestLevel  
##                         -1.000e-02                           3.671e-04  
##                 totalNumOfAttempts  averageNumOfTurnsPerCompletedLevel  
##                         -2.189e-03                          -6.213e-02  
##              doReturnOnLowerLevels                numberOfBoostersUsed  
##                          2.943e-01                           5.360e-02  
##          fractionOfUsefullBoosters                          totalScore  
##                         -1.170e-02                          -2.834e-08  
##                    totalBonusScore                     totalStarsCount  
##                          1.415e-03                          -1.175e-01  
##         numberOfDaysActuallyPlayed  
##                         -3.612e-01  
## 
## Degrees of Freedom: 25288 Total (i.e. Null);  25276 Residual
## Null Deviance:       30370 
## Residual Deviance: 20170     AIC: 20200

Ложистик регрессийн загварын үр дүнгээс үзэхэд - doReturnOnLowerLevels – өмнө давж байсан үеээ ахин тоглох - totalBonusScore – нийт бонус оноо - attemptsOnTheHighestLevel – хамгийн сүүлийн үеийг хэдэн удаа оролдсон - numberOfBoostersUsed – нийт ашиглсан booster-н тоо зэрэг хувьсагчдын утга нэмэгдэхэд тоглогч дараагийн 14 хоногт тоглох магадлал буурах буюу эдгээр хувьсагч нь тоглогч дараагийн 14 хоногт тоглох магадлалд сөрөг нөлөөтэй хувьсагч байна. Accuracy =0.8223609 энэ нь байгуулсан загвар дэээрээ ахин x_train датаг таамаглаад гарсан үр дүнг нь бодит y_train дататай жишсэн үзүүлэлт юм. Байгуулсан загвар дээрээ x_train дата мэдээллийг таамаглахад 82%-тай таамаглаж байна гэсэн үг. Доорх кодон дээр өөр байдлаар бичин гаргав.

## Confusion Matrix and Statistics
## 
##            Reference
## Prediction  тоглоно тоглохгүй
##   тоглоно      4056      1260
##   тоглохгүй    3232     16741
##                                           
##                Accuracy : 0.8224          
##                  95% CI : (0.8176, 0.8271)
##     No Information Rate : 0.7118          
##     P-Value [Acc > NIR] : < 2.2e-16       
##                                           
##                   Kappa : 0.5291          
##                                           
##  Mcnemar's Test P-Value : < 2.2e-16       
##                                           
##             Sensitivity : 0.5565          
##             Specificity : 0.9300          
##          Pos Pred Value : 0.7630          
##          Neg Pred Value : 0.8382          
##              Prevalence : 0.2882          
##          Detection Rate : 0.1604          
##    Detection Prevalence : 0.2102          
##       Balanced Accuracy : 0.7433          
##                                           
##        'Positive' Class : тоглоно         
## 
## .
##   тоглоно тоглохгүй 
##      5250     20039

Байгуулсан logit_model загвар дээр x_test датаг үнэлэн 14 хоногт тухайн харилцагч уг тоглоомыг ахин тоглох эсэхийг таамаглан үзүүлэв.Таамаглалаас үзэхэд нийт 25289 тоглогчийн 5250 ахин тоглоно ,20039 ахин тоглохгүй гэж таамагласан байна.

3.2 Шийдвэрийн мод загвар (Decision Trees)

Тодорхой бус үр дүнг тооцон шийдвэрийн үр дүнг дэс дараалсан байдлаар харуулдаг. Энэ нь анхдагч үзэгдэл буюу анхны шийдвэрээс эхлэн төрөл бүрийн арга зам болон гарч болох үзэгдлийн үр дүнг загварчилна. Шийдвэрийн мод нь хувилбарууд дотроос хамгийн үр дүнтэй чиглэлийг сонгоход ашиглагддаг. Шийдвэрийн мод нь хувилбар тус бүрээр үр дүнг жиших, түүнийг байж болох магадлалуудаар нь засч залруулах, дараа нь харьцуулж, оновчтойг нь сонгон шийдвэр гаргах боломж олгодог.

## CART 
## 
## 25289 samples
##    12 predictor
##     2 classes: 'тоглоно', 'тоглохгүй' 
## 
## No pre-processing
## Resampling: Bootstrapped (25 reps) 
## Summary of sample sizes: 25289, 25289, 25289, 25289, 25289, 25289, ... 
## Resampling results across tuning parameters:
## 
##   cp           Accuracy   Kappa    
##   0.007546652  0.8267566  0.5609836
##   0.024835346  0.8195483  0.5573636
##   0.354006586  0.7417494  0.1788575
## 
## Accuracy was used to select the optimal model using the largest value.
## The final value used for the model was cp = 0.007546652.
## n= 25289 
## 
## node), split, n, loss, yval, (yprob)
##       * denotes terminal node
## 
##  1) root 25289 7288 тоглохгүй (0.2881885 0.7118115)  
##    2) numberOfDaysActuallyPlayed>=2.5 8246 2833 тоглоно (0.6564395 0.3435605)  
##      4) totalNumOfAttempts>=45.5 4291  874 тоглоно (0.7963179 0.2036821) *
##      5) totalNumOfAttempts< 45.5 3955 1959 тоглоно (0.5046776 0.4953224)  
##       10) numberOfDaysActuallyPlayed>=3.5 2041  821 тоглоно (0.5977462 0.4022538) *
##       11) numberOfDaysActuallyPlayed< 3.5 1914  776 тоглохгүй (0.4054336 0.5945664) *
##    3) numberOfDaysActuallyPlayed< 2.5 17043 1875 тоглохгүй (0.1100158 0.8899842) *
## .
##   тоглоно тоглохгүй 
##      6272     19017

Шийдвэрийн модны загвараас харахад нийт тоглосон хоногийн тоо 3 аас их бол ахин тоглох магадлал нь 33% тай байна. Нийт тоглосон хоногийн тоо 3 аас бага бол тоглохгүй байх магадлал нь 67% тай байна.Нийт тоглосон хоногийн тоо 3 аас их ба нийт оролдлогын тоо 46 аас их бол ахин тоглох магадлал 17 % тай байна.Нийт оролдлогын тоо 46 өөс бага ба тоглосон хоногийн тоо 4 өөс бага бол тоглохгүй байх магадлал 8% байна. Нийт оролдлогын тоо 46 аас бага ба тоглосон хоногийн тоо 4өөс их бол тоглох магадлал 8% байна.

3.3 Naive Bayes Classifier

Naive Bayes алгоритм нь Bayes-ийн томьёог ашигладаг бөгөөд A болон B үзэгдлийн нөхцөлт магадлалыг дараах томьёогоор олно.

\[P(A \cup B)=P(A,B)=P(A)P(B|A) =P(B)P(A|B)\] \[P(B|A)=\dfrac{P(B)P(A|B)}{P(A)}\]

Bayes-ийн нөхцөлт магадлал нь А үзэгдэл илрэхэд В үзэгдлийн илэрэх магадлал юм. Naive Bayes алгоритм дээр энэхүү нөхцөлт магадлалыг өргөтгсөн байдлаар авч үзэн тооцоолдог.

\[ n \ ширхэг \ X_1,X_2,...X_n \ таамаглан \ хувьсагч \ өгөгдөхөд \ гаралтын \ үр \ дүнд \ харгалзах \\ C_1,C_2...C_k \ хүртэлх \ к \ ширхэг \ нөхцөлт \ ангилал \ үүснэ. Өргөтгөсөн\\ нөхцөлт \ магадлалын \ теором \ нь \ дараах \ байдалтай \ бичигдэнэ \] \[P(C_k|x_1,x_2,....,x_n)=\dfrac{P(C_k)P(x_1,x_2,....,x_n|C_k)}{P(x_1,x_2,....,x_n)}\]

## 
##   тоглоно тоглохгүй 
##      5796     19493

Naive Bayes загварын таамаглалаас үзэхэд нийт тоглогчийн 5796 ахин тоглон 19493 ахин тоглохгүй гэж таамагласан байна.

3.4 Загваруудын таамаглалтын нарийвчлал /Train data Accuracy/

## 
## Call:
## summary.resamples(object = results)
## 
## Models: nb, rpart, glm 
## Number of resamples: 2 
## 
## Accuracy 
##            Min.   1st Qu.    Median      Mean   3rd Qu.      Max. NA's
## nb    0.8180308 0.8189368 0.8198427 0.8198427 0.8207486 0.8216545    0
## rpart 0.8268090 0.8273394 0.8278699 0.8278699 0.8284003 0.8289307    0
## glm   0.8215755 0.8217371 0.8218988 0.8218988 0.8220605 0.8222222    0
## 
## Kappa 
##            Min.   1st Qu.    Median      Mean   3rd Qu.      Max. NA's
## nb    0.5290342 0.5307005 0.5323668 0.5323668 0.5340331 0.5356994    0
## rpart 0.5595591 0.5597709 0.5599827 0.5599827 0.5601945 0.5604063    0
## glm   0.5256891 0.5269692 0.5282494 0.5282494 0.5295295 0.5308097    0

Эдгээр 3 загвар нь загварыг байгуулахад оролцсон x_train датаг энэ 3 загвар дээр таамаглаад бодит y_train дататай жишин загварын нарийвчлалын хувийг гаргахад caret package-ийн Decision tree(Шийдвэрийн мод ) загвар нь хамгийн өндөр хувьтай таамаглаж байна.

Next:: y_test,test_Accuracy score,AUC plot,Optimal model