2015-10-19 157 views
0

我試圖使用在Yelp創建的「度量優化引擎」MOE來調整機器學習算法的超參數。他們的文檔有點受限,我很難找到可遵循的示例。如何使用MOE調整機器學習超參數?

說我想找到CGammakernel type最佳值的Support Vector Machine,基於以下分佈:

SVC_PARAMS = [ 
    { 
     "bounds": { 
      "max": 10.0, 
      "min": 0.01, 
     }, 
     "name": "C", 
     "type": "double", 
     "transformation": "log", 
    }, 
    { 
     "bounds": { 
      "max": 1.0, 
      "min": 0.0001, 
     }, 
     "name": "gamma", 
     "type": "double", 
     "transformation": "log", 
    }, 
    { 
     "type": "categorical", 
     "name": "kernel", 
     "categorical_values": [ 
      {"name": "rbf"}, 
      {"name": "poly"}, 
      {"name": "sigmoid"}, 
     ], 
    }, 
] 

,我試圖最大化的目標函數是accuracy score我的訓練集。

我將如何使用MOE's api來完成此操作?

回答

0

MOE不支持分類變量,它只允許連續超參數。要實現您正在查找的內容,可以將每個分類實例作爲單獨問題來優化,然後使用MOE examples中概述的流程。最後,您可以從每種內核類型的調優模型中選擇最佳模型。

或者,您可以使用由創建MOE的團隊構建的SigOpt。我們建立並擴展了教育部開展的大量工作。它提供對連續,整數和分類參數的支持以及MOE中未找到的許多其他功能和增強功能。我們在this blog post中概括了這個確切的例子,並在帖子中提供了示例代碼。您可以在我們的免費試用級或免費學術級中運行此示例。

+0

謝謝Scott。參數示例取自您提到的確切的SigOpt博客文章。 –