A. 如何提高機器學習演算法的召回率
最近在做文本分類,遇到了一些問題,想問問大家有沒有好的方法。為了節省時間,我只採取了部分數據來跑演算法(全部數據跑了之後的結果和這個差不多)
訓練集:4837 documents
測試集:2074 documents
樣本比例:正樣本:負樣本 = 1:3
預測結果中,有的演算法在正樣本中預測的精確率還行(0.95-1.00之間),但是召回率非常差,通常只有0.01和0.02左右,KNeighbors和DecisionTree的精確率和召回率都是0,只有NaiveBayes和BernoulliNB的PR和Recall比較平均,但是也沒有到0.8。
問題:我查了一下那些召回率較低(0.01)的演算法,475個樣本中(正樣本),實際上只有5個被預測正確了的,但是具體原因沒有查出來。
我想請問一下:1.召回率低是因為樣本極度不平衡造成的嗎?(雖然我認為1:3的比例不算極度不平衡。)2.在這種樣本不平衡的問題上,有沒有什麼好的方法可以提高召回率?我試過SMOTE方法(過采樣和欠采樣都有試過),但對於我的數據集並沒有什麼好的效果,不止到有沒有有什麼好的方法可以解決這個問題?謝謝!
添加評論
分享
查看全部 11 個回答
0贊同反對,不會顯示你的姓名
Elvin 全是細枝末節,做一個樂於分享的人
兩個問題一並回答一下,根據你的描述,我覺得問題應該不是出在正負樣本比上,1比3這個比例不但不是非常不均衡,相反在我看來已經是非常均衡了。以前做比賽有處理過正負比1比10000的數據,我覺得這才叫不平衡,才需要使用類似上采樣,下采樣,以及SMOTE演算法(都用過),而且這樣的情況下recall,F1等指標的提升是顯著的。我覺得正負比例在1:1至1:100間差別都不會太大,需要根據具體問題做離線交叉驗證去找到最好的比例。
所以我建議你不用再糾結正負樣本比的問題,可以再回頭看一看你的數據集,一方面看一看代碼是否有誤?數據集是否太小?(總覺得你的數據集太小,而且測試集相對於訓練集太大)另外訓練集,測試集的劃分是否正確?或者重新劃分一下訓練測試集做一下交叉驗證看一看各項指標再具體研究。
B. 單片機心率采樣演算法
單片機新率采樣的演算法是非常復雜的,所以這時候你必須用用一個公式,你才能去給他算出來,這個公式非常簡易的,所以你套公式就可以。
C. 采樣頻率是怎麼計算出來的
采樣點數的多少與要求多大的頻率解析度有關,例如:機器轉速3000r/min=50Hz,如果要分析的故障頻率估計在8倍頻以下,要求譜圖上頻率解析度ΔF=1 Hz ,則采樣頻率和采樣點數設置為:
最高分析頻率Fm=8·50Hz=400Hz;
采樣頻率Fs=2.56·Fm=2.56 ·400Hz=1024Hz;
采樣點數N=2.56·(Fm/ΔF)=2.56·(400Hz/1Hz)=1024
(3)上采樣演算法擴展閱讀:
采樣頻率只能用於周期性采樣的采樣器,對於非周期性采樣的采樣器沒有規則限制。
采樣頻率必須大於被采樣信號帶寬的兩倍,另外一種等同的說法是奈奎斯特定律必須大於被采樣信號的帶寬。如果信號的帶寬是100Hz,那麼為了避免混疊現象采樣頻率必須大於200Hz。換句話說就是采樣頻率必須至少是信號中最大頻率分量頻率的兩倍,否則就不能從信號采樣中恢復原始信號。
D. Mac電腦求推薦一款無損音樂播放器
HQPlayer是一款無損音樂播放器。HQPlayer具有Delta-Sigma調制器、支持專業的ASIO驅動程序、64/80位浮點處理、可選高頻擴展、播放立體聲、繞過操作系統軟體混頻器和采樣率轉換等功能。
HQPlayer 4 pro破解版安裝教程
下載完成後雙擊HQPlayer pro.pkg安裝,歡迎安裝HQPlayer promac版,點擊繼續
原文出自:https://mac.orsoon.com/Mac/175301.html
HQPlayer pro mac破版軟體介紹
HQPlayer是Mac OS X的高質量音頻播放器。HQPlayer還具有幾種可選的高質量上采樣和下采樣演算法以及可選的抖動,雜訊整形和調制器演算法。所有現代DAC都採用過采樣和delta-sigma調制,但是硬體實現或多或少受到資源的限制。
E. 查看圖片時圖像為什麼可以放大縮小,什麼原理,放大查看或縮小查看,圖像的像素有沒有變化
放大縮小隻是對圖片的一個副本進行操作的,原始圖片不會變
F. 為什麼機器學習中需要采樣演算法
學習機器學習十大演算法,相當於電腦的中級水平。演算法(Algorithm)是指解題方案的准確而完整的描述,是一系列解決問題的清晰指令,演算法代表著用系統的方法描述解決問題的策略機制。也就是說,能夠對一定規范的輸入,在有限時間內獲得所要求的輸
G. 非均勻離散傅立葉變換的演算法
離散傅里葉級數(DFS)與連續傅立葉級數相比有很大的區別。最大的不同在於離散時間傅里葉級數的系數序列是周期的。
離散傅里葉級數的公式
周期為N的周期序列<math>\left\{ a_n\right\}</math>,其離散傅里葉級數為<math>\left\{ x_k \right\}</math>:
<math>x[k]=\sum_{n=<N>} a_n\cdot e^{-jn(\frac{2\pi}{N})k}</math>
其中,DFS的逆變換序列:
<math>a_n=\frac{1}{N}\sum_{k=<N>} x[k]\cdot e^{jn(\frac{2\pi}{N})k}</math> (k=<N>表示對一個周期N內的值求和)
進一步分析
連續周期信號的離散化(下面的討論中,<math>\omega_0=\frac{2\pi}{T}</math>):
首先,在傅里葉級數一文中,我們知道函數<math>f(t)=e^{j(\frac{2\pi}{T})t}</math>是對於任意的T是周期為T的函數,然而其對應的離散信號則不一定是周期的,可以證明,只有當<math>\frac{\omega_0}{2\pi}</math>是有理數時,離散信號f[n]才是周期函數。
其次,在滿足條件1的前提下,連續周期信號<math>f_k(t)</math>對應的離散信號<math>f_k[n]=e^{jk(\frac{2\pi}{N})n}</math>對k也具有周期性,其周期為N,即<math>f_k[n]</math>中只有N個不同的序列。
從離散時間傅里葉變換的系數公式我們可以看出,<math>a_k</math>也是對k周期為N的函數。
離散傅里葉變換實際上是離散時間傅里葉級數在主值區間上的取值。我們注意到,離散傅里葉變換是對非周期函數f[n]進行的,如果我們對f[n]的定義拓廣為周期函數f'[n]:<math>f'[n]=\sum _{i=-\infty}^{+\infty}f(n+i\cdot N)</math>。並且當<math>N\to \infty</math>時,f'[n]實際上就是f[n],那麼我們現在可以求出f'[n]的傅里葉級數。同樣,當<math>N\to \infty</math>時無窮級數變成了積分,得到的結果是一個連續的周期函數<math>X(e^{j\omega})</math>(正如離散傅里葉變換一文中所述),這就是f[n]的離散時間傅里葉變換。這時,只需在它的主值區間上采樣,就可以得到離散傅里葉變換的變換序列。
H. 數據挖掘不同領域中的采樣方法有哪些
1,關聯規則的采樣
挖掘關聯規則的任務通常與事務處理與關系資料庫相關,該任務需要反復遍歷資料庫,因此在大數據集上將花費大量的時間。有很多的演算法可以改進關聯規則演算法的效率與精度,但在精度保證的前提下,采樣是最直接與最簡單的改進效率的方法。
2.分類的采樣
分類一般分為三種類型:決策樹、神經網路及統計方法(如無偏差分析),在這些演算法中均有使用采樣的案例。分類的采樣一般有四種,一種是隨機采樣,另外三種是非隨機采樣,分別是「壓縮重復」、「窗口」及「分層」。
3.聚類的采樣
在聚類中進行采樣有若乾的用途。有些聚類演算法使用采樣進行初始化工作,例如,利用采樣得到的樣本得到初始化的參數,然後再對大數據集進行聚類。當處理大數據集時,需要降低演算法使用的空間。為了得到較好的聚類,根據數據的分布情況需要採用不同的采樣方法。隨機采樣仍然是一種常規的方法,在隨機采樣忽略了小的聚類的情況下,一般採用非隨機采樣的方法。非隨機采樣的方法中最常用的是分層采樣。例如,在密度差別很大的數據集中,根據密度的不同,采樣的樣本數量可以不同,在密度較高的區域采樣的次數少一些,而在密度稀疏的區域,采樣的次數多一些。
4.擴充(Scaling-Up)的數據挖掘演算法的采樣
擴充是指利用已有的數據挖掘演算法能夠高斂地處理大數據集。當數據挖掘的演算法初期是處理小數據集的情況下,處理大數據集就會受到限制。在這種情況下,一般會採用分而抬之的方法:將大數據集分解成較小的互不重疊的數據集,利用己有演算法進行處理,然後,將小數據集得出的結果合並成最終的結果。需要注意的是,這種方法等價於將困難轉嫁到合並步驟,即需要復雜的處理才能得到正確的結果。因此,整體的復雜性沒有降低。
I. Levinson-Durbin演算法
用線性方程組的常用解法(例如高斯消元法)求解式(4-22),需要的運算量數量級為p3。但若利用系數矩陣的對稱性和Toeplitz性質,則可得到一些高效演算法,Levinson-Durbin演算法就是其中最著名、應用最廣泛的一種,其運算量數量級為p2。這是一種按階次進行遞推的演算法,即首先以AR(0)和AR(1)模型參數作為初始條件,計算AR(2)模型參數;然後根據這些參數計算AR(3)模型參數,等等,一直到計算出AR(p)模型參數為止。這樣,當整個迭代計算結束後,不僅求得了所需要的p階AR模型的參數,而且還得到了所有各低階模型的參數。
Levinson演算法的關鍵是要推導出由AR(k)模型的參數計算AR(k+1)模型的參數的迭代計算公式。對式(4-22)分析可知,Yule-Walker方程的系數矩陣具有以下兩個特點:
(1)從0階開始逐漸增加階次,可看出,某階方程的系數矩陣包含了前面各階系數矩陣(作為其子矩陣)。
(2)系數矩陣先進行列倒序再進行行倒序(或先行倒序再列倒序)後矩陣不變。
設已求得k階Yule-Walker方程
地球物理信息處理基礎
的參數{ak,1,ak,2,…,ak,k,
地球物理信息處理基礎
為此,將k階方程的系數矩陣增加一列和增加一行,成為下列形式的「擴大方程」
地球物理信息處理基礎
擴大方程中的Dk由下式來確定
地球物理信息處理基礎
利用前述系數矩陣的第二個特點,將擴大方程的行倒序,同時列也倒序,得「預備方程」
地球物理信息處理基礎
將待求的k+1階Yule-Walker方程的解表示成「擴大方程」解和「預備方程」解的線性組合形式
地球物理信息處理基礎
或
ak+1,i=ak,i-γk+1ak,k+1-i,i=1,2,…,k
式中γk+1是待定系數,稱為反射系數。用k+1階系數矩陣
地球物理信息處理基礎
去左乘上式各項,得到
地球物理信息處理基礎
由該式可求出
地球物理信息處理基礎
地球物理信息處理基礎
由擴大方程的第一個方程可求出
地球物理信息處理基礎
從上面的推導中可歸納出如下由k階模型參數求k+1階模型參數的計算公式:
地球物理信息處理基礎
ak+1,i=ak,i-γk+1ak,k+1-i,i=1,2,…,k (4-24)
地球物理信息處理基礎
對於AR(p)模型,遞推計算直到k+1=p為止。將模型參數代入式(1-135),即可計算功率譜估計值:
地球物理信息處理基礎
若在-π<ω≤π范圍內的N個等間隔頻率點上均勻采樣,則上式可寫成
地球物理信息處理基礎
若N>p,則上式中在N-1>i>p時,應取ap,i=0。
如果自相關函數值不是已知的,而只知道N個觀測數據xN(n),n=0,1,…,N-1,首先要用式(4-5)由xN(n)估計出自相關函數值,得
為了書寫簡單,今後將k階AR模型系數或k階線性預測系數ak,i寫成aki,而對於k+1階來說,為了下標明確,仍寫成ak+1,i。