選擇合適的演算法

2021-10-05 03:28:25 字數 798 閱讀 3577

如何選擇合適的演算法

選擇實際可用的演算法,必須考慮下面兩個問題:

一、使用機器學習演算法的目的,想要演算法完成何種任務,比如是**明天下雨的概率還是對投票者按照興趣分組;

二、需要分析或收集的資料是什麼。

首先考慮使用機器學習演算法的目的。如果想要**目標變數的值,則可以選擇監督學習演算法,否則可以選擇無監督學習演算法。確定選擇監督學習演算法之後,需要進一步確定目標變數型別,如果目標變數是離散型,如是/否、1/2/3、 a/b/c或者紅黃/黑等,則可以選擇分類器演算法;如果目標變數是連續型的數值,如0.0~ 100.00、-999 ~ 999或者+∞~-∞等,則需要選擇回歸演算法。

如果不想**目標變數的值,則可以選擇無監督學習演算法。進一步分析是否需要將資料劃分為離散的組。如果這是唯一的需求,則使用聚類演算法;如果還需要估計資料與每個分組的相似程度,則需要使用密度估計演算法。

其次需要考慮的是資料問題。我們應該充分了解資料,對實際資料了解得越充分,越容易建立符合實際需求的應用程式。主要應該了解資料的以下特性:特徵值是離散型變數還是連續型變數,特徵值中是否存在缺失的值,何種原因造成缺失值,資料中是否存在異常值,某個特徵發生的頻率如何(是否罕見得如同海底撈針),等等。充分了解上面提到的這些資料特性可以縮短選擇機器學習演算法的時間。

我們只能在一定程度上縮小演算法的選擇範圍, 一般並不存在最好的演算法或者可以給出最好結果的演算法,同時還要嘗試不同演算法的執行效果。對於所選的每種演算法,都可以使用其他的機器學習技術來改進其效能。在處理輸人資料之後,兩個演算法的相對效能也可能會發生變化。一般說來發現最好演算法的關鍵環節是反覆試錯的迭代過程。

深度學習 選擇合適的檢測演算法

如今落地的cv業務所用方法不一。但其中有兩種演算法簡單高效,較為常用 演算法優點 缺點改進方案 retinanet很簡單 精度較高 速度快 fp較多 增加後處理 fpn faster r cnn較簡單 精度很高 fp少 速度有待提高 簡化basemodel 甚至連無人駕駛這種對實時性要求極高的應用場...

選擇合適的游標型別

背景 定義游標的時候 如果不指定 static 關鍵字的時候 則預設定義的游標是動態 dynamic 的 動態 dynamic 游標會反映在滾動游標時對結果集內的各行所做的所有資料更改。行的資料值 順序和成員身份在每次提取時都會更改。動態游標不支援 absolute 提取選項。因為動態游標會消耗資源...

選擇合適的游標型別

背景 定義游標的時候 如果不指定 static 關鍵字的時候 則預設定義的游標是動態 dynamic 的 動態 dynamic 游標會反映在滾動游標時對結果集內的各行所做的所有資料更改。行的資料值 順序和成員身份在每次提取時都會更改。動態游標不支援 absolute 提取選項。因為動態游標會消耗資源...