Dataset: 🤖 Students’ Perceptions of AI in Education

Exploring the Attitudes and Perspectives of Cybernetics Students on AI

by Gianina-Maria Petrașcu · Updated 3 years ago

Πληροφορίες για το επιλεγμένο dataset:

  • Το επιλεγμένο dataset περιέχει τα αποτελέσματα μίας έρευνας με σύνολο 16 ερωτήσεις, οι οποία διεξήχθη σε προπτυχιακούς φοιτητές 2ου & 3ου έτους, στη Σχολή Κυβερνητικής, Στατιστικής και Οικονομικής Πληροφορικής. Το dataset παρουσιάζει τις αντιλήψεις των φοιτητών σχετικά με το ρόλο της τεχνητής νοημοσύνης στην εκπαίδευση.

  • Η επιχειρηματική αναλυτική χρησιμοποιείται για να συνδυάσει και να οπτικοποιήσει δεδομένα, προερχόμενα από διάφορες πηγές, με σκοπό την απάντηση σε ερωτήματα και την επίλυση προβλημάτων. Καθώς βρισκόμαστε σε μία “τεχνολογικά εξελισσόμενη” περίοδο, η τεχνητή νοημοσύνη επηρεάζει ποια τους ανθρώπους σε πολλές φάσεις της ζωής τους. Μία από αυτές είναι και η εκπαίδευση και μέσω της χρήσης της επιχειρηματικής αναλυτικής μπορούμε επιτέλους να διακρίνουμε τα αποτελέσματα που αναζητούμε.

  • Κάποια από τα εωτήματα που μπορούν να απαντηθούν με την επιλογή αυτού του dataset και σύμφωνα με τις γνώσεις, την κατεύθυνση αλλά και τα χαρακτηριστικά των φοιτητών που πήραν μέρος στην αξιολόγηση, είναι:

    α) Αν υπάρχουν ενδείξεις ανησυχίας από τους φοιτητές για την μελλοντική αντικατάστασή τους σε θέσεις εργασίας από την τεχνητή νοημοσύνη.

    β) Την γενικότερη άποψη που επικρατεί στα περιβάλλοντα εκπαίδευσης για την τεχνητή νοημοσύνη, τουλάχιστον από την πλευρά των φοιτητών.

    γ)Αν η τεχνητή νοημοσύνη επηρεάζει θετικά ή αρνητικά την γενικότερη γνώση των φοιτητών, με βάση τους μέσους όρους των βαθμών τους αλλά και την προσωπική άποψή τους

    και άλλα ερωτήματα που μπορεί να παρουσιαστούν.

  • Οι μεταβλητές από τις οποίες αποτελείται το dataset, είναι στην ουσία οι ερωτήσεις από τις οποίες αποτελείται αυτή η αξιόλογηση και οι οποίες παροισιάστηκαν και στους φοιτητές.

Μοντέλο Λογιστικής Παλινδρόμησης

