O introducere blândă a intervalelor de toleranță Statistică în învățarea automată

Tweet Share Share

Ultima actualizare la 8 August 2019

poate fi util să aveți o limită superioară și inferioară a datelor.

aceste limite pot fi folosite pentru a ajuta la identificarea anomaliilor și a stabili așteptări pentru ceea ce să se aștepte. O legătură cu observațiile unei populații se numește interval de toleranță. Un interval de toleranță provine din domeniul statisticilor de estimare.

un interval de toleranță este diferit de un interval de predicție care cuantifică incertitudinea pentru o singură valoare prezisă. De asemenea, este diferit de un interval de încredere care cuantifică incertitudinea unui parametru al populației, cum ar fi o medie. În schimb, un interval de toleranță acoperă o proporție din distribuția populației.

în acest tutorial, veți descoperi intervale statistice de toleranță și cum să calculați un interval de toleranță pentru datele gaussiene.

după finalizarea acestui tutorial, veți ști:

  • că intervalele de toleranță statistică oferă limite privind observațiile unei populații.
  • că un interval de toleranță necesită să fie specificate atât o proporție de acoperire, cât și o încredere.
  • că intervalul de toleranță pentru un eșantion de date cu o distribuție Gaussiană poate fi ușor calculat.

începeți-vă proiectul cu noile mele statistici de carte pentru învățarea automată, inclusiv tutoriale pas cu pas și fișierele de cod sursă Python pentru toate exemplele.

Să începem.

o introducere blând la intervale de toleranță statistice în mașină de învățare
foto de Paul Hood, unele drepturi rezervate.

tutorial prezentare generală

acest tutorial este împărțit în 4 părți; acestea sunt:

  1. limite de date
  2. care sunt intervalele de toleranță Statistică?
  3. cum se calculează intervalele de toleranță
  4. intervalul de toleranță pentru distribuția Gaussiană

aveți nevoie de ajutor cu statistici pentru învățarea automată?

Ia-Mi gratuit 7 zile de e-mail crash course acum (cu codul de probă).

Faceți clic pentru a vă înscrie și pentru a obține, de asemenea, o versiune gratuită PDF Ebook a cursului.

descărcați Mini-cursul gratuit

limite pe date

este util să puneți limite pe date.

de exemplu, dacă aveți un eșantion de date dintr-un domeniu, Cunoașterea limitei superioare și inferioare pentru valorile normale poate fi utilă pentru identificarea anomaliilor sau a valorilor aberante din date.

pentru un proces sau model care face predicții, poate fi util să cunoaștem intervalul așteptat pe care îl pot lua predicțiile sensibile.

cunoașterea gamei comune de valori poate ajuta la stabilirea așteptărilor și detectarea anomaliilor.

intervalul de valori comune pentru date se numește interval de toleranță.

care sunt intervalele de toleranță Statistică?

intervalul de toleranță este legat de o estimare a proporției de date dintr-o populație.

un interval de toleranță Statistică o proporție specificată a unităților din populația sau procesul eșantionat.

— Pagina 3, intervale statistice: un ghid pentru practicieni și cercetători, 2017.

intervalul este limitat de eroarea de eșantionare și de varianța distribuției populației. Având în vedere legea numărului mare, pe măsură ce mărimea eșantionului este crescută, probabilitățile se vor potrivi mai bine cu distribuția populației subiacente.

mai jos este un exemplu de interval de toleranță declarat:

intervalul de la x la y acoperă 95% din date cu o încredere de 99%.

dacă datele sunt gaussiene, intervalul poate fi exprimat în contextul valorii medii; de exemplu:

x +/- y acoperă 95% din date cu o încredere de 99%.

ne referim la aceste intervale ca intervale de toleranță statistică, pentru a le diferenția de intervalele de toleranță din inginerie care descriu limitele acceptabilității, cum ar fi pentru un proiect sau a unui material. În general, le vom descrie ca pur și simplu” intervale de toleranță ” pentru comoditate.

un interval de toleranță este definit în termeni de două cantități:

  • acoperire: proporția populației acoperite de interval.
  • încredere: încrederea probabilistică că intervalul acoperă proporția populației.

