az utóbbi években a Kernel módszerek nagy figyelmet kaptak, különösen a támogató Vektorgépek növekvő népszerűsége miatt. A Kernel funkciók számos alkalmazásban használhatók, mivel egyszerű hidat biztosítanak a linearitástól a nem linearitásig olyan algoritmusok számára, amelyek ponttermékekben fejezhetők ki. Ebben a cikkben felsorolunk néhány kernel funkciót és azok tulajdonságait.
- Itt ellenőrizheti az összes kernel funkció forráskódját.
sok ilyen funkciót beépítettek Accord.NET, egy keret létrehozása gépi tanulás, statisztika, számítógépes látás alkalmazások.
- Tartalom
- Kernel Módszerek
- A Kernel trükk
- Kernel tulajdonságok
- a megfelelő Kernel kiválasztása
- Kernel funkciók
- 1. Lineáris Kernel
- 2. Polinom Kernel
- 3. Gauss Kernel
- 4. Exponenciális Kernel
- 5. Laplacian Kernel
- 6. ANOVA Kernel
- 7. Hiperbolikus tangens (Sigmoid) Kernel
- 8. Racionális kvadratikus Kernel
- 9. Multiquadric Kernel
- 10. Inverz Multiquadric Kernel
- 11. Kör Kernel
- 12. Gömb Kernel
- 13. Wave Kernel
- 14. Power Kernel
- 15. Log Kernel
- 16. Spline Kernel
- 17. B-Spline (radiális Alapfüggvény) Kernel
- 18. Bessel Kernel
- 19. Cauchy Kernel
- 20. Chi-négyzet Kernel
- 21. Hisztogram metszéspont Kernel
- 22. Generalizált hisztogram metszéspont
- 23. Általánosított t-Student Kernel
- 24. Bayes Kernel
- 25. Wavelet Kernel
- forráskód
- Lásd
- idézi ezt a munkát
Tartalom
- Kernel Módszerek
- A Kernel Trükk
- Kernel Tulajdonságok
- Választott a Kernel
- Kernel Funkciók
- Lineáris Kernel
- Polinom Kernel
- Gauss Kernel
- Exponenciális Kernel
- Laplacian Kernel
- ANOVA Kernel
- Hiperbolikus Tangens (Szigmoid) Kernel
- Racionális Másodfokú Kernel
- Multiquadric Kernel
- Inverz Multiquadric Kernel
- Körkörös Kernel
- Gömb Kernel
- Hullám Kernel
- Power Kernel
- Napló Kernel
- Spline Kernel
- B-Spline Kernel
- Bessel-Kernel
- Cauchy Kernel
- Chi-Négyzet Kernel
- Hisztogram Kereszteződés Kernel
- Általános Hisztogram Kereszteződés Kernel
- Generalizált T-Diák Kernel
- Bayes Kernel
- Wavelet Kernel
- a forráskód
- Lásd
Kernel Módszerek
Kernel módszerek egy osztály algoritmusok minta elemzés, vagy az elismerés, akinek a legismertebb eleme a support vector machine (SVM). Az általános feladat elemzést találni tanulni általános típusú kapcsolatok (pl. klaszterek, rangsor, fő alkotórészek, összefüggések, osztályozás) az általános típusú adat (például sorozatok, szöveges dokumentumok, meghatározza a pontok, vektorok, képek, grafikonok, stb.) (Wikipedia, 2010a).
A Kernel módszereinek fő jellemzője azonban a probléma eltérő megközelítése. Kernel módszerek térkép az adatokat magasabb dimenziós terek abban a reményben, hogy ebben a magasabb dimenziós térben az adatok könnyebben elválasztható vagy jobban strukturált. Ennek a leképezésnek a formájára nincs korlátozás, amely akár végtelen dimenziós terekhez is vezethet. Ezt a leképezési funkciót azonban alig kell kiszámítani a kernel trükk nevű eszköz miatt.
A Kernel trükk
a Kernel trükk egy nagyon érdekes és hatékony eszköz. Erős, mert hidat biztosít a linearitástól a nem linearitásig minden olyan algoritmusig, amely kizárólag a két vektor közötti ponttermékek tekintetében fejezhető ki. Abból a tényből származik, hogy ha először a bemeneti adatainkat egy magasabb dimenziós térbe térképezzük, az ebben a térben működő lineáris algoritmus nem lineárisan viselkedik az eredeti bemeneti térben.
most a Kernel trükk nagyon érdekes, mert ezt a leképezést soha nem kell kiszámítani. Ha algoritmusunk csak két vektor közötti belső termék tekintetében fejezhető ki, akkor csak arra van szükségünk, hogy ezt a belső terméket a belső termékkel helyettesítsük más megfelelő helyről. Itt található a “trükk”: bárhol is használják a pontterméket, azt Kernel funkcióval helyettesítik. A kernel függvény egy belső terméket jelöl a funkciótérben, amelyet általában a következőképpen jelölnek:
K(x,y) = <φ(x),φ(y)>
a Kernel függvény segítségével az algoritmus ezután egy magasabb dimenziós térbe vihető anélkül, hogy a bemeneti pontokat kifejezetten leképezné ebbe a térbe. Ez nagyon kívánatos, mivel néha a magasabb dimenziós funkciós térünk akár végtelen dimenziós is lehet,így nem mérhető.
Kernel tulajdonságok
a Kernel függvényeknek folyamatosnak, szimmetrikusnak kell lenniük, és legelőnyösebben pozitív (félig) meghatározott Gram mátrixnak kell lenniük. Azok a kernelek, amelyekről azt mondják, hogy megfelelnek a Mercer tételének, pozitív félhatározottak, ami azt jelenti, hogy kernel mátrixaik csak nem negatív Eigen értékekkel rendelkeznek. Egy pozitív, határozott kernel használata biztosítja, hogy az optimalizálási probléma konvex legyen, a megoldás pedig egyedi.
azonban számos olyan kernel-funkcióról, amelyek nem feltétlenül pozitívak, szintén kimutatták, hogy nagyon jól teljesítenek a gyakorlatban. Példa erre a Sigmoid kernel, amely széles körű használata ellenére nem pozitív félig határozott a paraméterek bizonyos értékeire. Boughorbel (2005) kísérletileg is bizonyította, hogy a csak feltételesen pozitív határozott kernelek bizonyos alkalmazásokban felülmúlhatják a legtöbb klasszikus magot.
a kernelek anizotróp stacionárius, izotróp stacionárius, kompakt módon támogatott, helyileg álló, nem álló vagy elválasztható nonstacionárius rendszerként is besorolhatók. Ezenkívül a kernelek skálainvariánsnak vagy méretarányfüggőnek is nevezhetők, ami érdekes tulajdonság, mivel a skála-invariáns kernelek az edzési folyamatot invariánsként vezetik az adatok skálázásához.
a megfelelő Kernel kiválasztása
a legmegfelelőbb kernel kiválasztása nagymértékben függ az adott problémától – a paraméterek finomhangolása könnyen unalmas és nehézkes feladat lehet. Az automatikus kernel-kiválasztás lehetséges, és Tom Howley és Michael Madden munkáiban tárgyaljuk.
A Kernel kiválasztása a kérdéses problémától függ, mert attól függ, hogy mit próbálunk modellezni. A polinom kernel például lehetővé teszi számunkra, hogy a jellemző konjunkciókat a polinom sorrendjéig modellezzük. A radiális alapfunkciók lehetővé teszik a körök (vagy hiperspherek) kiválasztását – a lineáris kernel szűkítésében, amely csak a vonalak (vagy hiperplánok) kiválasztását teszi lehetővé.
az adott kernel kiválasztásának motivációja nagyon intuitív és egyszerű lehet attól függően, hogy milyen információkat várunk az adatokról. Kérjük, olvassa el a végső megjegyzések ebben a témában a Bevezetés Az információ visszakeresés, Manning, Raghavan és Schütze jobb magyarázatot a témában.
Kernel funkciók
Az alábbiakban felsoroljuk a meglévő szakirodalomban elérhető néhány kernel funkciót. Mint a korábbi cikkeknél, az alábbi képletek minden LaTeX jelölése könnyen elérhető az alternatív szöveg html címkéjéből. Nem tudom garantálni, hogy mindegyik tökéletesen helyes, így használja őket a saját felelősségére. Legtöbbjük linkeket tartalmaz olyan cikkekre, ahol eredetileg használták vagy javasolták őket.
1. Lineáris Kernel
- lineáris kernel dokumentáció – lineáris kernel forráskód – Hogyan hozzunk létre SVMs-t a. Net-ben Accord.NET
a lineáris kernel a legegyszerűbb kernel funkció. Ez adja a belső termék <x,y> plusz egy opcionális állandó C. Kernel algoritmusok lineáris kernel gyakran egyenértékű a nem kernel társaik, azaz kpca lineáris kernel ugyanaz, mint a standard PCA.
2. Polinom Kernel
a polinom kernel nem álló kernel. A polinom magok jól alkalmazhatók olyan problémákra, ahol az összes képzési adat normalizálódik.
állítható paraméterek a lejtő alfa, a C konstans kifejezés és a D polinom fok.
3. Gauss Kernel
A Gauss kernel egy példa a radiális alapfüggvény kernel.
Alternatív megoldásként a
Az állítható Sigma paraméter fontos szerepet játszik a kernel teljesítményében, ezért gondosan be kell hangolni a szóban forgó problémára. Ha túlbecsülik, az exponenciális majdnem lineárisan fog viselkedni, és a magasabb dimenziós vetület elveszíti nemlineáris erejét. Másrészt, ha alábecsülik, akkor a funkció nem lesz szabályozható, a döntési határ pedig nagyon érzékeny lesz a zajra a képzési adatokban.
4. Exponenciális Kernel
Az exponenciális kernel szorosan kapcsolódik a Gauss kernelhez, csak a norma négyzete maradt ki. Ez is egy radiális alap funkció kernel.
5. Laplacian Kernel
a Laplace Kernel teljesen egyenértékű az exponenciális kernel, kivéve, hogy kevésbé érzékeny változások a sigma paraméter. Mivel egyenértékű, ez is egy radiális alapú függvény kernel.
fontos megjegyezni, hogy a Gaussian kernel sigma paraméterével kapcsolatos megfigyelések az exponenciális és Lapplacian kernelekre is vonatkoznak.
6. ANOVA Kernel
az ANOVA kernel szintén radiális alapfüggvény kernel, csakúgy, mint a Gaussian és a Laplacian kernel. Azt mondják, hogy jól teljesítenek a többdimenziós regressziós problémákban (Hofmann, 2008).
7. Hiperbolikus tangens (Sigmoid) Kernel
a hiperbolikus tangens Kernel Sigmoid Kernelként és többrétegű Perceptron (MLP) kernelként is ismert. A Sigmoid Kernel a neurális hálózatok mezőjéből származik, ahol a bipoláris sigmoid funkciót gyakran használják a mesterséges neuronok aktiválási funkciójaként.
érdekes megjegyezni, hogy a sigmoid kernel funkciót használó SVM modell egyenértékű egy kétrétegű, perceptron neurális hálózattal. Ez a kernel nagyon népszerű volt a támogató vektoros gépek számára, mivel a neurális hálózatelméletből származik. Is, annak ellenére, hogy csak feltételesen pozitív határozott, azt találtuk, hogy jól teljesítenek a gyakorlatban.
két beállítható paraméter van a sigmoid kernelben, a slope alpha és az intercept constant C. az alfa közös értéke 1 / N, ahol N az adat dimenzió. A sigmoid magokról részletesebb tanulmány található Hsuan-Tien és Chih-Jen műveiben.
8. Racionális kvadratikus Kernel
a racionális kvadratikus kernel kevésbé számításigényes, mint a Gaussian kernel, és alternatívaként használható, ha a Gaussian használata túl drága.
9. Multiquadric Kernel
a Multiquadric kernel használható ugyanabban a helyzetben, mint a racionális kvadratikus kernel. Mint a Sigmoid kernel esetében, ez is egy példa egy nem pozitív határozott kernelre.
10. Inverz Multiquadric Kernel
az inverz Multi Quadric kernel. A Gauss-kernelhez hasonlóan egy teljes értékű kernel mátrixot eredményez (Michelli, 1986), így végtelen dimenzió jellemző teret képez.
11. Kör Kernel
a kör alakú kernelt geosztatikus alkalmazásokban használják. Ez egy példa egy izotróp álló kernel pozitív határozott R2.
12. Gömb Kernel
a gömbmag hasonló a kör kernel, de pozitív határozott R3.
13. Wave Kernel
a Hullámmag szimmetrikus pozitív félig határozott (Huang, 2008).
14. Power Kernel
A Power kernel is ismert, mint a (nem igazított) háromszög kernel. Ez egy példa a skála-invariáns kernel (Sahbi and Fleuret, 2004), és szintén csak feltételesen pozitív határozott.
15. Log Kernel
a Log kernel különösen érdekesnek tűnik a képek számára,de csak feltételesen pozitív.
16. Spline Kernel
a Spline kernel adott, mint egy darab-bölcs köbös polinom, származtatott munkáiban Gunn (1998).
valójában azt jelenti:
a
17. B-Spline (radiális Alapfüggvény) Kernel
A B-Spline kernel az intervallumon van meghatározva . Ezt a rekurzív képlet adja meg:
A Bart Hamers munkájában a következő adja meg:
alternatívaként a Bn az explicit kifejezés használatával számítható (Fomel, 2000):
ahol x + a csonka teljesítményfüggvény:
18. Bessel Kernel
a Bessel kernel jól ismert a frakcionált simaság függvénytereinek elméletében.
ahol J az első fajta Bessel függvény. Az R dokumentációhoz tartozó Kernlab-ban azonban a Bessel kernel neve a következő:
19. Cauchy Kernel
a Cauchy kernel a Cauchy disztribúcióból származik (Basak, 2008). Ez egy hosszú farkú kernel, amely nagy hatótávolságú befolyást és érzékenységet biztosít a nagy dimenziós tér felett.
20. Chi-négyzet Kernel
A Chi-négyzet kernel a Chi-négyzet eloszlásból származik:
azonban, amint azt Alexis Mignon kommentátor megjegyezte, a kernel ezen verziója csak feltételesen pozitív-határozott (CPD). Ennek a kernelnek a pozitív-határozott változatát (Vedaldi és Zisserman, 2011)
és a támogató vektorgépeken kívül más módszerekkel is alkalmazható.
21. Hisztogram metszéspont Kernel
A hisztogram metszéspont Kernel is ismert, mint a Min Kernel, és bebizonyosodott, hasznos kép osztályozás.
22. Generalizált hisztogram metszéspont
az általánosított hisztogram metszéspont kernel épül a hisztogram metszéspont Kernel kép osztályozás, de vonatkozik egy sokkal nagyobb különböző kontextusok (Boughorbel, 2005). Ezt a következők adják:
23. Általánosított t-Student Kernel
az általánosított t-Student Kernel Mercel kernelnek bizonyult, így pozitív félig határozott Kernel mátrixot kapott (Boughorbel, 2004). Ezt a következők adják:
24. Bayes Kernel
a Bayes kernel adható:
ahol
azonban ez valóban a modellezett problémától függ. További információért lásd Alashwal, Deris és Othman munkáját, amelyben Bayes-kernelekkel ellátott SVM-et használtak a fehérje-fehérje kölcsönhatások előrejelzésében.
25. Wavelet Kernel
a Wavelet kernel (Zhang et al, 2004) a Wavelet elméletből származik,és a következőképpen adható meg:
ahol a és C a wavelet dilatációs és fordítási együtthatók (a fent bemutatott forma egyszerűsítés, a részletekért lásd az eredeti papírt). Ennek a kernelnek a fordítási-invariáns változata a következőképpen adható meg:
ahol mindkét h(x) egy anya hullámfüggvényt jelöl. Li Zhang, Weida Zhou és Licheng Jiao tanulmányában a szerzők egy lehetséges h(x) – t javasolnak, mint:
, amelyet szintén elfogadható kernel funkciónak bizonyítanak.
forráskód
a forráskód legújabb verziója szinte az összes fent felsorolt kernelhez elérhető a Accord.NET keret. Néhány is elérhető a folytatást ezt a cikket, Kernel Support vector Machines osztályozás és regresszió C#. Ezek az SVMs (Support Vector Machines) C# – ban történő átfogó és egyszerű implementációjával együtt kerülnek biztosításra. Azonban a legújabb források, amelyek tartalmazhatnak hibajavításokat, illetve egyéb fejlesztések, kérjük, töltse le a legújabb verzió elérhető Accord.NET.
Lásd
- Kernel Support Vector Machines (kSVMs)
- Fő Komponens Analízis (PCA)
- Kernel Principal Component Analysis (KPCA)
- Lineáris Diszkriminancia-Analízis (LDA)
- a Nem-Lineáris Diszkriminancia-Elemzés Kernelek (KDA)
- Logisztikus Regressziós Elemzés a C#
- A Accord.NET Keret: Tudományos Számítási .NETTÓ
- Haar-funkció objektum észlelése a C# (A Viola-Jones Osztályozó)
- Kézírás-Felismerés használata Kernel Diszkriminancia-Elemzés
- Kézírás-Felismerés Revisited: Kernel Support vector Machines
- Logistic regressziós Analysis
- On-Line predikciós Wiki Contributors. “Kernel Módszerek.”On-Line Jóslat Wiki. http://onlineprediction.net/?n=Main.KernelMethods (elérhető: 2010.március 3.).
- Genton, Marc G. ” Classes of Kernels for Machine Learning: A Statistics Perspective.”Journal of Machine Learning Research 2 (2001) 299-312.
- Hofmann, T., B. Schölkopf és A. J. Smola. “Kernel módszerek a gépi tanulásban.”Ann. Statista. 36. Kötet, 3. Szám (2008), 1171-1220.
- Gunn, S. R. (1998, május). “Support vector machines for classification and regression.”Technical report, Faculty of Engineering, Science and Mathematics School of Electronics and Computer Science.
- Karatzoglou, A., Smola, A., Hornik, K. and Zeileis, A. “Kernlab – an R package for kernel Learning.” (2004).
- Karatzoglou, A., Smola, A., Hornik, K. and Zeileis, A. “Kernlab – an S4 package for kernel methods in R.” J. Statistical Software, 11, 9 (2004).
- Karatzoglou, A., Smola, A., Hornik, K. és Zeileis, A. ” R: Kernel függvények.”Dokumentáció a” kernlab ” csomag 0.9-5 verziójához. http://rss.acs.unt.edu/Rdoc/library/kernlab/html/dots.html (elérhető: 2010.március 3.).
- Howley, T. and Madden, M. G.”the genetic kernel support Vector machine: Description and evaluation”. Mesterséges Intelligencia Felülvizsgálata. 24. Kötet, 3. Szám( 2005), 379-395.
- Shawkat Ali és Kate A. Smith. “Kernel Width Selection for SVM Classification: a Meta-Learning Approach.”International Journal of Data Warehousing & Mining, 1(4), 78-97, October-December 2005.
- Hsuan-Tien Lin és Chih-Jen Lin. “A study on sigmoid kernels for SVM and the training of non-PSD kernels by SMO-type methods.”Technical report, Department of Computer Science, National Taiwan University, 2003.
- Boughorbel, S., Jean-Philippe Tarel és Nozha Boujemaa. “Project-Imedia: Objektumfelismerés.”INRIA-INRIA Activity Reports-RalyX. http://ralyx.inria.fr/2004/Raweb/imedia/uid84.html (elérhető: 2010.március 3.).
- Huang, Lingkang. “Variable Selection in Multi-class Support Vector Machine and Applications in Genomic Data Analysis.”PhD Disszertáció, 2008.
- Manning, Christopher D., Prabhakar Raghavan és Hinrich Schütze. “Nemlineáris SVMs.”A Stanford NLP (Natural Language Processing) csoport. http://nlp.stanford.edu/IR-book/html/htmledition/nonlinear-svms-1.html (elérhető: 2010.március 3.).
- Fomel, Sergey. “Inverz B-spline interpoláció.”Stanford Exploration Project, 2000. http://sepwww.stanford.edu/public/docs/sep105/sergey2/paper_html/node5.html (elérhető: 2010.március 3.).
- Basak, Jayanta. “A legkisebb négyzet kernel gép doboz megszorítások.”International Conference on Pattern Recognition 2008 1 (2008): 1-4.
- Alashwal, H., Safaai Deris és Razib M. Othman. “Bayesian Kernel a fehérje – fehérje kölcsönhatások előrejelzésére.”International Journal of Computational Intelligence 5, no. 2 (2009): 119-124.
- Hichem Sahbi és François Fleuret. “Kernel methods and scale invariance using the triangular kernel”. INRIA Research Report, N-5143, március 2004.
- Sabri Boughorbel, Jean-Philippe Tarel és Nozha Boujemaa. “Generalized histogram intersection kernel for image recognition”. Proceedings of the 2005 Conference on Image Processing, volume 3, pages 161-164, 2005.
- Micchelli, Charles. Szórt adatok interpolációja: távolság mátrixok és feltételesen pozitív határozott függvények. Konstruktív közelítés 2, no.1 (1986): 11-22.
- Wikipedia contributors, ” Kernel methods,”Wikipedia, the Free Encyclopedia, http://en.wikipedia.org/w/index.php?title=Kernel_methods&oldid=340911970 (elérhető 2010.március 3-án).
- Wikipedia contributors, “Kernel trick”, Wikipedia, the Free Encyclopedia, http://en.wikipedia.org/w/index.php?title=Kernel_trick&oldid=269422477 (elérhető 2010.március 3-án).
- Weisstein, Eric W. ” pozitív Félidefinit mátrix.”From MathWorld – A Wolfram Web Resource. http://mathworld.wolfram.com/PositiveSemidefiniteMatrix.html
- Hamers B.” Kernel Models for Large Scale Applications”, Ph.D., Katholieke Universiteit Leuven, Belgium, 2004.
- Li Zhang, Weida Zhou, Licheng Jiao. Wavelet Támogató Vektor Gép. IEEE tranzakciók rendszer, ember és kibernetika, B. rész, 2004, 34(1): 34-39.
- Vedaldi, A. and Zisserman, A. Efficient Additive Kernels via Explicit Feature Maps. IEEE Transactions on Pattern Recognition and Machine Intelligence, Vol. XX, nem. XX, június, 2011.
idézi ezt a munkát
Ha szeretné, kérjük, idézze ezt a munkát: Souza, César R. “kernel funkciók gépi tanulási alkalmazásokhoz. Március 17. 2010. Web. <http://crsouza.blogspot.com/2010/03/kernel-functions-for-machine-learning.html>.