Mësimi i mbikëqyrur

[parapamje|Në të mësuarit e mbikëqyrur, të dhënat e trajnimit etiketohen me përgjigjet e pritura, ndërsa në [Mësimi i pambikëqyrur|të mësuarit pa mbikëqyrje, modeli identifikon modele ose struktura në të dhënat e paetiketuara.]]
Në të mësuarit makinerik, **të mësuarit e mbikëqyrur** (eng. **Supervised Learning** ) është një lloj paradigme e të mësuarit makinerik ku një algoritëm mëson të lidhë të dhënat hyrëse në një dalje specifike bazuar në çifte shembujsh hyrje-dalje. Ky proces përfshin trajnimin e një modeli statistikor duke përdorur të dhëna të etiketuara, që do të thotë se çdo pjesë e të dhënave hyrëse i jepet rezultati i saktë. Për shembull, nëse dëshironi që një model të identifikojë macet në imazhe, të mësuarit e mbikëqyrur do të përfshinte futjen e shumë imazheve të maceve (hyrjeve) që janë etiketuar në mënyrë të qartë si "mace" (dalje).

Qëllimi i të mësuarit të mbikëqyrur është që modeli i trajnuar të parashikojë me saktësi daljen për të dhëna të reja dhe të papara.  Kjo kërkon që algoritmi të jetë në gjendje të përgjithësojë në mënyrë efektive nga shembujt e trajnimit, një aftësi që matet përmes *gabimit të përgjithësimit* . Të mësuarit e mbikëqyrur përdoret zakonisht për detyra si klasifikimi (parashikimi i një kategorie, p.sh., spam apo jo spam) dhe regresioni (parashikimi i një vlere të vazhdueshme, p.sh., çmimet e shtëpive).

## Hapat që duhen ndjekur 
Për të zgjidhur një problem të caktuar të të mësuarit të mbikëqyrur, duhet të kryhen hapat e mëposhtëm:

# Përcaktoni llojin e mostrave të trajnimit. Përpara se të bëjë ndonjë gjë tjetër, përdoruesi duhet të vendosë se çfarë lloj të dhënash do të përdoren si një grup trajnimi . Në rastin e analizës së shkrimit të dorës, për shembull, ky mund të jetë një karakter i vetëm i shkruar me dorë, një fjalë e tërë, një fjali e tërë ose një paragraf i plotë i shkruar me dorë.
# Mblidhni një grup trajnimi. Grupi i trajnimit duhet të jetë përfaqësues i përdorimit të funksionit në botën reale. Kështu, një grup objektesh hyrëse mblidhet së bashku me daljet përkatëse, qoftë nga ekspertë njerëzorë ose nga matje.
# Përcaktoni përfaqësimin e karakteristikave hyrëse të funksionit të mësuar. Saktësia e funksionit të mësuar varet shumë nga mënyra se si përfaqësohet objekti hyrës. Zakonisht, objekti hyrës transformohet në një vektor karakteristikash, i cili përmban një numër karakteristikash  përshkruese të objektit. Numri i karakteristikave nuk duhet të jetë shumë i madh, për shkak të mallkimit të dimensionalitetit; por duhet të përmbajë informacion të mjaftueshëm për të parashikuar me saktësi daljen.
# Përcaktoni strukturën e funksionit të mësuar dhe algoritmin përkatës të të mësuarit. Për shembull, dikush mund të zgjedhë të përdorë makina me vektorë mbështetës (SVM) ose pemë vendimesh.
# Përfundoni dizajnin. Ekzekutoni algoritmin e të mësuarit mbi grupin e trajnimit të mbledhur. Disa algoritme të të mësuarit të mbikëqyrur kërkojnë që përdoruesi të përcaktojë disa parametra kontrolli. Këta parametra mund të rregullohen duke optimizuar performancën në një nëngrup (të quajtur *grup validimi*) të grupit të trajnimit, ose përmes validimit të kryqëzuar.
# Vlerësoni saktësinë e funksionit të mësuar. Pas rregullimit të parametrave dhe të mësuarit, performanca e funksionit të përfituar duhet të matet në një grup testimi që është i ndarë nga grupi i trajnimit.

