• 算法選擇

    編輯
    本詞條由“匿名用戶” 建檔。

    算法選擇

    編輯

    算法選擇(有時也稱為每實例算法選擇或離線算法選擇)是一種元算法技術,在逐個實例的基礎上從組合中選擇一種算法。它的動機是,在許多實際問題上,不同的算法具有不同的性能特征。也就是說,雖然一種算法在某些情況下表現良好,但在另一些情況下卻表現不佳,反之亦然。如果我們能夠確定何時使用哪種算法,我們就可以針對每個場景進行優化,并提高整體性能。這就是算法選擇所要做的。應用算法選擇技術的xxx前提是,存在(或可以構建)一套互補的算法。

    算法選擇的例子

    編輯

    布爾可滿足性問題(和其他硬組合問題)算法選擇的一個著名應用是布爾可滿足性問題。在這里,算法組合是一組(互補的)SAT求解器,實例是布爾公式,成本指標是例如平均運行時間或未解決實例的數量。因此,我們的目標是為每個單獨的實例選擇一個表現良好的SAT求解器。以同樣的方式,算法選擇可以應用于許多其他的-困難問題(如混合整數編程、CSP人工智能規劃、TSP、MAXSAT、QBF和答案集編程)。在SAT競賽中獲勝的系統有SATzilla、3S和CSHC。

    機器學習

    編輯

    機器學習中,算法選擇更多地被稱為元學習。算法組合包括機器學習算法(例如,隨機森林、SVM、DNN),實例是數據集,成本指標是例如錯誤率。因此,目標是預測哪種機器學習算法在每個數據集上的誤差小。

    實例特征

    編輯

    算法選擇問題主要是通過機器學習技術來解決的。通過用數字特征表示問題實例{displaystylef},算法的選擇可以被看作是對問題實例的選擇。的映射,算法選擇可以被看作是一個多類分類問題,通過學習實例特征是實例的數字表示。例如,我們可以計算變量的數量、子句的數量、布爾公式的平均子句長度,或者ML數據集的樣本數量、特征、類平衡,以獲得對其特征的印象。

    靜態特征與探測特征

    編輯

    我們對兩種特征進行區分。靜態特征在大多數情況下是一些計數和統計(例如SAT中的子句與變量之比)。這些特征從非常便宜的特征(比如變量的數量)到非常復雜的特征(比如關于變量-句子圖的統計)。探測特征(有時也被稱為里程碑特征)是通過在一個實例上運行一些算法行為分析來計算的(比如一個便宜的決策算法在ML數據集上的準確性,或者在一個布爾公式上短時間內運行一個隨機的局部搜索求解器)。這些特征往往比簡單的靜態特征成本更高。特征成本取決于所使用的性能指標例如,如果我們使用運行時間作為性能指標,我們就會把計算實例特征的時間計入算法選擇系統的性能中。

    概率算法

    SAT求解是一個具體的例子,這種特征成本不能被忽視,因為CNF公式的實例特征可以是非常便宜的(例如,對于DIMACs格式的CNF來說,得到變量的數量可以在恒定的時間內完成),也可以是非常昂貴的(例如,圖特征可能要花費幾十或幾百秒)。在這種情況下,在實踐中考慮特征計算的開銷是很重要的;否則會對算法選擇方法的性能產生誤導。例如,如果可以非常準確地決定選擇哪種算法,但特征是組合算法的運行時間,那么組合方法就沒有任何好處。

    內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/175442/

    (1)
    詞條目錄
    1. 算法選擇
    2. 算法選擇的例子
    3. 機器學習
    4. 實例特征
    5. 靜態特征與探測特征

    輕觸這里

    關閉目錄

    目錄
    91麻精品国产91久久久久