library(ggplot2)
library(caTools)
## Warning: package 'caTools' was built under R version 4.5.3
library(ROCR)
## Warning: package 'ROCR' was built under R version 4.5.3
Survey_AI <- read.csv("C:/Users/Dimitris/Documents/ea_erg1/Survey_AI.csv")
str(Survey_AI)
## 'data.frame':    91 obs. of  35 variables:
##  $ ID                                  : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ Q1.AI_knowledge                     : int  8 7 5 5 4 5 7 6 6 4 ...
##  $ Q2.AI_sources                       : chr  "Internet;Books/Scientific papers (physical/online format)" "Internet;Social media" "Internet;Books/Scientific papers (physical/online format)" "Internet;Social media" ...
##  $ Q2.1.Internet                       : int  1 1 1 1 1 1 0 1 1 1 ...
##  $ Q2.2.Books.Papers                   : int  1 0 1 0 0 0 1 0 1 0 ...
##  $ Q2.3.Social_media                   : int  0 1 0 1 0 0 1 0 0 0 ...
##  $ Q2.4.Discussions                    : int  0 0 0 0 0 1 1 0 1 0 ...
##  $ Q2.5.NotInformed                    : int  0 0 0 0 0 0 0 0 0 0 ...
##  $ Q3.1.AI_dehumanization              : int  1 2 2 4 1 3 1 1 2 4 ...
##  $ Q3.2.Job_replacement                : int  2 3 1 4 2 4 2 1 4 4 ...
##  $ Q3.3.Problem_solving                : int  5 4 4 5 5 4 4 5 5 4 ...
##  $ Q3.4.AI_rulling_society             : int  1 1 1 3 1 3 1 1 2 3 ...
##  $ Q4.1.AI_costly                      : int  4 3 3 4 3 4 5 3 5 4 ...
##  $ Q4.2.Economic_crisis                : int  2 3 1 3 1 3 4 2 2 3 ...
##  $ Q4.3.Economic_growth                : int  4 4 3 3 4 3 2 3 3 3 ...
##  $ Q4.4.Job_loss                       : int  2 3 2 4 2 4 4 2 4 4 ...
##  $ Q5.Feelings                         : int  1 1 1 1 1 2 1 1 1 1 ...
##  $ Q6.Domains                          : chr  "Education;Medicine;Marketing" "Medicine;Agriculture;Constructions" "Education;Marketing;Public Administration" "Education;Medicine" ...
##  $ Q6.1.Education                      : int  1 0 1 1 1 1 1 1 0 1 ...
##  $ Q6.2.Medicine                       : int  1 1 0 1 1 0 1 1 0 1 ...
##  $ Q6.3.Agriculture                    : int  0 1 0 0 1 1 0 0 1 1 ...
##  $ Q6.4.Constructions                  : int  0 1 0 0 1 0 1 0 0 1 ...
##  $ Q6.5.Marketing                      : int  1 0 1 0 0 0 0 0 1 0 ...
##  $ Q6.6.Administration                 : int  0 0 1 0 0 1 0 0 1 0 ...
##  $ Q6.7.Art                            : int  0 0 0 0 0 0 0 0 0 0 ...
##  $ Q7.Utility_grade                    : int  9 6 6 9 8 6 10 8 8 7 ...
##  $ Q8.Advantage_teaching               : int  3 2 3 1 3 1 1 3 3 1 ...
##  $ Q9.Advantage_learning               : int  1 2 3 2 2 2 2 3 2 1 ...
##  $ Q10.Advantage_evaluation            : int  2 1 3 2 3 3 1 3 2 3 ...
##  $ Q11.Disadvantage_educational_process: int  3 2 4 3 4 1 3 3 1 1 ...
##  $ Q12.Gender                          : int  1 2 2 1 1 1 1 2 1 1 ...
##  $ Q13.Year_of_study                   : int  2 2 2 2 2 2 2 2 2 2 ...
##  $ Q14.Major                           : int  2 2 2 2 2 2 2 2 2 3 ...
##  $ Q15.Passed_exams                    : int  1 1 0 1 1 1 0 0 0 1 ...
##  $ Q16.GPA                             : num  9.2 7.7 7.2 8.2 7.7 7.7 7.2 6.7 7.7 8.2 ...
summary (Survey_AI)
##        ID       Q1.AI_knowledge  Q2.AI_sources      Q2.1.Internet   
##  Min.   : 1.0   Min.   : 1.000   Length:91          Min.   :0.0000  
##  1st Qu.:23.5   1st Qu.: 5.000   Class :character   1st Qu.:1.0000  
##  Median :46.0   Median : 6.000   Mode  :character   Median :1.0000  
##  Mean   :46.0   Mean   : 5.912                      Mean   :0.8132  
##  3rd Qu.:68.5   3rd Qu.: 7.000                      3rd Qu.:1.0000  
##  Max.   :91.0   Max.   :10.000                      Max.   :1.0000  
##  Q2.2.Books.Papers Q2.3.Social_media Q2.4.Discussions Q2.5.NotInformed 
##  Min.   :0.0000    Min.   :0.0000    Min.   :0.0000   Min.   :0.00000  
##  1st Qu.:0.0000    1st Qu.:0.0000    1st Qu.:0.0000   1st Qu.:0.00000  
##  Median :0.0000    Median :0.0000    Median :0.0000   Median :0.00000  
##  Mean   :0.3516    Mean   :0.4396    Mean   :0.1978   Mean   :0.06593  
##  3rd Qu.:1.0000    3rd Qu.:1.0000    3rd Qu.:0.0000   3rd Qu.:0.00000  
##  Max.   :1.0000    Max.   :1.0000    Max.   :1.0000   Max.   :1.00000  
##  Q3.1.AI_dehumanization Q3.2.Job_replacement Q3.3.Problem_solving
##  Min.   :1.000          Min.   :1.000        Min.   :1.000       
##  1st Qu.:2.000          1st Qu.:2.000        1st Qu.:4.000       
##  Median :2.000          Median :3.000        Median :4.000       
##  Mean   :2.516          Mean   :3.198        Mean   :4.198       
##  3rd Qu.:3.000          3rd Qu.:4.000        3rd Qu.:5.000       
##  Max.   :5.000          Max.   :5.000        Max.   :5.000       
##  Q3.4.AI_rulling_society Q4.1.AI_costly  Q4.2.Economic_crisis
##  Min.   :1.000           Min.   :1.000   Min.   :1.00        
##  1st Qu.:1.000           1st Qu.:3.000   1st Qu.:2.00        
##  Median :3.000           Median :4.000   Median :3.00        
##  Mean   :2.429           Mean   :3.571   Mean   :2.56        
##  3rd Qu.:3.000           3rd Qu.:4.000   3rd Qu.:3.00        
##  Max.   :5.000           Max.   :5.000   Max.   :5.00        
##  Q4.3.Economic_growth Q4.4.Job_loss    Q5.Feelings     Q6.Domains       
##  Min.   :2.000        Min.   :1.000   Min.   :1.000   Length:91         
##  1st Qu.:3.000        1st Qu.:3.000   1st Qu.:1.000   Class :character  
##  Median :4.000        Median :4.000   Median :1.000   Mode  :character  
##  Mean   :3.659        Mean   :3.396   Mean   :1.582                     
##  3rd Qu.:4.000        3rd Qu.:4.000   3rd Qu.:2.000                     
##  Max.   :5.000        Max.   :5.000   Max.   :4.000                     
##  Q6.1.Education   Q6.2.Medicine    Q6.3.Agriculture Q6.4.Constructions
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.0000    
##  1st Qu.:0.0000   1st Qu.:1.0000   1st Qu.:0.0000   1st Qu.:0.0000    
##  Median :1.0000   Median :1.0000   Median :1.0000   Median :1.0000    
##  Mean   :0.6703   Mean   :0.8022   Mean   :0.5055   Mean   :0.5495    
##  3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:1.0000    
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.0000    
##  Q6.5.Marketing   Q6.6.Administration    Q6.7.Art      Q7.Utility_grade
##  Min.   :0.0000   Min.   :0.0000      Min.   :0.0000   Min.   : 2.00   
##  1st Qu.:0.0000   1st Qu.:0.0000      1st Qu.:0.0000   1st Qu.: 6.00   
##  Median :0.0000   Median :0.0000      Median :0.0000   Median : 8.00   
##  Mean   :0.3626   Mean   :0.3846      Mean   :0.1319   Mean   : 7.44   
##  3rd Qu.:1.0000   3rd Qu.:1.0000      3rd Qu.:0.0000   3rd Qu.: 9.00   
##  Max.   :1.0000   Max.   :1.0000      Max.   :1.0000   Max.   :10.00   
##  Q8.Advantage_teaching Q9.Advantage_learning Q10.Advantage_evaluation
##  Min.   :1.000         Min.   :1.000         Min.   :1.000           
##  1st Qu.:1.000         1st Qu.:1.000         1st Qu.:2.000           
##  Median :2.000         Median :2.000         Median :2.000           
##  Mean   :1.923         Mean   :1.879         Mean   :2.253           
##  3rd Qu.:3.000         3rd Qu.:2.000         3rd Qu.:3.000           
##  Max.   :3.000         Max.   :3.000         Max.   :3.000           
##  Q11.Disadvantage_educational_process   Q12.Gender    Q13.Year_of_study
##  Min.   :1.000                        Min.   :1.000   Min.   :1.000    
##  1st Qu.:1.000                        1st Qu.:1.000   1st Qu.:1.000    
##  Median :2.000                        Median :1.000   Median :2.000    
##  Mean   :2.099                        Mean   :1.352   Mean   :1.626    
##  3rd Qu.:3.000                        3rd Qu.:2.000   3rd Qu.:2.000    
##  Max.   :4.000                        Max.   :2.000   Max.   :2.000    
##    Q14.Major     Q15.Passed_exams    Q16.GPA     
##  Min.   :1.000   Min.   :0.0000   Min.   :5.200  
##  1st Qu.:1.000   1st Qu.:0.5000   1st Qu.:7.200  
##  Median :2.000   Median :1.0000   Median :7.700  
##  Mean   :1.923   Mean   :0.7473   Mean   :7.799  
##  3rd Qu.:2.500   3rd Qu.:1.0000   3rd Qu.:8.700  
##  Max.   :3.000   Max.   :1.0000   Max.   :9.700
table(Survey_AI$Q6.1.Education)
## 
##  0  1 
## 30 61

