diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2023-02-03 18:05:52 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2023-02-03 18:05:52 +0100 |
| commit | dc576537434ff6e10639e144f0be935ebc9afbc2 (patch) | |
| tree | 07f81f83fff8446607605609deca7671c3f54220 /analysis | |
| parent | cd9dc76dfc84c7542e15e9052a755842d8127116 (diff) | |
Update
Diffstat (limited to 'analysis')
| -rw-r--r-- | analysis/days.R | 35 | ||||
| -rw-r--r-- | analysis/figures/days_accuracy.pdf | bin | 8270 -> 8298 bytes | |||
| -rw-r--r-- | analysis/figures/days_energy.pdf | bin | 6140 -> 10178 bytes | |||
| -rw-r--r-- | analysis/figures/days_f1-score.pdf | bin | 9017 -> 9024 bytes | |||
| -rw-r--r-- | analysis/figures/delta_coverage_training.pdf | bin | 15263 -> 15320 bytes | |||
| -rw-r--r-- | analysis/figures/delta_energy_training.pdf | bin | 19601 -> 19693 bytes | |||
| -rw-r--r-- | analysis/figures/months_accuracy.pdf | bin | 0 -> 12114 bytes | |||
| -rw-r--r-- | analysis/figures/months_f1-score.pdf | bin | 0 -> 19355 bytes | |||
| -rw-r--r-- | analysis/renv.lock | 22 |
9 files changed, 30 insertions, 27 deletions
diff --git a/analysis/days.R b/analysis/days.R index 5f87555..deed14d 100644 --- a/analysis/days.R +++ b/analysis/days.R @@ -12,6 +12,7 @@ library("rpart") library("rpart.plot") library("viridis") library("MLmetrics") +library("latex2exp") ## Simulation Parameters: ## simkey {baseline,extended,hint,hintandextended} @@ -74,13 +75,15 @@ generate_accuracy_for=function(ignore_hint=FALSE,seed_max=200,attempts_max=2,wrl data_ml=data_ml%>%filter(simkey!="hint") } train_set=data_ml%>%filter(seed<=seed_max)%>%select(-seed) # train data on seed_max*3 days - test_set=data_ml%>%suppressMessages(anti_join(train_set))%>%select(-seed) # build test_sed excluding training set - + test_set=data_ml%>%select(-seed) # build test_sed + #print(paste0("Test set ",NROW(test_set))) + #print(paste0("Train set ",NROW(train_set))) ## KNN training knn_predictions=knn(train=train_set%>%select(-simkey),test=test_set%>%select(-simkey),cl=train_set$simkey,k=min(10,NROW(train_set))) ## KNN analysis knn_cont_table=table(knn_predictions,test_set$simkey) knn_accuracy=(sum(diag(knn_cont_table)/sum(rowSums(knn_cont_table)))) + print(knn_accuracy) knn_prop_table=round(prop.table(knn_cont_table),digits=2) knn_f1_score=F1_Score2(test_set$simkey,knn_predictions) @@ -130,9 +133,9 @@ generate_accuracy_energy = function(wireless,wakeupfor,steps=1, accuracy=10,igno ########## Generate accuracy, energy, F1-Score and coverage data ########## -if(F){ # Toggle to train - lora60=generate_accuracy_energy("lora",60) +if(T){ # Toggle to train lora180=generate_accuracy_energy("lora",180) + lora60=generate_accuracy_energy("lora",60) nbiot60=generate_accuracy_energy("nbiot",60) nbiot180=generate_accuracy_energy("nbiot",180) accuracy=rbind(lora60$accuracy,lora180$accuracy,nbiot60$accuracy,nbiot180$accuracy) @@ -164,10 +167,10 @@ learning_curves=accuracy%>%group_by(wireless,wakeupfor,days,model)%>% min_f1_hintandextended=min(f1_hintandextended),max_f1_hintandextended=max(f1_hintandextended)) -ggplot(data=learning_curves%>%mutate(model=ifelse(model=="knn","KNN","DT"))%>%reduce_days(6),aes(linetype=model))+ +ggplot(data=learning_curves%>%mutate(model=ifelse(model=="knn","KNN","DT")),aes(linetype=model))+ geom_line(aes(days/30,mean_f1_baseline,color="Baseline"),size=1.2)+ geom_line(aes(days/30,mean_f1_extended,color="Extended"),size=1.2)+ - geom_line(aes(days/30,mean_f1_hintandextended,color="Hintandextended"),size=1.2)+labs(color="Classes",linetype="Model")+ + geom_line(aes(days/30,mean_f1_hintandextended,color="Hintandextended"),size=1.2)+labs(color="Classes colors",linetype="Model")+ facet_wrap(~wireless+wakeupfor)+ scale_x_continuous(breaks = seq(0, max(learning_curves$days/30)))+ scale_y_continuous(breaks = seq(0, 1, by = 0.1))+ @@ -178,20 +181,20 @@ ggplot(data=learning_curves%>%mutate(model=ifelse(model=="knn","KNN","DT"))%>%re legend.spacing=unit(-0.2,"cm"), legend.box.margin=margin(1,1,1,1))+ xlab("Training duration (months)")+ylab("Classes F1-Score") -ggsave("figures/days_f1-score.pdf",width=8.5,height=6) +ggsave("figures/months_f1-score.pdf",width=8.5,height=6) ## Plot Merge Accuracy -ggplot(data=learning_curves%>%mutate(model=ifelse(model=="knn","KNN","DT"))%>%reduce_days(3), +ggplot(data=learning_curves%>%mutate(model=ifelse(model=="knn","KNN","DT")), aes(days/30,mean_accuracy))+ - geom_line(aes(linetype=model),size=1.2)+xlab("Training duration (months)")+ylab("Model accuracy")+labs(linetype="Models")+ + geom_line(aes(linetype=model),size=1.2)+xlab("Training duration (months)")+ylab("Model overall accuracy (OAcc)")+labs(linetype="Models")+ scale_x_continuous(breaks = seq(0, max(learning_curves$days/30)))+ scale_y_continuous(breaks = seq(0, 1, by = 0.1))+ - facet_wrap(~wireless+wakeupfor)+ + facet_wrap(~wireless+wakeupfor)+expand_limits(x = 0, y = 0)+ th()+ theme(panel.grid.minor = element_blank(), legend.position = c(0.38,0.68)) -ggsave("figures/days_accuracy.pdf",width=8.5,height=6) +ggsave("figures/months_accuracy.pdf",width=8.5,height=6) ########## Energy and delta with raw policies ########## @@ -226,18 +229,18 @@ energy_coverage_delta%>%group_by(wireless,wakeupfor,simkey)%>%group_walk(functio }) ggplot(energy_coverage_delta,aes(days/30,delta_energy/1e3,color=simkey,shape=simkey))+ - geom_line(size=1.2)+ylab("Delta in energy (kJ)")+xlab("Training duration (months)")+ + geom_line(size=1.2)+ylab(TeX("Delta in $E_{total}$ (kJ)"))+xlab("Training duration (months)")+ facet_wrap(~wireless+wakeupfor,scale="free")+ - th()+theme(legend.position=c(0.61,0.93))+labs(color="Classes") + th()+theme(legend.position=c(0.61,0.95))+labs(color="Classes colors") ggsave("figures/delta_energy_training.pdf",height=6,width=10) ggplot(energy_coverage_delta,aes(days/30,delta_coverage,color=simkey))+ - geom_line(size=1.2)+ylab("Delta in coverage")+xlab("Training duration (months)")+ + geom_line(size=1.2)+ylab("Delta in network coverage")+xlab("Training duration (months)")+ facet_wrap(~wireless+wakeupfor,scale="free")+ - th()+theme(legend.position="top")+labs(color="Classes") + th()+theme(legend.position="top")+labs(color="Classes colors") ggsave("figures/delta_coverage_training.pdf",width=9) -ggplot(data=energy%>%reduce_days(6),aes(days/30,energy/1e6,group=setup,fill=setup))+ +ggplot(data=energy,aes(days/30,energy/1e6,group=setup,fill=setup))+ geom_bar(stat="identity",position="dodge")+ labs(fill="Wireless and Uptime")+ scale_x_continuous(breaks = seq(0, max(energy$days/30)))+ diff --git a/analysis/figures/days_accuracy.pdf b/analysis/figures/days_accuracy.pdf Binary files differindex c99896d..5fa60fe 100644 --- a/analysis/figures/days_accuracy.pdf +++ b/analysis/figures/days_accuracy.pdf diff --git a/analysis/figures/days_energy.pdf b/analysis/figures/days_energy.pdf Binary files differindex a11a71a..324d5f5 100644 --- a/analysis/figures/days_energy.pdf +++ b/analysis/figures/days_energy.pdf diff --git a/analysis/figures/days_f1-score.pdf b/analysis/figures/days_f1-score.pdf Binary files differindex 106d9db..cde87ca 100644 --- a/analysis/figures/days_f1-score.pdf +++ b/analysis/figures/days_f1-score.pdf diff --git a/analysis/figures/delta_coverage_training.pdf b/analysis/figures/delta_coverage_training.pdf Binary files differindex 3ea9f52..7fca6c9 100644 --- a/analysis/figures/delta_coverage_training.pdf +++ b/analysis/figures/delta_coverage_training.pdf diff --git a/analysis/figures/delta_energy_training.pdf b/analysis/figures/delta_energy_training.pdf Binary files differindex da6bc6a..ff96649 100644 --- a/analysis/figures/delta_energy_training.pdf +++ b/analysis/figures/delta_energy_training.pdf diff --git a/analysis/figures/months_accuracy.pdf b/analysis/figures/months_accuracy.pdf Binary files differnew file mode 100644 index 0000000..e0cc6bc --- /dev/null +++ b/analysis/figures/months_accuracy.pdf diff --git a/analysis/figures/months_f1-score.pdf b/analysis/figures/months_f1-score.pdf Binary files differnew file mode 100644 index 0000000..b45c1a4 --- /dev/null +++ b/analysis/figures/months_f1-score.pdf diff --git a/analysis/renv.lock b/analysis/renv.lock index e597486..1ba355c 100644 --- a/analysis/renv.lock +++ b/analysis/renv.lock @@ -699,6 +699,17 @@ "Hash": "3d5108641f47470611a32d0bdf357a72", "Requirements": [] }, + "latex2exp": { + "Package": "latex2exp", + "Version": "0.9.6", + "Source": "Repository", + "Repository": "CRAN", + "Hash": "f0173e0120a278700d48998e5a93a000", + "Requirements": [ + "magrittr", + "stringr" + ] + }, "lattice": { "Package": "lattice", "Version": "0.20-45", @@ -815,17 +826,6 @@ "askpass" ] }, - "patchwork": { - "Package": "patchwork", - "Version": "1.1.2", - "Source": "Repository", - "Repository": "CRAN", - "Hash": "63b611e9d909a9ed057639d9c3b77152", - "Requirements": [ - "ggplot2", - "gtable" - ] - }, "pillar": { "Package": "pillar", "Version": "1.8.1", |
