HyperOpt中文文檔導讀

HyperOpt中文文檔導讀

4 人贊了文章

在2017年的聖誕節前,我翻譯了有關HyperOpt的中文文檔,這也算是填補了一個空白,以此作為獻給所有中國程序員,以及所有其他機器學習相關行業人員的聖誕禮物。聖誕快樂,各位。

HyperOpt中文文檔導讀

翻譯的文檔已經發佈於github,請在我的項目Hyperopt_CN中的wiki查看相應文檔.CSDN,知乎同步更新中.

HyperOpt中文版wiki文檔內容包括以下內容:

  • HyperOpt中文文檔導讀,即真正的中文文檔主頁
  • Home:主頁,即原Hyperopt相應wiki文檔中的對應部分,下面的鏈接亦如此
  • Cite:引用
  • FMin:使用FMin方法
  • Installation Notes:安裝說明
  • Interfacing With Other Languages:在其他語言中使用Hyperopt
  • Parallelizing Evaluations During Search via MongoDB:使用MongoDB進行並行搜索
  • Recipes:原文中暫時只有一個給定值區間如何採樣的鏈接
  • RelatedWork:相關工作
  • Scipy2013

下面是hyperopt的官網首頁,作為對其的簡單介紹,注意其中的鏈接全部是官網的鏈接,其中的wiki鏈接為英文原文鏈接

Hyperopt

在Python中進行分散式非同步超參數優化

Font Tian translated this article on 22 December 2017

hyperopt 是一個Python庫,可以用來尋找實數,離散值,條件維度等搜索空間的最佳值。

# define an objective function def objective(args): case, val = args if case == case 1: return val else: return val ** 2 # define a search space from hyperopt import hp space = hp.choice(a, [ (case 1, 1 + hp.lognormal(c1, 0, 1)), (case 2, hp.uniform(c2, -10, 10)) ]) # minimize the objective over the space from hyperopt import fmin, tpe best = fmin(objective, space, algo=tpe.suggest, max_evals=100) print best # -> {a: 1, c2: 0.01420615366247227} print hyperopt.space_eval(space, best) # -> {case 2, 0.01420615366247227} 演算法

目前兩種演算法的實現:

  • 隨機搜索
  • Tree of Parzen Estimators (TPE)

Hyperopt 設計伊始,是包括基於高斯過程與回歸樹的貝葉斯優化演算法的,但是現在這些都還沒有被實現.

同時,Hyperopt所有的演算法都可以通過MongoDB進行串列或者並行計算.

安裝

用戶安裝

pip install hyperopt

開發版安裝

git clone https://github.com/hyperopt/hyperopt.git (cd hyperopt && python setup.py develop) (cd hyperopt && nosetests)

更多信息,請參見安裝說明。

文檔

文檔現在託管在wiki上,但這裡有一些相關頁面的鏈接:

  • 基礎教程
  • 安裝筆記
  • 使用MongoDB

實例

在wiki中打開Hyperot


推薦閱讀:

計算與認知 | 枝蔚的論文庫0326-更新完
一周一論文(翻譯)—— [PVLDB 12] Distributed GraphLab A Framework for Machine Learning
2-3 Cost Function-Intuition I
SVD奇異值分解的數學描述
發布Compute.scala,多維數組上的科學計算庫

TAG:機器學習 | 人工智慧 | Python框架 |