Jackknife(刀切法)是有Maurice Quenouille (1949)提出的一種再抽樣方法,其原始動機(jī)是降低估計的偏差。Jackknife為一種瑞士小折刀,很容易攜帶。通過類比,John W. Tukey (1958)在統(tǒng)計學(xué)中創(chuàng)造了這個術(shù)語,作為一種通用的假設(shè)檢驗(yàn)和置信區(qū)間計算的方法。Jackknife類似于“Leave one out”的交叉驗(yàn)證方法。令X=(X1,X2,…,Xn)為觀測到的樣本,定義第i個Jackknife樣本為丟掉第i個樣本后的剩余樣本。
偏差的Jackknife估計:
function out=jackbias(theta,orig)
%Estimate the bias using the jackknife
%Theta has to be a character string containg
% a valid function name
[n,p]=size(orig);
lot=feval(theta,orig(2:n,:));
k=length(lot);
lo=zeros(n,k);
lo(1,:)=lot;
lo(n,:)=feval(theta,orig(1:(n-1),:));
for i=(2:(n-1))
lo(i,:)=feval(theta,orig([1:(i-1),(i+1):n],:));
end
thetadot=mean(lo);
out=(n-1)*(thetadot-feval(theta,orig));
標(biāo)準(zhǔn)差的Jackknife估計:
function out=jackstd(theta,orig)
[n,p]=size(orig);
lot=feval(theta,orig(2:n,:));
k=length(lot);
lo=zeros(n,k);
lo(1,:)=lot;
lo(n,:)=feval(theta,orig(1:(n-1),:));
for i=(2:(n-1))
lo(i,:)=feval(theta,orig([1:(i-1),(i+1):n],:));
end
thetadot=mean(lo);
out=sqrt((n-1)/n.*sum((lo-repmat(thetadot,n,[])).^2));
Jackknife與Bootstrap自助法的聯(lián)系:Efron1979年文章指出了自助法與刀切法的關(guān)系。首先,自助法通過經(jīng)驗(yàn)分布函數(shù)構(gòu)建了自助法世界,將不適定的估計概率分布的問題轉(zhuǎn)化為從給定樣本集中重采樣。第二,自助法可以解決不光滑參數(shù)的問題。遇到不光滑(Smooth)參數(shù)估計時,刀切法會失效,而自助法可以有效地給出中位數(shù)的估計。第三,將自助法估計用泰勒公式展開,可以得到刀切法是自助法方法的一階近似。第四,對于線性統(tǒng)計量的估計方差這個問題,刀切法或者自助法會得到同樣的結(jié)果。但在非線性統(tǒng)計量的方差估計問題上,刀切法嚴(yán)重依賴于統(tǒng)計量線性的擬合程度,所以遠(yuǎn)不如自助法有效。