public void loadCenter(FileSystem fs, Path  path, Configuration conf){
			SequenceFile.Reader reader ;
			try {
			//initializae centers with number of empty vector
			for(int i =0 ;i<Constant.K;i++) {
				Map<Integer, Float> centerVect = new HashMap<Integer, Float>();
				centers.add(centerVect);
			}
			reader = new SequenceFile.Reader(fs, path, conf);
			IntWritable key = (IntWritable) reader.getKeyClass().newInstance();
			IntFloatPairArray value = (IntFloatPairArray) reader.getValueClass().newInstance();
			while(reader.next(key, value))	{
				int centerId = key.get();
				chkCenter[centerId] = true;
				Map<Integer, Float> centerVect = centers.get(centerId);
				IntFloatPair[] ifp = (IntFloatPair[]) value.toArray();
				for(int i=0; i<ifp.length; i++) {
					centerVect.put(ifp[i].getFirst(), ifp[i].getSecond());
				}
				//centers.set(centerId, centerVect);
			}
			
			//generate new center for empty ones
			for(int i =0 ;i<Constant.K;i++) {
				if(!chkCenter[i]) {
					Map<Integer, Float> centerVect = centers.get(i);
					for(int j=0; j<10;j++) {
						int fet = Kmath.getRandom(Constant.FEATURES);
						centerVect.put(fet, (float)1);
					}
				}
			}
			reader.close();
			} catch(Exception e) {
				System.out.println("WARNING: No "+path.toString()+":Couldn't read cache file:"+e.toString());
			}
		}