Bölüm 5 / 12

Düzediş we näsazlyklary düzetmek

Girdeji:

  • Erroralňyşlyk habary, yz yzy we iň kiçi köpeliş mysaly bilen AI-de bir näsazlygy netijeli suratlandyrmak ukyby
  • AI bilen yzygiderli düzediş akymyny işletmek, gipotezalaşdyrmak we ädimme-ädim daraltmak arkaly düýp sebäbini tapmak;
  • AI-iň teklip eden düzedişiniň hakykatdanam köpeltmek we regressiýa synaglary arkaly meseläni düzedendigini barlamak ukyby

Düzediş, programmanyň näme üçin garaşylýandan tapawutly hereket edýändigini anyklamak we ony düzetmek, inersenerleriň köpüsiniň wagtyny köp alýar. Gowy düzetmek çaklama oýnuna esaslanman, yzygiderli daralmagyna esaslanýar: simptomy aýdyňlaşdyryň, gipoteza ediň, gipotezany barlaň, düýp sebäbine giriň. AI bu siklde gaty güýçli hyzmatdaş; Onlyöne diňe oňa dogry maglumat berseňiz. “Kod işlemeýär, düzediň” diýmek AI-ni ýorgan teklipleri çaklamaga we teklip etmäge mejbur edýär. Erroralňyşlyk habaryny, yz yzyny we iň kiçi köpeliş nusgasyny beriň, düýp sebäbini bilelikde taparsyňyz.

Bu bölümde AI-de näsazlygy nädip netijeli suratlandyrmalydygyny, gipotezalary ädimme-ädim kiçeldip, teklip edilýän düzedişiň hakykatdanam meseläni çözýändigini regressiýa synagyndan geçirip göreris. Rememberatda saklaň: bir näsazlygy "düzetmek" we "näsazlygyň alamatlaryny basmak" iki dürli zat; Esasy sebäbini tapman edilen düzediş ýalňyşlygy başga ýere geçirýär.

Düşünjeler: ackygyndy yzy: erroralňyşlyk ýüze çykan mahaly haýsy funksiýa çagyrylandygyny görkezýän zibil. Minimal repro: erroralňyşlygy döredýän iň ýönekeý, iň gysga kod / giriş. Kök sebäp: Alamat däl-de, meseläniň hakyky çeşmesi. Regressiýa synagy: Şol bir ýalňyşlygyň gaýtalanmazlygyny üpjün edýän synag.

AI-de bir näsazlygy suratlandyrmak

AI-iň düýp sebäbini tapmagy ähtimallygy, berýän maglumatlaryňyzyň hiline gönüden-göni proporsionaldyr. Gowy säwlik beýany öz içine alýar: näme etjek bolanyňyz, nämä garaşýandygyňyz, nämäniň bolup geçendigi, takyk ýalňyş teksti we ýazgy yzy, gatnaşygy kody, daşky gurşaw (dil / wersiýa / OS) we ýalňyşlygy döreden iň kiçi nusga.

  1. Alamatyny aýdyňlaşdyryň. "Garaşylýan X, hakykylaşdyrylan Y" görnüşinde.
  2. Erroralňyşlygyň doly tekstini we yz yzyny goýuň. Gysgaltmaň, senzura ediň, ýöne gurluşy bozmaň.
  3. Iň kiçi köpeliş beriň. Erroralňyşlygy döredýän iň az giriş we kod.
  4. Daşky gurşawy görkeziň. Dil wersiýasy, kitaphananyň wersiýasy, iş wagty.

Netijeli säwlik düşündirişi: "Bir näsazlygy düzedýärin. Maglumat: - Etjek bolýan zadym: [X] - Garaşylýan özüni alyp barş: [Y] - Hakyky özüni alyp barş: [Z] - Doly säwlik habary we ýazgy yzy:

Gipotezanyň daralmagy