## Zgjedhja e algoritmit 
Një gamë e gjerë algoritmesh të të mësuarit të mbikëqyrur është në dispozicion, secili me pikat e forta dhe të dobëta. Nuk ekziston një algoritëm i vetëm i të mësuarit që funksionon më mirë për të gjitha problemet e të mësuarit të mbikëqyrur (shih teoremën "Pa drekë falas" ).

Ekzistojnë katër çështje kryesore që duhen marrë parasysh në të mësuarit e mbikëqyrur:

### Kompromisi mes paragjykimit dhe variancës 
Një çështje e parë është kompromisi midis *paragjykimit* dhe *variancës*. Imagjinoni se kemi në dispozicion disa grupe të dhënash trajnimi të ndryshme, por njësoj të mira. Një algoritëm i të mësuarit është i paragjykuar për një të dhënë hyrëse të caktuar x nëse, kur trajnohet në secilin prej këtyre grupeve të të dhënave, parashikimi i tij për rezultatin e saktë të x është sistematikisht i pasaktë. Një algoritëm i të mësuarit ka variancë të lartë për një të dhënë të caktuar hyrëse x nëse ai parashikon vlera të ndryshme dalëse kur trajnohet në grupe të ndryshme trajnimi. Gabimi i parashikimit të një klasifikuesi të mësuar lidhet me shumën e paragjykimit dhe variancës së algoritmit të të mësuarit.  Në përgjithësi, ekziston një kompromis midis paragjykimit dhe variancës. Një algoritëm i të mësuarit me paragjykim të ulët duhet të jetë "fleksibël" në mënyrë që të mund t'i përshtatet mirë të dhënave. Por nëse algoritmi i të mësuarit është shumë fleksibël, ai do t'i përshtatet çdo grupi të dhënash trajnimi ndryshe, dhe për këtë arsye do të ketë variancë të lartë. Një aspekt kyç i shumë metodave të të mësuarit të mbikëqyrur është se ato janë në gjendje të rregullojnë këtë kompromis midis paragjykimit dhe variancës (ose automatikisht ose duke ofruar një parametër paragjykimi/variance që përdoruesi mund ta rregullojë).

### Kompleksiteti i funksionit dhe sasia e të dhënave të trajnimit 
Çështja e dytë ka të bëjë me sasinë e të dhënave të trajnimit të disponueshme në lidhje me kompleksitetin e funksionit "të vërtetë" (klasifikuesi ose funksioni i regresionit). Nëse funksioni i vërtetë është i thjeshtë, atëherë një algoritëm mësimi "jofleksibël", me paragjykim të lartë dhe variancë të ulët, do të jetë në gjendje ta mësojë atë edhe nga një sasi e vogël e të dhënave. Por nëse funksioni i vërtetë është shumë kompleks (p.sh., për shkak të ndërveprimeve komplekse midis shumë karakteristikave të ndryshme të hyrjes dhe mënyrës se si sillet në pjesë të ndryshme të hapësirës së hyrjes), atëherë funksioni do të jetë në gjendje të mësojë vetëm me një sasi të madhe të dhënash trajnimi të kombinuara me një algoritëm mësimi "fleksibël" me paragjykim të ulët dhe variancë të lartë.

### Dimensionaliteti i hapësirës hyrëse 
Një çështje e tretë është dimensionaliteti i hapësirës hyrëse. Nëse vektorët e karakteristikave hyrëse kanë dimensione të mëdha, të mësuarit e funksionit mund të jetë i vështirë, edhe nëse funksioni i vërtetë varet vetëm nga një numër i vogël i këtyre karakteristikave. Kjo ndodh sepse shumë dimensione "shtesë" mund ta ngatërrojnë algoritmin e të mësuarit dhe ta bëjnë atë të ketë variancë të lartë.Prandaj, të dhënat hyrëse me dimensione të mëdha zakonisht kërkojnë që klasifikuesi të rregullohet për të pasur variancë të ulët dhe paragjykim të lartë. Në praktikë, nëse inxhinieri mund të heqë manualisht karakteristikat e parëndësishme nga të dhënat hyrëse, kjo zakonisht përmirëson saktësinë e funksionit të mësuar. Përveç kësaj, ekzistojnë shumë algoritme për përzgjedhjen e karakteristikave që synojnë të identifikojnë karakteristikat e rëndësishme dhe të eliminojnë ato të parëndësishme. Ky është një shembull i strategjisë më të përgjithshme të reduktimit të dimensionalitetit, e cila synon t'i shndërrojë të dhënat hyrëse në një hapësirë me dimensione më të ulëta përpara se të ekzekutohet algoritmi i të mësuarit të mbikëqyrur.