Διαχωρισμός των δεδομένων σε train & test

set.seed(968)

split <- sample.split(Survey_AI$Q6.1.Education,SplitRatio = 0.65)

surveyTrain = subset(Survey_AI,split==TRUE)
surveyTest = subset(Survey_AI,split==FALSE)

nrow(surveyTrain)
## [1] 60
names(surveyTrain)
##  [1] "ID"                                  
##  [2] "Q1.AI_knowledge"                     
##  [3] "Q2.AI_sources"                       
##  [4] "Q2.1.Internet"                       
##  [5] "Q2.2.Books.Papers"                   
##  [6] "Q2.3.Social_media"                   
##  [7] "Q2.4.Discussions"                    
##  [8] "Q2.5.NotInformed"                    
##  [9] "Q3.1.AI_dehumanization"              
## [10] "Q3.2.Job_replacement"                
## [11] "Q3.3.Problem_solving"                
## [12] "Q3.4.AI_rulling_society"             
## [13] "Q4.1.AI_costly"                      
## [14] "Q4.2.Economic_crisis"                
## [15] "Q4.3.Economic_growth"                
## [16] "Q4.4.Job_loss"                       
## [17] "Q5.Feelings"                         
## [18] "Q6.Domains"                          
## [19] "Q6.1.Education"                      
## [20] "Q6.2.Medicine"                       
## [21] "Q6.3.Agriculture"                    
## [22] "Q6.4.Constructions"                  
## [23] "Q6.5.Marketing"                      
## [24] "Q6.6.Administration"                 
## [25] "Q6.7.Art"                            
## [26] "Q7.Utility_grade"                    
## [27] "Q8.Advantage_teaching"               
## [28] "Q9.Advantage_learning"               
## [29] "Q10.Advantage_evaluation"            
## [30] "Q11.Disadvantage_educational_process"
## [31] "Q12.Gender"                          
## [32] "Q13.Year_of_study"                   
## [33] "Q14.Major"                           
## [34] "Q15.Passed_exams"                    
## [35] "Q16.GPA"
nrow(surveyTest)
## [1] 31
names(surveyTest)
##  [1] "ID"                                  
##  [2] "Q1.AI_knowledge"                     
##  [3] "Q2.AI_sources"                       
##  [4] "Q2.1.Internet"                       
##  [5] "Q2.2.Books.Papers"                   
##  [6] "Q2.3.Social_media"                   
##  [7] "Q2.4.Discussions"                    
##  [8] "Q2.5.NotInformed"                    
##  [9] "Q3.1.AI_dehumanization"              
## [10] "Q3.2.Job_replacement"                
## [11] "Q3.3.Problem_solving"                
## [12] "Q3.4.AI_rulling_society"             
## [13] "Q4.1.AI_costly"                      
## [14] "Q4.2.Economic_crisis"                
## [15] "Q4.3.Economic_growth"                
## [16] "Q4.4.Job_loss"                       
## [17] "Q5.Feelings"                         
## [18] "Q6.Domains"                          
## [19] "Q6.1.Education"                      
## [20] "Q6.2.Medicine"                       
## [21] "Q6.3.Agriculture"                    
## [22] "Q6.4.Constructions"                  
## [23] "Q6.5.Marketing"                      
## [24] "Q6.6.Administration"                 
## [25] "Q6.7.Art"                            
## [26] "Q7.Utility_grade"                    
## [27] "Q8.Advantage_teaching"               
## [28] "Q9.Advantage_learning"               
## [29] "Q10.Advantage_evaluation"            
## [30] "Q11.Disadvantage_educational_process"
## [31] "Q12.Gender"                          
## [32] "Q13.Year_of_study"                   
## [33] "Q14.Major"                           
## [34] "Q15.Passed_exams"                    
## [35] "Q16.GPA"

