| 
					
				 | 
			
			
				@@ -28,6 +28,10 @@ public class ThompsonSamplingModel extends Model { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // key = adid, value = <exp, click, conversation> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private Map<Long, AdActionFeature> thompsonSamplingModel; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private static final int alpha = 6; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private static final int beta_click = 100; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private static final int beta_conversion = 1000; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public ThompsonSamplingModel() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         //配置不同环境的hdfs conf 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         this.thompsonSamplingModel = new HashMap<>(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -80,10 +84,16 @@ public class ThompsonSamplingModel extends Model { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public double score(AdRankItem adRankItem, String ctrOrCVR) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         double score = 0.0f; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         AdActionFeature adActionFeature = this.thompsonSamplingModel.get(adRankItem.getAdId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(ctrOrCVR.equals("ctr")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            score = this.betaSampler(adActionFeature.getAdClick(), adActionFeature.getAdView()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        if(ctrOrCVR.equals("cvr")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            score = this.betaSampler(adActionFeature.getAdConversion(), adActionFeature.getAdView()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (ctrOrCVR.equals("ctr")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int alpha_ctr = (int) adActionFeature.getAdClick() + this.alpha ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int beta_ctr = this.beta_click + (int)adActionFeature.getAdView() - (int)adActionFeature.getAdClick(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            score = this.betaSampler(alpha_ctr, beta_ctr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (ctrOrCVR.equals("cvr")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int alpha_cvr = (int) adActionFeature.getAdClick() + this.alpha ; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int beta_cvr = this.beta_conversion + (int)adActionFeature.getAdView() - (int)adActionFeature.getAdConversion(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            score = this.betaSampler(alpha_cvr, beta_cvr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return score; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 |