### Zhurma në vlerat dalëse 
Një çështje e katërt është shkalla e zhurmës në vlerat e dëshiruara të daljes ( variablat e synuara mbikëqyrëse). Nëse këto vlera shpesh janë të pasakta (për shkak të gabimeve njerëzore ose të sensorëve), atëherë algoritmi i të mësuarit nuk duhet të përpiqet të gjejë një funksion që përputhet saktësisht me shembujt e trajnimit. Përpjekja për t'i përshtatur të dhënat me shumë kujdes çon në mbipërshtatje (overfitting). Ju mund ta mbipërshtatni edhe kur nuk ka gabime matjeje (zhurmë stokastike) nëse funksioni që po përpiqeni të mësoni është shumë kompleks për modelin tuaj të të mësuarit. Në një situatë të tillë, pjesa e funksionit të synuar që nuk mund të modelohet "korrupton" të dhënat tuaja të trajnimit - ky fenomen është quajtur zhurmë deterministike . Kur është i pranishëm ndonjë nga këto lloje zhurme, është më mirë të përdoret një vlerësues me paragjykim më të lartë dhe variancë më të ulët.

Në praktikë, ekzistojnë disa qasje për të zbutur zhurmën në vlerat e daljes, siç është ndalimi i hershëm për të parandaluar mbipërshtatjen, si dhe zbulimi dhe heqja e shembujve të trajnimit me zhurmë para trajnimit të algoritmit të të mësuarit të mbikëqyrur. Ekzistojnë disa algoritme që identifikojnë shembujt e trajnimit me zhurmë dhe heqja e shembujve të dyshuar të trajnimit me zhurmë para trajnimit ka ulur gabimin e përgjithësimit me rëndësi statistikore. 

### Faktorë të tjerë për t'u marrë në konsideratë 
Faktorë të tjerë që duhen marrë në konsideratë kur zgjidhet dhe aplikohet një algoritëm mësimi përfshijnë:

* Heterogjeniteti i të dhënave. Nëse vektorët e karakteristikave përfshijnë karakteristika të shumë llojeve të ndryshme (diskrete, diskrete të renditura, numërime, vlera të vazhdueshme), disa algoritme janë më të lehta për t'u aplikuar sesa të tjerët. Shumë algoritme, duke përfshirë makinat mbështetëse-vektoriale, regresionin linear, regresionin logjistik, rrjetet nervore dhe metodat e fqinjit më të afërt, kërkojnë që karakteristikat e hyrjes të jenë numerike dhe të shkallëzuara në intervale të ngjashme (p.sh., në intervalin [-1,1]). Metodat që përdorin një funksion distance, siç janë metodat e fqinjit më të afërt dhe makinat mbështetëse-vektoriale me bërthama Gaussiane, janë veçanërisht të ndjeshme ndaj kësaj. Një avantazh i pemëve të vendimmarrjes është se ato trajtojnë lehtësisht të dhëna heterogjene.
* Redundanca në të dhëna. Nëse karakteristikat e të dhënave hyrëse përmbajnë informacion të tepërt (p.sh., karakteristika shumë të korreluara), disa algoritme të të mësuarit (p.sh., regresioni linear, regresioni logjistik dhe metodat e bazuara në distancë ) do të performojnë dobët për shkak të paqëndrueshmërive numerike. Këto probleme shpesh mund të zgjidhen duke imponuar një formë rregullarizimi .
* Prania e ndërveprimeve dhe jo-lineariteteve. Nëse secila prej karakteristikave jep një kontribut të pavarur në rezultat (dalje), atëherë algoritmet e bazuara në funksione lineare (p.sh., regresioni linear, regresioni logjistik, makinat mbështetëse-vektoriale, Bayes naive ) dhe funksionet e distancës (p.sh., metodat e fqinjit më të afërt, makinat mbështetëse-vektoriale me bërthama Gaussiane ) në përgjithësi performojnë mirë. Megjithatë, nëse ka ndërveprime komplekse midis karakteristikave, atëherë algoritmet si pemët e vendimeve dhe rrjetet nervore funksionojnë më mirë, sepse ato janë projektuar posaçërisht për të zbuluar këto ndërveprime. Metodat lineare gjithashtu mund të aplikohen, por inxhinieri duhet të specifikojë manualisht ndërveprimet kur i përdor ato.