Δημιουργία Μοντέλου Λογιστικής Παλινδρόμησης

#λόγω εμφάνισης προβλημάτων δεδομένου του dataset και της δομής του, αντί για την εντολή " ~ .," αναγκαστικά προστίθενται οι ανεξάρτητες μεταβλητές που μπορούν να δουλέψουν στο μοντέλο και δεν είναι κατηγορηματικές.
surveyLogPract <- glm(Q6.1.Education ~ Q1.AI_knowledge+Q3.1.AI_dehumanization+Q3.2.Job_replacement+Q3.3.Problem_solving+Q3.4.AI_rulling_society+Q4.1.AI_costly+Q4.2.Economic_crisis+Q4.3.Economic_growth+Q4.4.Job_loss+Q5.Feelings+Q7.Utility_grade+Q8.Advantage_teaching+Q9.Advantage_learning+Q10.Advantage_evaluation+Q11.Disadvantage_educational_process+Q13.Year_of_study+Q14.Major+Q16.GPA,
data = surveyTrain,family = binomial)
summary(surveyLogPract)
## 
## Call:
## glm(formula = Q6.1.Education ~ Q1.AI_knowledge + Q3.1.AI_dehumanization + 
##     Q3.2.Job_replacement + Q3.3.Problem_solving + Q3.4.AI_rulling_society + 
##     Q4.1.AI_costly + Q4.2.Economic_crisis + Q4.3.Economic_growth + 
##     Q4.4.Job_loss + Q5.Feelings + Q7.Utility_grade + Q8.Advantage_teaching + 
##     Q9.Advantage_learning + Q10.Advantage_evaluation + Q11.Disadvantage_educational_process + 
##     Q13.Year_of_study + Q14.Major + Q16.GPA, family = binomial, 
##     data = surveyTrain)
## 
## Coefficients:
##                                      Estimate Std. Error z value Pr(>|z|)  
## (Intercept)                           -5.7939    10.8467  -0.534   0.5932  
## Q1.AI_knowledge                       -0.3591     0.5527  -0.650   0.5159  
## Q3.1.AI_dehumanization                 1.4291     1.2584   1.136   0.2561  
## Q3.2.Job_replacement                  -1.5322     0.9532  -1.607   0.1080  
## Q3.3.Problem_solving                  -0.3461     1.0533  -0.329   0.7424  
## Q3.4.AI_rulling_society               -0.5502     1.1913  -0.462   0.6442  
## Q4.1.AI_costly                         0.3030     0.8322   0.364   0.7158  
## Q4.2.Economic_crisis                   0.5246     0.6940   0.756   0.4497  
## Q4.3.Economic_growth                  -0.9849     1.2844  -0.767   0.4432  
## Q4.4.Job_loss                          1.1830     1.2659   0.935   0.3500  
## Q5.Feelings                           -0.5835     0.7475  -0.781   0.4350  
## Q7.Utility_grade                       1.9294     0.8870   2.175   0.0296 *
## Q8.Advantage_teaching                 -2.2413     1.4426  -1.554   0.1203  
## Q9.Advantage_learning                  0.8867     1.2074   0.734   0.4627  
## Q10.Advantage_evaluation              -0.5580     1.1276  -0.495   0.6207  
## Q11.Disadvantage_educational_process   1.6294     0.8607   1.893   0.0583 .
## Q13.Year_of_study                     -3.9623     2.1898  -1.809   0.0704 .
## Q14.Major                              1.7550     1.7656   0.994   0.3202  
## Q16.GPA                                0.2193     0.9203   0.238   0.8117  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 76.382  on 59  degrees of freedom
## Residual deviance: 29.423  on 41  degrees of freedom
## AIC: 67.423
## 
## Number of Fisher Scoring iterations: 8
surveyLog <- glm(Q6.1.Education ~ Q7.Utility_grade + Q4.2.Economic_crisis + Q11.Disadvantage_educational_process + Q13.Year_of_study,
data = surveyTrain,family = binomial)
summary(surveyLog)
## 
## Call:
## glm(formula = Q6.1.Education ~ Q7.Utility_grade + Q4.2.Economic_crisis + 
##     Q11.Disadvantage_educational_process + Q13.Year_of_study, 
##     family = binomial, data = surveyTrain)
## 
## Coefficients:
##                                      Estimate Std. Error z value Pr(>|z|)    
## (Intercept)                           -5.6158     2.6944  -2.084 0.037141 *  
## Q7.Utility_grade                       0.8395     0.2270   3.698 0.000218 ***
## Q4.2.Economic_crisis                   0.5211     0.4244   1.228 0.219530    
## Q11.Disadvantage_educational_process   0.7530     0.4245   1.774 0.076074 .  
## Q13.Year_of_study                     -1.5599     0.8571  -1.820 0.068753 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 76.382  on 59  degrees of freedom
## Residual deviance: 46.757  on 55  degrees of freedom
## AIC: 56.757
## 
## Number of Fisher Scoring iterations: 5
ggplot(surveyTrain, aes(Q3.4.AI_rulling_society, Q6.1.Education)) + 
  geom_point() +
  geom_smooth(method = "glm", method.args = list(family = "binomial")) +
  labs(title = "Logistic Regression Plot",
       x = "Independent Variable",
       y = "Probability") +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