Ulgamlaýyn düzediş, mümkinçilikleri ýeke-ýekeden ýok etmek sungatydyr. Gipotezalary döretmek we her gipotezany barlamak üçin eksperimenti düzmek üçin AI ulanyň; Soňra synag geçiriň we netijäni gaýtaryň. Bu aýlaw, "tüpeňi düzetmek" diýlip atlandyrylýan tötänleýin üýtgeşmeler girizmek we durmak endiginden has çalt.

Ikitaraplaýyn gözleg (biseksiýa) kömekçi soragy: "Bu ýalňyşlyk düýn ýokdy, şu günem bar. Soňky 20 üýtgeşmäniň haýsysynyň ikä bölünendigini anyklamak isleýärin. Stepdimme-ädim meýilnama beriň: haýsy nokady barlamaly, netijä baglylykda haýsy ýarysyna gitmelidigimi aýdyň. Şeýle hem her ädimde nämäni barlamalydygyny aýdyň."

Logurnal girizmek strategiýasy: "erroralňyşlygy tapyp bilemok, sebäbi bu funksiýadaky aralyk bahalary görüp bilemok. Haýsy üýtgeýänleri çap edýän gündelik setirleri goşmalydygyny aýdyň. Her gündelige" şu gündeliginden näme öwrenerin "düşündirişini goşuň. Şeýle hem gizlin maglumatlary ýazmagymyň öňüni aljak duýduryşlary görkeziň."

Maslahat: erroralňyşlygy çözüp bilmeseňiz, köplenç mesele nädogry hasaplanan ýeriňizde bolýar. AI-den “meniň çaklamam nädogry bolup biler?” Diýip soraň. Soramak körlügiňizi bozar. Iň agyr ýalňyşlyklar "Munuň dogry işleýändigine ynanýaryn" diýýän ýeriňizde gizlenýär.

Gowşak gyssagly / güýçli teklip

WEAK: "Kodym ýalňyşlyk berýär, düzediň: [200 setir kod]" (Netije: AI haýsy ýalňyşdygyny, nämä garaşylýandygyny bilenok; çaklama esasynda umumy teklipler berýär, köpüsi peýdasyz.) Güýçli: "NullPointerException alýaryn. Garaşylýan: ulanyjy sanawy yzyna gaýtarylmaly. Hakyky: 17 gaýtalamak: Ulanyjylaryň sanawy boş bolanda bolýar, ýöne doldurylanda däl. Baglanyşykly 15 setir: [kod] düýp sebäbini we näme üçin boşlugyň döreýändigini düşündiriň, soň düzediş teklip ediň. "

Güýçli haýyş ýalňyşlygy kontekstde goýýar: haýsy ýagdaýda bolup geçýär (boş sanaw), bu ýagdaýda bolup geçmeýär (doly sanaw). Bu ýekeje düşündiriş ("boş bolanda bolýar") düýp sebäbini gönüden-göni görkezýär. Bu maglumat gowşak islegde elýeterli bolmansoň, AI kör çaklaýar.

Düzediş

Düzediş diňe üç zady ýerine ýetirse hakyky düzedişdir:

gözegçilik

Sorag

Nädip barlamaly

Erroralňyşlyk ýokmy?

Şol bir giriş indi işleýärmi?

Minimal ýazgyny gaýtadan işlediň

Täze ýalňyşlyklar ýokmy?

Başga bir zat bozuldymy?

Synag toplumynyň hemmesini işlediň

Gaýtalanmazmy?

Şol bir ýalňyşlyk ýene ýüze çykarmy?

Bu ssenariýa üçin regressiýa synagyny goşuň

Esasy sebäbini tapman edilen düzedişler köplenç alamaty basýar. Mysal üçin, "null if skip" bilen null ýalňyşlygyň üstünde ýalpyldawuklyk, "maglumatlar näme üçin puja çykýar?" göze görünmeýän we ýalňyşlyk başga bir ýerde ýüze çykýar.

Kiçijik ýagdaýlar

1-nji hadysa - Alamatlary ýok etmek duzagy. Topar synanyşyk bilen wagtal-wagtal boş ýalňyşlygy dymdyrýar; Erroralňyşlyk ýitýär, ýöne 2 hepdeden soň maglumatlar ýok bolup görünýär. Asyl sebäbi, hyzmatyň gutarýan wagty yzyna gaýdyp gelmegidir. AI-den "näme üçin puja çykýar?" Diýip sorasaň, düýp sebäbi ýüze çykýar; Hakyky düzediş 1 sagat alýar, ýöne hemişelik.

2-nji hadysa - minimal repro güýji. Bir dörediji "her gezek bir gezek ýykylýar" diýýän bir näsazlygy düzedip bilmeýär. AI-iň teklibi bilen ýalňyşlygy iň kiçi girişe çenli peseldýär: mesele diňe türk nyşanlaryny öz içine alýan faýl atlary bilen ýüze çykýar (kodlamak ýalňyşlygy). Haçan-da 300 setir näbellilik 5 setirden peseldilende, çözgüt aýdyň bolýar.

3-nji hadysa - Regressiýa garşy synag. AI senäni hasaplamagyň ýalňyşlygyny düzedýär. Inerener munuň bilen kanagatlanmaýar; ýalňyş ssenariýa üçin regress synagyny goşýar (aýyň ahyry, 31-nji ýanwar + 1 aý). 4 aýdan soň başga bir üýtgeşiklik şol bir ýere degeninde synag gyzyl öwrüler we önüm öndürilmänkä tutulýar.

Adaty ýalňyşlyklar

  • Bu "işlemeýär, düzediň" diýmekdir. Erroralňyşlyk teksti, garaşmak we ýazgarmazdan, AI çaklaýar.
  • Stakanyň yzyny bermezlik. Ackol yzlary köplenç düýp sebäbini gönüden-göni görkezýär.
  • Tötänleýin üýtgeşmeleri dowam etdiriň. Gipotezany kesgitlemezden synaglar wagt ýitirýär.
  • Alamatyň öňüni almak we düýp sebäbini ýitirmek. Erroralňyşlyk başga bir ýerde täzeden döreýär.
  • Regressiýa synagy bilen düzedişi üpjün etmezlik. Şol bir ýalňyşlyk geljekde sessiz-üýnsüz gaýdyp gelýär.

Gysgaça

Netijeli düzediş, çaklama däl-de, yzygiderli daralmakdyr. AI-e doly säwlik tekstini, yz yzyny, minimal köpelmegi we daşky gurşaw maglumatlary bermek düýp sebäbini tapmak mümkinçiligini çaltlaşdyrýar. Gipotezalary döretmek we her gipotezany barlamak üçin eksperimenti düzmek üçin AI ulanyň; Synagy geçirýärsiňiz. Diňe näsazlygyň ýok bolandygyny, täze kemçilikleriň ýokdugyny we regressiýa synaglary bilen goralýandygyny göreniňizde "ýerine ýetirilen" düzedişe serediň.

Programma meselesi

Hakyky ýa-da emeli ýalňyşlyga serediň. Ilki bilen ýalňyşlygy iň kiçi köpelişe çenli azaldyň (haýsy girişde ýüze çykýar, girmeýär). Netijeli näsazlyk reseptini ulanyp, AI-den 3 düýp sebäp gipotezasyny we her biri üçin barlag ädimini soraň. Gipotezalary birin-birin barlap, düýp sebäbini tapyň, düzediň, soňra bu ssenariýa üçin näsazlygyň ýok bolandygyny we synagyň gorag üpjün edýändigini görkezmek üçin regress synagyny ýazyň we işlediň.

gözegçilik sanawy

  • [] Alamat "garaşylýan vs amala aşyryldy" diýip düşündirdim.
  • [] AI-e doly säwlik tekstini we yz yzyny berdim.
  • [] Erroralňyşlygy iň kiçi köpelişe çenli azaltdym.
  • [] Gipotezalary ýeke-ýekeden synap, düýp sebäbini tapdym.
  • [] Alamatyň öňüni almagyň ýerine düýp sebäbini düzedim.
  • [] Şol bir ýalňyşlyk üçin regress synagyny goşdum we işledim.