Kur shqyrton një aplikim të ri, inxhinieri mund të krahasojë algoritme të shumta të të mësuarit dhe të përcaktojë eksperimentalisht se cili funksionon më mirë për problemin në fjalë (shih validimin e kryqëzuar ). Rregullimi i performancës së një algoritmi të të mësuarit mund të marrë shumë kohë. Duke pasur parasysh burimet e kufizuara, shpesh është më mirë të shpenzohet më shumë kohë duke mbledhur të dhëna shtesë trajnimi dhe karakteristika më informuese sesa të shpenzohet kohë shtesë në rregullimin e algoritmeve të të mësuarit.

### Algoritmet 
Algoritmet e të mësuarit më të përdorura janë:

* Makinat mbështetëse-vektoriale
* Regresioni linear
* Regresioni logjistik
* Naive Bayes
* Analiza e diskriminantës lineare
* Pemët e vendimeve
* algoritmi k-fqinjët më të afërt
* Rrjetet nervore (p.sh., perceptroni shumështresor )
* Mësimi i ngjashmërisë

## Si funksionojnë algoritmet e të mësuarit të mbikëqyrur 
Duke pasur parasysh një bashkësi prej N shembujsh trajnimi të formës \{(x_1, y_1), ..., (x_N,\; y_N)\} i tillë që x_i është vektori i karakteristikave të shembullit të i-të, dhe y_i është etiketa e tij (p.sh., klasa), një algoritëm mësimor kërkon një funksion g: X \to Y, ku X është hapësira hyrëse dhe Y është hapësira e daljes. Funksioni g është një element i një hapësire funksionesh të mundshme G, zakonisht i quajtur *hapësira e hipotezave* . Ndonjëherë është e përshtatshme që g të përfaqësohet duke përdorur një funksion vlerësimi f: X \times Y \to \mathbb{R} kështu që g përcaktohet duke kthyer vlerën y që jep rezultatin më të lartë: g(x) = \underset{y}{\arg\max} \; f(x,y). Le të shënojmë me F hapësirën e funksioneve të vlerësimit.

Edhe pse G dhe F mund të jetë çdo hapësirë funksionesh, shumë algoritme të të mësuarit janë modele probabilistike ku g merr formën e një modeli të probabilitetit të kushtëzuar g(x) = \underset{y}{\arg\max} \; P(y|x), ose f merr formën e një modeli të probabilitetit të përbashkët f(x,y) = P(x,y) Për shembull, analiza naive Bayes dhe analiza e diskriminantës lineare janë modele të përbashkëta probabiliteti, ndërsa regresioni logjistik është një model probabiliteti i kushtëzuar.

Ekzistojnë dy qasje themelore për zgjedhjen e f ose g : minimizimi empirik i rrezikut dhe minimizimi strukturor i rrezikut. Minimizimi empirik i rrezikut kërkon funksionin që i përshtatet më së miri të dhënave të trajnimit. Minimizimi strukturor i rrezikut përfshin një *funksion penalizimi* që kontrollon kompromisin paragjykim/variancë.

Në të dyja rastet, supozohet se bashkësia e trajnimit përbëhet nga një mostër çiftesh të pavarura dhe të shpërndara në mënyrë identike, (x_i, \;y_i). Për të matur se sa mirë një funksion i përshtatet të dhënave të trajnimit, një funksion i humbjes  L: Y \times Y \to
\mathbb{R}^{\ge 0} është definuar. Për shembullin e trajnimit (x_i,\;y_i), humbja e parashikimit të vlerës \hat{y} është L(y_i,\hat{y}) .

*Rreziku* R(g) i funksionit g përcaktohet si humbja e pritshme e g. Kjo mund të vlerësohet nga të dhënat e trajnimit si

: R_{emp}(g) = \frac{1}{N} \sum_i L(y_i, g(x_i)).