ggplot(surveyTrain, aes(Q1.AI_knowledge, Q6.1.Education)) + 
  geom_point() +
  geom_smooth(method = "glm", method.args = list(family = "binomial")) +
  labs(title = "Logistic Regression Plot",
       x = "Independent Variable",
       y = "Probability") +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

ggplot(surveyTrain, aes(Q7.Utility_grade, Q6.1.Education)) + 
  geom_point() +
  geom_smooth(method = "glm", method.args = list(family = "binomial")) +
  labs(title = "Logistic Regression Plot",
       x = "Independent Variable",
       y = "Probability") +
  theme_minimal()
## `geom_smooth()` using formula = 'y ~ x'

Ως εξαρτημένη μεταβλητή επιλέχθηκε η άποψη των μαθητών για τη συνεισφορά της τεχνητής νοημοσύνης στην εκπαίδευση, στο παρόν αλλά και στο μέλλον. Η κύρια ερώτηση είναι αν η τεχνητή νοημοσύνη επηρεάζει ακόμα και τώρα σε μεγάλο βαθμό τον τομέα της εκπαίδευσης, με τις απαντήσεις να είναι 1=Ναι και 0=Όχι.

Όπως βλέπουμε στα αποτελέσματα του Log Practice συσχέτιση με την εξαρτημένη μεταβλητή έχουν οι utility grade (*), disadvantage in educational process (.), year of study (.).