intervalul de toleranță este construit din date folosind doi coeficienți, acoperirea și coeficientul de toleranță. Acoperirea este proporția populației (p) pe care se presupune că o conține intervalul. Coeficientul de toleranță este gradul de încredere cu care intervalul atinge acoperirea specificată. Un interval de toleranță cu acoperire de 95% și un coeficient de toleranță de 90% va conține 95% din distribuția populației cu o încredere de 90%.

— pagina 175, statistici pentru inginerii de mediu, ediția a doua, 2002.

cum se calculează intervalele de toleranță

dimensiunea unui interval de toleranță este proporțională cu dimensiunea eșantionului de date din populație și varianța populației.

există două metode principale pentru calcularea intervalelor de toleranță în funcție de distribuția datelor: metode parametrice și neparametrice.

  • interval de toleranță parametrică: folosiți cunoștințele despre distribuția populației în specificarea atât a acoperirii, cât și a încrederii. Adesea folosit pentru a se referi la o distribuție Gaussiană.
  • interval de toleranță Neparametrică: utilizați statistici de rang pentru a estima acoperirea și încrederea, rezultând adesea o precizie mai mică (intervale mai largi), având în vedere lipsa de informații despre distribuție.

intervalele de toleranță sunt relativ simple de calculat pentru un eșantion de observații independente extrase dintr-o distribuție Gaussiană. Vom demonstra acest calcul în secțiunea următoare.

intervalul de toleranță pentru distribuția Gaussiană

În această secțiune, vom lucra printr-un exemplu de calcul al intervalelor de toleranță pe un eșantion de date.

În primul rând, să definim eșantionul nostru de date. Vom crea un eșantion de 100 de observații extrase dintr-o distribuție Gaussiană cu o medie de 50 și o abatere standard de 5.

1
2
# generați setul de date
date=5 * randn(100) + 50

în timpul exemplului, vom presupune că nu suntem conștienți de adevărata medie a populației și de abaterea standard și că aceste valori trebuie estimate.

deoarece parametrii populației trebuie estimați, există o incertitudine suplimentară. De exemplu, pentru o acoperire de 95%, am putea folosi 1,96 (sau 2) abateri standard de la media estimată ca interval de toleranță. Trebuie să estimăm abaterea medie și standard de la eșantion și să luăm în considerare această incertitudine, prin urmare calculul intervalului este puțin mai complex.

în continuare, trebuie să specificăm numărul de grade de libertate. Aceasta va fi utilizată la calcularea valorilor critice și la calcularea intervalului. Mai exact, este utilizat la calcularea deviației standard.

amintiți-vă că gradele de libertate sunt numărul de Valori din calcul care pot varia. Aici avem 100 de observații, deci 100 de grade de libertate. Nu cunoaștem abaterea standard, prin urmare trebuie estimată folosind media. Aceasta înseamnă că gradele noastre de libertate vor fi (N – 1) sau 99.

1
2
3

# specifica grade de libertate
n = Len(date)
DOF = n – 1

în continuare, trebuie să specificăm acoperirea proporțională a datelor. În acest exemplu, suntem interesați de 95% din date. Proporția este de 95. Trebuie să schimbăm această proporție astfel încât să acopere mijlocul 95%, adică de la percentila 2.5 la percentila 97.5.

știm că valoarea critică pentru 95% este 1,96 având în vedere că o folosim atât de des; cu toate acestea, o putem calcula direct în Python având în vedere procentul de 2,5% din funcția de supraviețuire inversă. Acest lucru poate fi calculat folosind norma.isf () funcția SciPy.

1
2
3
4

# specificați acoperirea datelor
prop = 0,95
prop_inv = (1,0 – prop) / 2.0
gauss_critical = normă.isf (prop_inv)

în continuare, trebuie să calculăm încrederea acoperirii. Putem face acest lucru prin recuperarea valorii critice din distribuția Chi pătrată pentru numărul dat de grade de libertate și probabilitatea dorită. Putem folosi chi2.isf () funcția SciPy.

1
2
3

