Skip to content
Snippets Groups Projects
Select Git revision
  • f5c33df2f38aacab7c1bc833eb6a038d60406cb1
  • master default
  • object
  • develop protected
  • private_algos
  • cuisine
  • SMOTE
  • revert-76c4cca5
  • archive protected
  • no_graphviz
  • 0.0.2
  • 0.0.1
12 results

EarlyFusion.py

Blame
  • user avatar
    bbauvin authored
    f5c33df2
    History
    EarlyFusion.py 1.22 KiB
    #!/usr/bin/env python
    # -*- encoding: utf-8
    
    import numpy as np
    from utils.Dataset import getV
    
    
    class EarlyFusionClassifier(object):
        def __init__(self, monoviewClassifierName, monoviewClassifierConfig, NB_CORES=1):
            self.monoviewClassifierName = monoviewClassifierName[0]
            self.monoviewClassifiersConfig = monoviewClassifierConfig[0]
            print monoviewClassifierConfig
            self.monoviewClassifier = None
            self.nbCores = NB_CORES
            self.monoviewData = None
    
        def makeMonoviewData_hdf5(self, DATASET, weights=None, usedIndices=None, viewsIndices=None):
            if type(viewsIndices)==type(None):
                viewsIndices = np.arange(DATASET.get("Metadata").attrs["nbView"])
            nbView = len(viewsIndices)
            if not usedIndices:
                uesdIndices = range(DATASET.get("Metadata").attrs["datasetLength"])
            if type(weights)== type(None):
                weights = np.array([1/nbView for i in range(nbView)])
            if sum(weights)!=1:
                weights = weights/sum(weights)
            self.monoviewData = np.concatenate([weights[index]*getV(DATASET, viewIndex, usedIndices)
                                                             for index, viewIndex in enumerate(viewsIndices)], axis=1)