Για τη δημιουργία πιο ισχυρών συσχετίσεων, αρχικά απομονώθηκαν και εξετάστηκαν οι μεταβλητές από το προηγούμενο κύριο μοντέλο model3_1 :

#model3_1 <- lm(Survey_AI$Q7.Utility_grade ~ Survey_AI$Q5.Feelings + Survey_AI$Q1.AI_knowledge 
#             + Survey_AI$Q3.2.Job_replacement + Survey_AI$Q3.4.AI_rulling_society 
#             + Survey_AI$Q3.1.AI_dehumanization, data = Survey_AI)

Στη συνέχεια κατασκευάστηκαν διαγράμματα για την εξέταση ισχυρών συσχετίσεων ανάμεσα στην εξαρτξμένη μεταβλητή και τις 3 κύριες ανεξάρτητες μεταβλητές: 1.student’s fear of replacement in jobs by AI, 2.AI knowledge, 3.utility grade of AI for students.

Δεν εμφανίστηκε κάποια πολύ δυνατή συσχέτιση, με εξαίρεση το utility grade, οπότε προστέθηκαν και οι υπόλοιπες μεταβλητές από τις ερωτήσεις 3 και 4 και διατηρήθηκαν όσες είχαν θετικούς συντελεστές, δηλαδή οι Q7.Utility_grade + Q4.2.Economic_crisis Q11.Disadvantage_educational_process + Q13.Year_of_study. Μάλιστα, συγκεκριμένες από αυτές τις μεταβλητές εμφάνισαν “**”και “***”, αστέρια στις συσχετίσεις με την εξαρτημένη μεταβλητή και με το μικρότερο AIC από όλα τα μοντέλα.

