Aprenentatge (automàtic) - Primera part

Curs 2005/06


PROFESSOR
Lluís Talavera
talavera at lsi dot upc dot edu
Edifici Omega, D. 223

TEORIA:

Dilluns 8-10, A5204
Dijous 10-12, A4206

LABORATORI:
Divendres 10-11 (a11), A5S108
Divendres 11-12 (a12), A5S108

Full informatiu de l'assignatura

Alone...

TASQUES:

Enunciat Tasca 1 (acabada)
Enunciat Tasca 2 (acabada)
Enunciat Tasca 3 (acabada)
  • Per cada dia endarrerit d'entrega hi ha una reducció d'un 25% de la nota. En aquest cas, és responsabilitat de l'estudiant contactar i quedar amb el professor per fer l'entrega en persona.
  • Els problemes són una tasca individual. Es considerarà correcte utilitzar idees d'altres companys sempre que a) expliqueu els problemes que heu tingut per solucionar la tasca individualment, b) feu constar l'origen de la idea i c) el desenvolupament i redacció final de la tasca sigui individual.
Frikismes de Machine Learning

Com saber si t'has convertit en un friki de Machine Learning (i com saber si et sonen molts conceptes de l'assignatura)

Sabíeu que weka és el nom d'un ocell de Nova Zelanda? El Xavi Rius, tant investigar sobre Weka ha trobat inclús el seu só.

La veritat és que n'hi han frikis de l'aprenentatge automàtic,
mireu, un fragment d'un rap sobre "machine learning":
What kind of thing do you want it to learn to do?
Its action is a function: given input, what to map it to.
The function that it learns is called "hypothesis";
the function that you call is hyped as, "Learn this!"
How do you represent your hypo-thesis? Like this:
Decision tree, function tree, neural network.
Pick a good representation that is expressive enough to work.

PRÀCTICA EN GRUP

Llista de propostes per a la pràctica i normes d'entrega
Guió per a l'elaboració de l'informe

Data límit d'entrega de la pràctica: 2/12/2005, 14:00

Fixeu-vos que hi ha varies fases d'entrega, però, excepte la documentació final, per a aquestes no hi ha dates límit, així que organitzeu-vos bé.



Guia d'estudi



Setmana 1 (12 setembre 2005)

Introducció a l'aprenentatge automàtic. Marc general de referència: entorn, component d'aprenentatge, base de coneixement, component d'actuació. Terminologia bàsica: conceptes, instàncies, atributs, classe. Aprenentatge de conjuncions lògiques. Aprenentatge com a cerca en espai d'estats. Algorismes exahustius bàsics: general a específic, específic a general. Biaix de representació i de cerca i les limitacions del procés d'aprenentatge. Ordre parcial dels conceptes. Algorismes incrementals. Espai de Versions i l'algorisme d'Eliminació de Candidats.

Referències

Marc de referència

Aprenentatge de conjuncions lògiques
Espai de Versions i l'algorisme d'Eliminació de Candidats
Referències complementàries

P. Langley, H. A. Simon (1995). Applications of Machine Learning and Rule Induction. Communications of the ACM, 38, November, 55-64.

Tot i que ja és un text una mica antic, conté un recull de problemes reals on es pot aplicar l'aprenentatge automàtic. Actualment hi han d'altres àrees on s'ha aplicat amb éxit  i que no surten aqui o es comenten breument, però l'article ja dóna una bona idea del potencial dels mètodes d'aprenentatge. Alguns aspectes com els paradigmes de l'aprenentatge que proposa potser també estan una mica desfasats, però moltes altres qüestions como les fases del procés d'una aplicació real encara són vigents.

Material de Laboratori

Aprenentatge de conjuncions
Codi font: conjulearn.tgz. Cal descomprimir-lo amb "tar xvzf conjulearn.tgz" i executar "make" per a compilar-lo.
Conjunts de dades: ds.tgz.

Per executar-lo des de la línia de comandes cal fer:

conjulearn [opcions] fitxer_dades

on les opcions poden ser:
-v 2 per a mostrar una traça del procés.
-p per a activar la poda.
i fitxer_dades és el nom d'un dels fitxers que heu descarregat sense extensió.

Espai de Versions

Cal descarregar aquesta versió de l'eina Weka: weka.jar.
NOTA: Aquesta versió de Weka incorpora el codi per a l'Espai de Versions desenvolupat i cedit amablement per Raymond Mooney, que no trobareu a les versions de Weka que hi ha a Internet.

Per executar-lo des de la línia de comandes cal fer:

java weka.classifiers.vspace.ConjunctiveVersionSpace -t fitxer_dades -T fitxer_dades -v -P

on fitxer_dades és un fitxer en format ARFF.
Aqui teniu un exemple amb les nostres benvolgudes cèl.lules: cells.arff.

Documentació de Weka
Introducció a l'ús de Weka a la línia de comandes per Alex K. Seewald.
Guia de l'Explorer .



