<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # 機器學習中統計容差區間的溫和介紹 > 原文: [https://machinelearningmastery.com/statistical-tolerance-intervals-in-machine-learning/](https://machinelearningmastery.com/statistical-tolerance-intervals-in-machine-learning/) 對數據設置上限和下限可能很有用。 這些界限可用于幫助識別異常情況并設定期望值。來自群體的觀察結果稱為公差區間。 容差區間不同于量化單個預測值的不確定性的預測區間。它也不同于量化群體參數(例如均值)的不確定性的置信區間。相反,公差間隔涵蓋了人口分布的一部分。 在本教程中,您將發現統計公差間隔以及如何計算高斯數據的公差間隔。 完成本教程后,您將了解: * 統計公差間隔提供了人口觀察的界限。 * 容差間隔要求指定覆蓋比例和置信度。 * 可以容易地計算具有高斯分布的數據樣本的容差區間。 讓我們開始吧。 ![A Gentle Introduction to Statistical Tolerance Intervals in Machine Learning](img/4f205e283296aae59a3a56fdb6d68cac.jpg) 機器學習中統計公差間隔的溫和介紹 [Paul Hood](https://www.flickr.com/photos/pazhood/436154373/) 的照片,保留一些權利。 ## 教程概述 本教程分為4個部分;他們是: 1. 數據的界限 2. 什么是統計公差間隔? 3. 如何計算公差間隔 4. 高斯分布的容差區間 ## 數據的界限 將限制放在數據上很有用。 例如,如果您有來自域的數據樣本,則了解正常值的上限和下限可能有助于識別數據中的異常或異常值。 對于正在進行預測的過程或模型,了解合理預測可能需要的預期范圍會很有幫助。 了解共同的價值范圍有助于設定期望和檢測異常。 數據的公共值范圍稱為容差間隔。 ## 什么是統計公差間隔? 容差區間是對總體中數據比例的估計的約束。 > 統計公差區間[包含]來自采樣總體或過程的單位的指定比例。 - 第3頁,[統計間隔:從業者和研究人員指南](http://amzn.to/2G8w3IL),2017年。 間隔受采樣誤差和人口分布的方差限制。鑒于大數定律,隨著樣本量的增加,概率將更好地匹配潛在的人口分布。 以下是規定的公差間隔的示例: _從x到y的范圍覆蓋了95%的數據,置信度為99%。_ 如果數據是高斯數,則可以在平均值的上下文中表示間隔;例如: _x +/- y覆蓋95%的數據,置信度為99%。_ 我們將這些區間稱為統計公差區間,以區別于描述可接受性限制的工程中的公差區間,例如設計或材料。通常,為方便起見,我們將其描述為“公差間隔”。 公差間隔以兩個量定義: * **覆蓋范圍**:區間所覆蓋的人口比例。 * **置信度**:區間覆蓋人口比例的概率置信度。 > 公差間隔由使用兩個系數的數據構成,即覆蓋范圍和公差系數。覆蓋范圍是該區間應包含的人口(p)的比例。公差系數是間隔達到指定覆蓋范圍的置信度。覆蓋率為95%且公差系數為90%的公差區間將包含95%的人口分布,置信度為90%。 - 第175頁,[環境工程師統計](http://amzn.to/2GmeuVM),第二版,2002年。 ## 如何計算公差間隔 容差區間的大小與來自總體的數據樣本的大小和總體的方差成比例。 根據數據分布計算公差間隔有兩種主要方法:參數和非參數方法。 * **參數容差區間**:使用人口分布的知識來指定覆蓋范圍和置信度。通常用于指代高斯分布。 * **非參數容差區間**:使用排名統計來估計覆蓋率和置信度,由于缺乏有關分布的信息,通常會導致精度降低(間隔更寬)。 對于從高斯分布中抽取的獨立觀測樣本,容差區間相對簡單。我們將在下一節中演示此計算。 ## 高斯分布的容差區間 在本節中,我們將通過計算數據樣本的容差區間的示例。 首先,讓我們定義我們的數據樣本。我們將創建一個100個觀測樣本,從高斯分布繪制,平均值為50,標準差為5。 ```py # generate dataset data = 5 * randn(100) + 50 ``` 在這個例子中,我們假設我們不知道真實的總體均值和標準差,并且必須估計這些值。 由于必須估計人口參數,因此存在額外的不確定性。例如,對于95%的覆蓋率,我們可以使用與估計平均值的1.96(或2)標準差作為公差間隔。我們必須估計樣本的平均值和標準偏差并考慮這種不確定性,因此間隔的計算稍微復雜一些。 接下來,我們必須指定自由度的數量。這將用于計算臨界值和計算間隔。具體而言,它用于計算標準偏差。 請記住,自由度是計算中可以變化的值的數量。在這里,我們有100個觀測值,因此有100個自由度。我們不知道標準偏差,因此必須使用均值估算。這意味著我們的自由度將是(N-1)或99。 ```py # specify degrees of freedom n = len(data) dof = n - 1 ``` 接下來,我們必須指定數據的比例范圍。在這個例子中,我們對95%的中間數據感興趣。比例為95.我們必須改變這一比例,使其覆蓋95%的中間值,即從第2.5百分位數到第97.5百分位數。 我們知道95%的臨界值是1.96,因為我們經常使用它;盡管如此,我們可以直接在Python中計算它,假設反向生存函數的百分比為2.5%。這可以使用 [norm.isf()SciPy函數](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html)計算。 ```py # specify data coverage prop = 0.95 prop_inv = (1.0 - prop) / 2.0 gauss_critical = norm.isf(prop_inv) ``` 接下來,我們需要計算覆蓋范圍的置信度。我們可以通過從給定的自由度和期望概率的Chi Squared分布中檢索臨界值來實現這一點。我們可以使用 [chi2.isf()SciPy函數](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.chi2.html)。 ```py # specify confidence prob = 0.99 chi_critical = chi2.isf(q=prob, df=dof) ``` 我們現在有了所有的部分來計算高斯容差區間。計算如下: ```py interval = sqrt((dof * (1 + (1/n)) * gauss_critical^2) / chi_critical) ``` _dof_ 是自由度數, _n_ 是數據樣本的大小, _gauss_critical_ 是臨界值,如95%覆蓋率為1.96人口中, _chi_critical_ 是所希望的置信度和自由度的Chi Squared臨界值。 ```py interval = sqrt((dof * (1 + (1/n)) * gauss_critical**2) / chi_critical) ``` 我們可以將所有這些組合在一起并計算數據樣本的高斯容差區間。 下面列出了完整的示例。 ```py # parametric tolerance interval from numpy.random import seed from numpy.random import randn from numpy import mean from numpy import sqrt from scipy.stats import chi2 from scipy.stats import norm # seed the random number generator seed(1) # generate dataset data = 5 * randn(100) + 50 # specify degrees of freedom n = len(data) dof = n - 1 # specify data coverage prop = 0.95 prop_inv = (1.0 - prop) / 2.0 gauss_critical = norm.isf(prop_inv) print('Gaussian critical value: %.3f (coverage=%d%%)' % (gauss_critical, prop*100)) # specify confidence prob = 0.99 chi_critical = chi2.isf(q=prob, df=dof) print('Chi-Squared critical value: %.3f (prob=%d%%, dof=%d)' % (chi_critical, prob*100, dof)) # tolerance interval = sqrt((dof * (1 + (1/n)) * gauss_critical**2) / chi_critical) print('Tolerance Interval: %.3f' % interval) # summarize data_mean = mean(data) lower, upper = data_mean-interval, data_mean+interval print('%.2f to %.2f covers %d%% of data with a confidence of %d%%' % (lower, upper, prop*100, prob*100)) ``` 首先運行該示例計算并打印高斯和Chi平方分布的相關臨界值。打印公差,然后正確顯示。 ```py Gaussian critical value: 1.960 (coverage=95%) Chi-Squared critical value: 69.230 (prob=99%, dof=99) Tolerance Interval: 2.355 47.95 to 52.66 covers 95% of data with a confidence of 99% ``` 隨著樣本的大小增加,展示公差間隔將如何減小(變得更精確)也是有幫助的。 下面的例子通過計算同一個小型人為問題的不同樣本大小的容差區間來證明這一點。 ```py # plot tolerance interval vs sample size from numpy.random import seed from numpy.random import randn from numpy import sqrt from scipy.stats import chi2 from scipy.stats import norm from matplotlib import pyplot # seed the random number generator seed(1) # sample sizes sizes = range(5,15) for n in sizes: # generate dataset data = 5 * randn(n) + 50 # calculate degrees of freedom dof = n - 1 # specify data coverage prop = 0.95 prop_inv = (1.0 - prop) / 2.0 gauss_critical = norm.isf(prop_inv) # specify confidence prob = 0.99 chi_critical = chi2.isf(q=prob, df=dof) # tolerance tol = sqrt((dof * (1 + (1/n)) * gauss_critical**2) / chi_critical) # plot pyplot.errorbar(n, 50, yerr=tol, color='blue', fmt='o') # plot results pyplot.show() ``` 運行該示例會創建一個圖表,顯示真實總體均值周圍的容差區間。 我們可以看到,隨著樣本量從5個增加到15個,間隔變得更小(更精確)。 ![Error Bar Plot of Tolerance Interval vs Sample Size](img/68eb651a0b97f259cf521542fd45a82e.jpg) 容差區間與樣本大小的誤差線圖 ## 擴展 本節列出了一些擴展您可能希望探索的教程的想法。 * 列出了可以在機器學習項目中使用公差間隔的3種情況。 * 找到具有高斯變量的數據集并為其計算公差間隔。 * 研究并描述一種計算非參數容差區間的方法。 如果你探索任何這些擴展,我很想知道。 ## 進一步閱讀 如果您希望深入了解,本節將提供有關該主題的更多資源。 ### 圖書 * [了解新統計:影響大小,置信區間和元分析](http://amzn.to/2oQW6No),2017年。 * [統計間隔:從業者和研究人員指南](http://amzn.to/2G8w3IL),2017年。 ### API * [scipy.stats.norm()API](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html) * [scipy.stats.chi2()API](https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.chi2.html) * [matplotlib.pyplot.errorbar()API](https://matplotlib.org/2.1.0/api/_as_gen/matplotlib.pyplot.errorbar.html) ### 用品 * [維基百科上的容忍區間](https://en.wikipedia.org/wiki/Tolerance_interval) * 維基百科上的 [68-95-99.7規則](https://en.wikipedia.org/wiki/68%E2%80%9395%E2%80%9399.7_rule) * [維基百科上的百分位數](https://en.wikipedia.org/wiki/Percentile) * [正態分布的容差區間](http://www.itl.nist.gov/div898/handbook/prc/section2/prc263.htm) ## 摘要 在本教程中,您發現了統計公差間隔以及如何計算高斯數據的公差間隔。 具體來說,你學到了: * 統計公差間隔提供了人口觀察的界限。 * 容差間隔要求指定覆蓋比例和置信度。 * 可以容易地計算具有高斯分布的數據樣本的容差區間。 你有任何問題嗎? 在下面的評論中提出您的問題,我會盡力回答。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看