AIC: 56.757

Το πρώτο διάγραμμα εμφάνισε αρνητική τάση που δηλώνει μία αρνητική συσχέτιση ανάμεσα στις δύο μεταβλητές.

Το δεύτερο διάγραμμα παρουσιάζει θετική συσχέτιση μεταξύ των μεταβλητών, όχι τέλεια, αλλά με ανοδική τάση η οποία ενδεικνύει την ύπαρξη νοήματος στην προσθήκη της στο μοντέλο.

Το τρίτο διάγραμμα εμφάνισε θετικά αποτελέσματα με την καμπύλη τάσης να δείχνει τη θετική συσχέτιση ανάμεσα στις δύο μεταβλητές, με την πιθανότητα να αυξάνεται όσο αυξάνεται και η μεταβλητή.

Προβλέψεις στο test set και δημιουργία confusion matrix

Η εντολή predict() χρησιμοποιείται για να υπολογίσει προβλέψεις σε ένα ήδη εκπαιδευμένο μοντέλο, με νέα ή υπάρχοντα δεδομένα. Δίνει πιθανότητες με τιμές 0 και 1 ώστε να υπολογιστεί η ακρίβεια του μοντέλου στις σωστές (TP, TN) και λάθος (FP, FN) προβλέψεις.

predictTest <- predict(surveyLog, newdata = surveyTest, type = "response")
summary(predictTest) 
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## 0.02706 0.33235 0.78278 0.63093 0.91982 0.97620
#confusion matrix
table(surveyTest$Q6.1.Education, predictTest > 0.5)
##    
##     FALSE TRUE
##   0     6    4
##   1     5   16

True Positives (TP) = 16

σωστά προέβλεψε 1

True Negatives (TN) = 6

σωστά προέβλεψε 0

False Positives (FP) = 4

είπε 1 ενώ ήταν 0

False Negatives (FN) = 5

είπε 0 ενώ ήταν 1