# specificați încrederea
prob = 0.99
chi_critic = chi2.isf (q=prob, DF=dof)

acum avem toate piesele pentru a calcula intervalul de toleranță Gaussian. Calculul este după cum urmează:

1
interval=sqrt((DOF * (1 + (1 / n)) * gauss_critical^2) / chi_critic)

unde DOF este numărul de grade de libertate, n este dimensiunea eșantionului de date, gauss_critical este valoarea critică, cum ar fi 1,96 pentru o acoperire de 95% a populației, iar chi_critical este valoarea critică Chi pătrată pentru încrederea dorită și gradele de libertate.

1
interval=sqrt((DOF * (1 + (1 / n)) * gauss_critic**2) / chi_critical)

putem lega toate acestea împreună și calculați intervalul de toleranță Gaussian pentru eșantionul nostru de date.

exemplul complet este prezentat mai jos.

rularea exemplului calculează și imprimă mai întâi valorile critice relevante pentru distribuțiile Gaussian și Chi pătrat. Toleranța este tipărită, apoi prezentată corect.

de asemenea, poate fi util să se demonstreze modul în care intervalul de toleranță va scădea (va deveni mai precis) pe măsură ce mărimea eșantionului va crește.

exemplul de mai jos demonstrează acest lucru prin calcularea intervalului de toleranță pentru diferite dimensiuni ale eșantionului pentru aceeași mică problemă contrived.

rularea exemplului creează un grafic care arată intervalul de toleranță în jurul valorii medii reale a populației.

putem vedea că intervalul devine mai mic (mai precis) pe măsură ce dimensiunea eșantionului este mărită de la 5 la 15 Exemple.

bara de eroare a intervalului de toleranță față de dimensiunea eșantionului

extensii

această secțiune enumeră câteva idei pentru extinderea tutorialului pe care ați putea dori să îl explorați.

  • enumerați 3 cazuri în care un interval de toleranță ar putea fi utilizat într-un proiect de învățare automată.
  • localizați un set de date cu o variabilă gaussiană și calculați intervalele de toleranță pentru acesta.
  • Cercetează și descrie o metodă pentru calcularea unui interval de toleranță neparametric.

dacă explorați oricare dintre aceste extensii, mi-ar plăcea să știu.

lecturi suplimentare

această secțiune oferă mai multe resurse pe această temă dacă doriți să aprofundați.

Cărți

  • înțelegerea noilor statistici: dimensiunile efectului, intervalele de încredere și Meta-analiza, 2017.
  • intervale statistice: un ghid pentru practicieni și cercetători, 2017.

API

  • scipy.statistici.norm () API
  • scipy.statistici.chi2 () API
  • matplotlib.pyplot.errorbar () API

articole

  • interval de toleranță pe Wikipedia
  • 68-95-99.7 regula pe Wikipedia
  • percentila pe Wikipedia
  • intervale de toleranță pentru o distribuție normală

rezumat

În acest tutorial, ați descoperit intervale de toleranță statistice și cum se calculează un interval de toleranță pentru datele gaussiene.

în mod specific, ai învățat:

  • că intervalele de toleranță statistică oferă o limită a observațiilor dintr-o populație.
  • că un interval de toleranță necesită să fie specificate atât o proporție de acoperire, cât și o încredere.
  • că intervalul de toleranță pentru un eșantion de date cu o distribuție Gaussiană poate fi ușor calculat.

aveți întrebări?
Pune-ți întrebările în comentariile de mai jos și voi face tot posibilul să răspund.

ia un mâner pe statistici pentru Mașină de învățare!

dezvoltați o înțelegere de lucru a statisticilor

…scriind linii de cod în python

Descoperiți cum în noua mea carte electronică:
metode statistice pentru învățarea automată

oferă tutoriale de auto-studiu pe teme precum:
teste de ipoteze, corelație, statistici neparametrice, reeșantionare și multe altele…

Descoperiți cum să transformați datele în cunoștințe

săriți academicienii. Doar Rezultate.

vezi ce este în interiorul

Tweet Share Share

Lasă un răspuns

Adresa ta de email nu va fi publicată.