Skip to content
Snippets Groups Projects
Commit aa1f382d authored by bbauvin's avatar bbauvin
Browse files

Added executable script

parent 3d562b3d
No related branches found
No related tags found
No related merge requests found
...@@ -196,7 +196,7 @@ times = (extractionTime, kFoldLearningTime, kFoldPredictionTime, classificationT ...@@ -196,7 +196,7 @@ times = (extractionTime, kFoldLearningTime, kFoldPredictionTime, classificationT
stringAnalysis, imagesAnalysis = analysisModule.execute(kFoldClassifier, kFoldPredictedTrainLabels, stringAnalysis, imagesAnalysis = analysisModule.execute(kFoldClassifier, kFoldPredictedTrainLabels,
kFoldPredictedTestLabels, DATASET, CLASS_LABELS, kFoldPredictedTestLabels, DATASET, CLASS_LABELS,
NB_CLASS, trainArguments, LEARNING_RATE, LABELS_DICTIONARY, NB_CLASS, trainArguments, LEARNING_RATE, LABELS_DICTIONARY,
features, NB_CORES, times, NB_VIEW, kFolds) features, NB_CORES, times, NB_VIEW, kFolds, args.name)
logging.info(stringAnalysis) logging.info(stringAnalysis)
featureString = "-".join(features) featureString = "-".join(features)
labelsString = "-".join(labelsSet) labelsString = "-".join(labelsSet)
......
...@@ -63,8 +63,8 @@ def error(testLabels, computedLabels): ...@@ -63,8 +63,8 @@ def error(testLabels, computedLabels):
def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels, DATASET, CLASS_LABELS, def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels, DATASET, CLASS_LABELS,
NB_CLASS, trainArguments, LEARNING_RATE, LABELS_DICTIONARY, features, NB_CORES, times, NB_VIEW, kFolds): NB_CLASS, trainArguments, LEARNING_RATE, LABELS_DICTIONARY, features, NB_CORES, times, NB_VIEW, kFolds,
extractionTime, kFoldLearningTime, kFoldPredictionTime, classificationTime = times databaseName):
classifierConfigs, NB_ITER, classifierNames = trainArguments classifierConfigs, NB_ITER, classifierNames = trainArguments
if LEARNING_RATE<1.0: if LEARNING_RATE<1.0:
nbFolds = 2 nbFolds = 2
...@@ -99,8 +99,10 @@ def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels ...@@ -99,8 +99,10 @@ def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels
kFoldAccuracyOnTrainByIter.append([]) kFoldAccuracyOnTrainByIter.append([])
kFoldAccuracyOnTestByIter.append([]) kFoldAccuracyOnTestByIter.append([])
for iterIndex in range(NB_ITER): for iterIndex in range(NB_ITER):
kFoldAccuracyOnTestByIter[foldIdx].append(100 * accuracy_score(testLabels, PredictedTestLabelsByIter[iterIndex])) kFoldAccuracyOnTestByIter[foldIdx].append(100 * accuracy_score(testLabels,
kFoldAccuracyOnTrainByIter[foldIdx].append(100 * accuracy_score(trainLabels, PredictedTrainLabelsByIter[iterIndex])) PredictedTestLabelsByIter[iterIndex]))
kFoldAccuracyOnTrainByIter[foldIdx].append(100 * accuracy_score(trainLabels,
PredictedTrainLabelsByIter[iterIndex]))
kFoldBestClassifiers.append(bestClassifiers) kFoldBestClassifiers.append(bestClassifiers)
kFoldGeneralAlphas.append(generalAlphas) kFoldGeneralAlphas.append(generalAlphas)
kFoldBestViews.append(bestViews) kFoldBestViews.append(bestViews)
...@@ -111,14 +113,20 @@ def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels ...@@ -111,14 +113,20 @@ def execute(kFoldClassifier, kFoldPredictedTrainLabels, kFoldPredictedTestLabels
totalAccuracyOnTest = np.mean(kFoldAccuracyOnTest) totalAccuracyOnTest = np.mean(kFoldAccuracyOnTest)
extractionTime, kFoldLearningTime, kFoldPredictionTime, classificationTime = times extractionTime, kFoldLearningTime, kFoldPredictionTime, classificationTime = times
classifierConfigs, NB_ITER, classifierNames = trainArguments classifierConfigs, NB_ITER, classifierNames = trainArguments
weakClassifierConfigs = [getattr(globals()[classifierName], 'getConfig')(classifierConfig) for classifierConfig, classifierName in zip(classifierConfigs, classifierNames) ] weakClassifierConfigs = [getattr(globals()[classifierName], 'getConfig')(classifierConfig) for classifierConfig,
classifierAnalysis = ["\n\t\t-"+classifierName+" "+weakClassifierConfig for classifierName, weakClassifierConfig in zip(classifierNames, weakClassifierConfigs)] classifierName
in zip(classifierConfigs, classifierNames) ]
classifierAnalysis = ["\n\t\t-"+classifierName+" "+weakClassifierConfig + "on "+feature for classifierName,
weakClassifierConfig,
feature
in zip(classifierNames, weakClassifierConfigs, features)]
bestViews = [findMainView(np.array(kFoldBestViews)[:,iterIdx]) for iterIdx in range(NB_ITER)] bestViews = [findMainView(np.array(kFoldBestViews)[:,iterIdx]) for iterIdx in range(NB_ITER)]
stringAnalysis = "\t\tResult for Multiview classification with Mumbo" \ stringAnalysis = "\t\tResult for Multiview classification with Mumbo" \
"\n\nAverage accuracy :\n\t-On Train : "+str(totalAccuracyOnTrain)+"\n\t-On Test : "+str(totalAccuracyOnTest)+ \ "\n\nAverage accuracy :\n\t-On Train : "+str(totalAccuracyOnTrain)+"\n\t-On Test : "+\
"\n\nDataset info :\n\t-Database name : "+"\n\t-Labels : "+', '.join(LABELS_DICTIONARY.values())+"\n\t-Views : "+', '.join(features)+"\n\t-"+str(nbFolds)+" folds"\ str(totalAccuracyOnTest)+ "\n\nDataset info :\n\t-Database name : "+databaseName+"\n\t-Labels : "+\
"\n\nClassification configuration : \n\t-Algorithm used : Mumbo \n\t-Iterations : "+str(NB_ITER)+"\n\t-Weak Classifiers : "+" ".join(classifierAnalysis)+ \ ', '.join(LABELS_DICTIONARY.values())+"\n\t-Views : "+', '.join(features)+"\n\t-"+str(nbFolds)+\
"\n\n For each iteration : " " folds\n\nClassification configuration : \n\t-Algorithm used : Mumbo \n\t-Iterations : "+\
str(NB_ITER)+"\n\t-Weak Classifiers : "+" ".join(classifierAnalysis)+ "\n\n For each iteration : "
for iterIndex in range(NB_ITER): for iterIndex in range(NB_ITER):
stringAnalysis += "\n\t- Iteration " + str(iterIndex + 1) stringAnalysis += "\n\t- Iteration " + str(iterIndex + 1)
......
2016-08-05 06:52:40,021 INFO: ### Main Programm for Multiview Classification 2016-08-05 11:47:56,258 INFO: ### Main Programm for Multiview Classification
2016-08-05 06:52:40,021 INFO: ### Classification - Database : MultiOmic ; Views : Methyl, MiRNA, RNASEQ, Clinical ; Algorithm : Mumbo ; Cores : 4 2016-08-05 11:47:56,258 INFO: ### Classification - Database : MultiOmic ; Views : Methyl, MiRNA, RNASEQ, Clinical ; Algorithm : Mumbo ; Cores : 4
2016-08-05 06:52:40,022 INFO: Start: Read CSV Database Files for MultiOmic 2016-08-05 11:47:56,258 INFO: Start: Read CSV Database Files for MultiOmic
2016-08-05 06:52:40,022 DEBUG: Start: Getting Methylation Data 2016-08-05 11:47:56,259 DEBUG: Start: Getting Methylation Data
import os
os.system('python ExecMultiview.py -log --name MultiOmic --features Methyl:MiRNA:RNASEQ:Clinical --pathF /home/bbauvin/Documents/Data/Data_multi_omics/ --CL_split 5 --CL_nb_class 2 --CL_classes Positive:Negative --CL_type Mumbo --CL_cores 4 --MU_type DecisionTree:DecisionTree:DecisionTree:DecisionTree --MU_config 1:0.1 1:0.1 1:0.9 1:0.9 --MU_iter 100')
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment