public static Node getMetaTree(ArrayList<ArrayList<Double>>trainSample){
		Node meta_node=new Node();
		ArrayList<ArrayList<Double>>D=new ArrayList<ArrayList<Double>>();
		for(int i=0;i<10;i++){
			ArrayList<ArrayList<Double>>test=new ArrayList<ArrayList<Double>>();
			ArrayList<ArrayList<Double>>train=new ArrayList<ArrayList<Double>>();
			ArrayList<Node>node_list=new ArrayList<Node>();//5棵树根节点list
			Tools.divide2(i, trainSample, test, train);
			for(int j=0;j<5;j++){
				Node node=new Node(train);
				getDecisionTree(node,(j+1)*5);
				node_list.add(node);//循环生成5棵不同的树
			}
			ArrayList<ArrayList<Double>>Di=new ArrayList<ArrayList<Double>>();
			for(Node node:node_list){//对每棵树产生test对应预测的lable_lisy
				ArrayList<Double> lable_list=new  ArrayList<Double>();//5列lable预测值
				for(ArrayList<Double> vector:test){
					lable_list.add(getResult(vector,node));
				}
				Di.add(lable_list);
			}
			Di=Tools.getChangeMatrix(Di);
			for(int j=0;j<Di.size();j++){
				Di.get(j).add(test.get(j).get(attribte_list_size));//将实际lable值加入
			}
			D.addAll(Di);
		}
		meta_node.setDocList(D);
		getDecisionTree(meta_node,6);
		return meta_node;
	}