'update'
[epclust.git] / TODO
diff --git a/TODO b/TODO
index 7e6aa90..957c111 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,50 +1,53 @@
 simulateur : complètement aléatoire ? from Irish dataset ?
+wmtsa : wavBootstrap
 wavelets methods in statistics with R - p180
 
-00-convertir2009 et 2010.R
-01-extractFeatures.R pour 2009 [utilise Stbr.R] (car on prédit 2010, pas besoin)
-02-cluster2009.R
-03-compute-sum-of-classes2009.R
-05-cluster2WER-2009.R
-06-prediction.R
-
 Essayer distance wdist du package biwavelet ?
 
 geometric structure of high dim data and dim reduction 2011
 
-https://docs.docker.com/engine/getstarted/step_one/
+Piste à explorer pour les comparaisons: H20
+
+#https://stat.ethz.ch/pipermail/r-help/2011-June/280133.html
+#randCov = function(d)
+#{
+#      x <- matrix(rnorm(d*d), nrow=d)
+#      x <- x / sqrt(rowSums(x^2))
+#      x %*% t(x)
+#}
 
-A faire:
- - finir les experiences (sur nb de classes, nb de curves / chunk, nb de procs)
-   et sur d'autres architectures
+#TODO: map-reduce more appropriate R/clustering.R ligne 88
 
-dans old_C_code/build :
-cmake ../stage1/src
-make
+#TODO: use dbs(),
+#https://www.r-bloggers.com/debugging-parallel-code-with-dbs/
+#http://gforge.se/2015/02/how-to-go-parallel-in-r-basics-tips/
 
-dans data/, lancer R puis :
-source("../old_C_code/wrapper.R")
-serialize("../old_C_code/build", "2009.csv","2009.bin",1)
-library(parallel)
-np = detectCores()
-nbSeriesPerChunk = 3000
-nbClusters = 20
-ppam_exe("../old_C_code/build",np,"2009.bin",nbSeriesPerChunk,nbClusters)
-C = getMedoids("../old_C_code/build", "ppamResult.xml", "ppamFinalSeries.bin")
-first100series = deserialize("../old_C_code/build", "2009.bin", "2009.csv.part", "1-100")
-distor = getDistor("../old_C_code/build", "ppamResult.xml", "2009.bin")
+PLOT:
+plot manifold 2D distances WER /
+fenetre tempo forme des courbes /
+medoids /
+gain en prevision: clust puis full --> enercast
 
-- interface matrice -> binaire
-        OK
+-------
 
- - courbe synchrone
-        ??
+Voici le code :
 
-Piste à explorer pour les comparaisons: H20
+library(epclust)
+
+n <- 5
+N <- 128
+M <- matrix(runif(n * N), nrow = n) #séries en lignes
+M <- t(apply(M, 1, cumsum)) / sqrt(n * N)
+matplot(t(M), type = 'l', lty = 1)
+
+dists3a <- computeWerDists(1:n, function(inds) M[,inds], n)
+
+# je passe de distance Wer à corrélations : moralement tout est à 0
+summary((1 - dists3a[lower.tri(dists3a)]^2) / N / n)
 
-renvoyer nombre d'individues par classe ? (+ somme ?)
-hypothèse : données déjà ordonnées 48 1/2H sur 365j
-utiliser du mixmod avec modèles allongés
-doit toutner sur machine plutôt standard, utilisateur "lambda"
-utiliser Rcpp ?
+# or, les courbes sont très similaires, nous devrions être proche de 1 !
+corM <- cor(t(M))
+summary(corM[lower.tri(corM)])
 
+#si pas lissage --> on doit trouver 1 : TOCHECK
+#regarder biwavelets smooth.wavelet : s'en inspirer