Setmana 2 (19 setembre 2005)

Aprenentatge de conjuncions. Algorismes heurístics, avantatges i limitacions.
Avaluació de classificadors. Precisió/error de la mostra i real. Hold-out i cross-validation. Matriu de confusió. Sobreajust (overfitting).

Referències

Aprenentatge de conjuncions lògiques (algorismes heurístics)
Avaluació de classificadors


Setmana 3 (26 setembre 2005)

Aprenentatge de conceptes basats en llindars (threshold concepts). Introducció al perceptró i els discriminants lineals. Clustering: algorisme leader.
Aprenentatge de conceptes competitius. Aprenentatge de prototips. Aprenentatge de conceptes probabilístics. Estimació de paràmetres MLE (Maximum Likelihood Estimation). Estimació MAP (Maximum A Posteriori) i la seva aplicació a l'algorisme Naive Bayes.

Referències

Aprenentatge de conceptes basats en llindars (threshold concepts)
Aprenentatge de conceptes competitius
Perceptrons
Discriminants lineals
Algorisme de clustering leader
MLE (Maximum Likelihood Estimation)
Naive Bayes
Referències complementàries

Tot i que els algorismes del Perceptró i leader són molt simples, en alguns casos poden resultat d'utilitat, especialmente integrats de forma adient en sistems més complexos o amb algunes modificacions. Aquí teniu algunes referències amb exemples de la seva utilització:

(una curiositat, la recerca en xarxes neuronals va experimentar un retrocés durant molts anys degut a que es pensava que eren molt limitades per fets com que els perceptrons no podien aprendre conceptes com el XOR. Aquest blog t'explica perqué com a alumne pots sentir que et presten tan poca atenció com a una xarxa neuronal als 70).

Perceptrons
Algorisme de clustering leader
Naive Bayes
Estudi de mètodes per tractar valors no coneguts i comptadors a cero en els classificadors Naive Bayes.




Setmana 4 (3 octubre 2005)

Aprenentatge de prototips per clustering: k-means.
Aprenentatge de conceptes disjuntius. Aprenentatge de regles DNF (Disjunctive Normal Form) amb algorismes de Separate-and-Conquer (a.k.a. covering algorithms). Aprenentatge de disjuncions competitives: nearest neighbor (a.k.a. instance based learning).

Referències

k-Means
Aprenentatge de conceptes disjuntius
Aprenentatge de regles DNF amb Separate-and-Conquer / Covering
Nearest neighbor / Instance Based Learning
Referències complementàries
Una visió general d'algorismes que utilitizen la idea de separate-and-conquer. Inclou també algorismes d'aprenentatge relacional.
Una breu introducció a l'aplicació de representacions basades en prototips utilitzant representacions més expresives que les de vectors <atribut, valor> i per a realitzar d'altres tasques a més de la classificació. Això es coneix com a CBR (Case Based Learning) i les aproximacions NN/IBL es poden considerar com a un cas particular assuming una certa simplicitat del problema i les dades.

Material de Laboratori

Clustering amb k-means
Guió de la sessió de laboratori del 7/10/2005.



Setmana 5 (10 octubre 2005)


Aprenentatge de conceptes probabilístics per clustering: algorisme EM (Expectation Maximization).
Aprenentatge de conceptes jeràrquics. Arbres de decisió. Solucions al problema de l'overfitting: pre i post-poda.

Referències

Algorisme EM (Expectation Maximization)
Arbres de decisió
Material de Laboratori

Arbres de decisió
Guió de la sessió de laboratori del 14/10/2005.



Setmana 6 (17 octubre 2005)


Aprenentatge de conceptes jeràrquics per clustering: jerarquies probabilístiques (Cobweb). Regressió amb nearest neighbor. Arbres de regressió i de models (model trees). Selecció d'atributs: filters i wrappers, cerca seqüencial (forward selection, backward elimination). Ensembles: bagging i boosting.

Referències

Aprenentatge jerarquies probabilístiques
Regression/Model trees
Selecció d'atributs
Material de Laboratori

Comparació d'algorismes
Guió de la sessió de laboratori del 21/10/2005.



Setmana 7 (24 octubre 2005)

Breu repàs d'altres temes d'aprenentatge automàtic que no hem fet a l'assignatura: discretització, algorismes genètics, xarxes bayesianes, regles d'associació, aprenentatge relacional (ILP).
Introducció a la mineria de dades en el context de problemes de negoci: Business Intelligence, mineria de dades com a procés, la determinació d'objectius, preparació, transformació i neteja de les dades.

Referències

Mineria de dades en problemes de negoci
Material de Laboratori

Preprocés de dades
Guió de la sessió de laboratori del 28/10/2005.


Setmana 8 (31 octubre 2005)

Introducció a la mineria de dades en el context de problemes de negoci: construcció de models, mètodes alternatius d'avaluació (gràfiques de ganància, lift i benefici), aplicació del model, exemples.

Referències

Mineria de dades en problemes de negoci