### Minimizimi empirik i rrezikut 
Në minimizimin empirik të rrezikut, algoritmi i të mësuarit të mbikëqyrur kërkon funksionin g që minimizon R(g). Prandaj, një algoritëm i të mësuarit të mbikëqyrur mund të ndërtohet duke aplikuar një algoritëm optimizimi për të gjetur g .

Kur g është një shpërndarje e probabilitetit të kushtëzuar P(y|x) dhe funksioni i humbjes është logaritmi negativ i gjasave: L(y, \hat{y}) = -\log P(y | x), atëherë minimizimi empirik i rrezikut është ekuivalent me vlerësimin e gjasës maksimale .

Kur G përmban shumë funksione kandidate ose bashkësia e trajnimit nuk është mjaftueshëm e madhe, minimizimi i rrezikut empirik çon në variancë të lartë dhe përgjithësim të dobët. Algoritmi i të mësuarit është në gjendje të mësojë përmendësh shembujt e trajnimit pa i përgjithësuar mirë (mbipërshtatje).

### Minimizimi i rrezikut strukturor 
Minimizimi i rrezikut strukturor synon të parandalojë mbipërshtatjen duke përfshirë një ndëshkimi të rregullarizimit në optimizim. Ndëshkimi i rregullarizimit mund të shihet si zbatim i një forme të briskut të Occam-it që preferon funksione më të thjeshta përkundër atyre më komplekse.

Janë përdorur një gamë e gjerë ndëshkimesh që korrespondojnë me përkufizime të ndryshme të kompleksitetit. Për shembull, merrni parasysh rastin kur funksioni g është një funksion linear i formës

:  g(x) = \sum_{j=1}^d \beta_j x_j.

Një ndëshkim i zakonshëm i rregullarizimit është \sum_j \beta_j^2, që është norma Euklidiane në katror e peshave, e njohur edhe si norma L_2. Norma të tjera përfshijnë normën L_1, \sum_j |\beta_j|, dhe  "normën"  L_0 , që është numri i \beta_js  të ndryshme nga zero. Ndëshkimi do të shënohet me C(g) .

Problemi i optimizimit të të mësuarit të mbikëqyrur është të gjesh funksionin g që minimizon

:  J(g) = R_{emp}(g) + \lambda C(g).

Parametri \lambda kontrollon kompromisin paragjykim-variancë. Kur \lambda = 0, kjo jep minimizim empirik të rrezikut me paragjykim të ulët dhe variancë të lartë. Kur \lambda është i madh, algoritmi i të mësuarit do të ketë paragjykim të lartë dhe variancë të ulët. Vlera e \lambda mund të zgjidhet empirikisht nëpërmjet validimit të kryqëzuar .

Penaliteti i kompleksitetit ka një interpretim Bayesian si probabiliteti negativ logaritmik paraprak i g, -\log P(g), ku në këtë rast J(g) është probabiliteti posterior i g .

## Trajnim gjenerues 
Metodat e trajnimit të përshkruara më sipër janë metoda *trajnimi diskriminuese*, sepse ato kërkojnë të gjejnë një funksion g që dallon mirë midis vlerave të ndryshme të daljes (shih modelin diskriminues ). Për rastin e veçantë ku f(x,y) = P(x,y) është një shpërndarje e përbashkët probabiliteti dhe funksioni i humbjes është logaritmi negativ i gjasave - \sum_i \log P(x_i, y_i), një algoritëm i minimizimit të rrezikut thuhet se kryen *trajnim gjenerues*, sepse f mund të konsiderohet si një model gjenerues që shpjegon se si janë gjeneruar të dhënat. Algoritmet e trajnimit gjenerues janë shpesh më të thjeshta dhe më efikase në llogaritje sesa algoritmet e trajnimit diskriminues. Në disa raste, zgjidhja mund të llogaritet në formë të mbyllur si në analizën naive Bayes dhe analizën lineare të diskriminantës.

