private void computeMean(List<Instance> instances){
        if(instances==null) return;
        for(Instance instance : instances){
            Iterator<Map.Entry<Integer,Double>> it = instance.getFeatureVector().getKeyValue();
            while(it.hasNext()){
                Map.Entry<Integer,Double> entry = it.next();
                int key = entry.getKey();
                double value = this.getMean(key)+entry.getValue()/instances.size();
                if(value!=0)
                    this._mean.put(key, value);
                else
                    this._mean.remove(key);
            }
        }
    }