Επομένως, το μοντέλο ταξινομεί σωστά 16 θετικές και 6 αρνητικές παρατηρήσεις, ενώ παρουσιάζει 9 συνολικά σφάλματα. Η συνολική ακρίβεια ανέρχεται περίπου στο 71%, υποδηλώνοντας ικανοποιητική απόδοση. Επιπλέον, το μοντέλο εμφανίζει καλή ισορροπία μεταξύ του εντοπισμού τόσο στις θετικές όσο και στις αρνητικές περιπτώσεις.

Δημιουργία μοντέλου ROCR και κατασκευή καμπύλης ROC

rocr_train = na.omit(surveyTrain)
rocr_test = na.omit(surveyTest)

nrow(rocr_train)
## [1] 60
nrow(rocr_test)
## [1] 31
surveyLog2 = glm(Q6.1.Education ~ Q7.Utility_grade + Q1.AI_knowledge + Q5.Feelings + Q4.4.Job_loss + Q4.1.AI_costly, data = rocr_train, family = binomial)
predictTest2 = predict(surveyLog2, type = "response", newdata = rocr_test)

Δημιουργία καμπύλης και υπολογισμός AUC:

ROCRpred2 <- prediction(predictTest2, rocr_test$Q6.1.Education)
#ROCRpred <- prediction(predictTest, surveyTest$Q6.1.Education)

ROCRperf2 <- performance(ROCRpred2, 'tpr', 'fpr')
#ROCRperf <- performance(ROCRpred, 'tpr', 'fpr')

plot(ROCRperf2)

plot(ROCRperf2,colorize = TRUE)
plot(ROCRperf2,colorize = TRUE, print.cutoffs.at=seq(0,1,0.1),text.adj=c(-0.2,1.7))

as.numeric(performance(ROCRpred2, "auc")@y.values)
## [1] 0.7809524

Για τη δημιουργία ενός δυνατού μοντέλου ROCR προστέθηκαν δύο έξτρα μεταβλητές, οι Q4.4.job loss by AI in the future & Q4.1.AI costly. Δοκιμάστηκαν και άλλοι συνδυασμοί αλλά αφαιρέθηκαν λόγω του ότι μείωναν, έστω και ελάχιστα το AUC.

Αξιοσημείωτο είναι ότι είχαμε και ένα μοντέλο με AUC = 0.44, κάτω του 0.5 κατωφλιού, επειδή αφαιρέσαμε την μεταβλητή Q7.Utility_grade, γεγονός που επαληθεύει την πολύ ισχυρή συσχέτιση της συγκεκριμένης ανεξάρτητης μεταβλητής με την εξαρτημένη μας.

Στο τελικό μας μοντέλο surveyLog2 μπορούμε να δούμε ότι πετύχαμε AUC μεγέθους:

0.7833333

Δηλαδή πάνω από το κατώφλι 0.5 που ορίσαμε. Αυτό υποδεικνύει ότι το μοντέλο ξεχωρίζει καλά τα 0 και 1, με συσχετίσεις που έχουν νόημα μεταξύ τους, έχοντας καλή διακριτική ικανότητα. Το μοντέλο είναι σε θέση να διαχωρίζει αποτελεσματικά τις δύο κατηγορίες της εξαρτημένης μεταβλητής.

Επιπλέον, η καμπύλη ROC του μοντέλου βρίσκεται εμφανώς πάνω από τη διαγώνιο γραμμή, γεγονός που υποδηλώνει ότι το μοντέλο παρουσιάζει καλύτερη απόδοση από μία τυχαία ταξινόμηση. Η μορφή της καμπύλης δείχνει ότι επιτυγχάνεται ικανοποιητική ισορροπία μεταξύ του ποσοστού αληθώς θετικών (True Positive Rate) και ψευδώς θετικών (False Positive Rate).

Συνολικά, τα αποτελέσματα της καμπύλης ROC και του AUC καταδεικνύουν ότι το μοντέλο λογιστικής παλινδρόμησης παρουσιάζει ικανοποιητική έως καλή απόδοση και μπορεί να χρησιμοποιηθεί για την πρόβλεψη της εξεταζόμενης μεταβλητής.

Fin