## Përgjithësime 
parapamje|300x300px|Tendenca që një detyrë të përdorë metoda të mbikëqyrura kundrejt atyre të pambikëqyrura. Emrat e detyrave që shtrihen përgjatë kufijve të rrethit janë të qëllimshme. Kjo tregon se ndarja klasike e detyrave imagjinative (majtas) që përdorin metoda të pambikëqyrura është e paqartë në skemat e sotme të të nxënit.
Ekzistojnë disa mënyra se si problemi standard i të mësuarit të mbikëqyrur mund të përgjithësohet:

* Mësim gjysmë i mbikëqyrur ose mbikëqyrje e dobët: vlerat e dëshiruara dalëse jepen vetëm për një nëngrup të të dhënave të trajnimit. Të dhënat e mbetura janë të paetiketuara ose të etiketuara në mënyrë të pasaktë.
* Mësimi aktiv : Në vend që të supozohet se të gjithë shembujt e trajnimit jepen në fillim, algoritmet e mësimit aktiv mbledhin në mënyrë interaktive shembuj të rinj, zakonisht duke i bërë pyetje një përdoruesi njerëzor. Shpesh, pyetjet bazohen në të dhëna të paetiketuara, që është një skenar që kombinon mësimin gjysmë të mbikëqyrur me mësimin aktiv.
* Parashikimi i strukturuar : Kur vlera e dëshiruar e daljes është një objekt kompleks, siç është një pemë analize ose një graf i etiketuar, atëherë metodat standarde duhet të zgjerohen.
* Të mësuarit e renditjes : Kur hyrja është një bashkësi objektesh dhe rezultati i dëshiruar është një renditje e këtyre objekteve, atëherë përsëri metodat standarde duhet të zgjerohen.

## Qasjet dhe algoritmet 
* Mësim analitik
* Rrjeti nervor artificial
* Përhapja prapa
* Përmirësim (meta-algoritëm)
* Statistikat Bayesiane
* Arsyetimi i bazuar në raste
* Mësimi i pemës së vendimeve
* Programimi logjik induktiv
* Regresioni i procesit Gaussian
* Programimi gjenetik
* Metoda e grupit të trajtimit të të dhënave
* Vlerësuesit e bërthamës
* Automata e të mësuarit
* Sistemet e klasifikuesve të të mësuarit
* Kuantizimi vektorial i të mësuarit
* Gjatësia minimale e mesazhit ( pemë vendimesh, grafikë vendimesh, etj.)
* Mësimi multilinear i nënhapësirës
* Klasifikuesi Naive Bayes
* Klasifikuesi i entropisë maksimale
* Fushë e rastësishme e kushtëzuar
* Algoritmi i fqinjit më të afërt
* Mësim ndoshta afërsisht i saktë (PAC)
* Rregullat Ripple down, një metodologji për përvetësimin e njohurive
* Algoritmet simbolike të të mësuarit të makinës
* Algoritmet subsimbolike të të mësuarit të makinës
* Makinat vektoriale mbështetëse
* Makinat me kompleksitet minimal (MCM)
* Pyje të rastësishme
* Ansamblet e klasifikuesve
* Klasifikimi rendor
* Para-përpunimi i të dhënave
* Trajtimi i grupeve të të dhënave të pabalancuara
* Mësimi statistikor relacional
* Proaftn, një algoritëm klasifikimi shumëkriterësh

## Aplikimet 
* Bioinformatikë
* Kiminoformatikë
** Marrëdhënia sasiore strukturë-aktivitet
* Marketingu i bazës së të dhënave
* Njohja e shkrimit të dorës
* Rikthimi i informacionit
** Të mësuarit e renditjes
* Nxjerrja e informacionit
* Njohja e objekteve në vizionin kompjuterik
* Njohja optike e karaktereve
* Zbulimi i spamit
* Njohja e modelit
* Njohja e të folurit
* Mësimi i mbikëqyrur është një rast i veçantë i downward causation në sistemet biologjike.
* Klasifikimi i formave të relievit duke përdorur imazhe satelitore 
* Klasifikimi i shpenzimeve në proceset e prokurimit 

## Çështje të përgjithshme 
* Teoria e të mësuarit kompjuterik
* Paragjykim induktiv
* Mbipërshtatje
* Probabilitetet e anëtarësimit në klasë (të pakalibruara)
* Hapësirat e versionit

## Shih edhe 
* Lista e të dhënave për kërkimin e të mësuarit automatik
* Mësim i pambikëqyrur

## Referime