Masteratul de Lingvistică Computațională Curs: Introducere in Lingvistica Computațională Curs 12 Abordări statistice, vectoriale și neurale

Documente similare
PowerPoint Presentation

Capitole Speciale de Informatică Curs 4: Calculul scorurilor în un sistem complet de extragere a informaţiilor 18 octombrie 2018 Reamintim că în cursu

Capitole Speciale de Informatica - Curs 5: Extragerea informatiilor prin feedback de relevanta. Metode probabiliste de extragere a informatiilor

Curs 6: Clasificarea surselor de informatii - Clasificarea Bayes Naiva. Modelul Bernoulli

Inteligență artificială Laboratorul 8 Perceptronul și rețele de perceptroni în Scikit-learn Stanga :multimea de antrenare a punctelor 3d; Dreapta : mu

Slide 1

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

PAS cap. 2: Reprezentări rare p. 1/35 Prelucrarea avansată a semnalelor Capitolul 2: Reprezentări rare Bogdan Dumitrescu Facultatea de Automatică şi C

Capitole Speciale de Informatică Curs 2: Determinarea vocabularului de termeni şi a listelor de postări 4 octombrie 2018 Reamintim că listele de indec

Microsoft Word - probleme_analiza_numerica_ses_ian09.rtf

PROGRAMA CONCURSULUI NAŢIONAL

I

Curs 10 Aplicaţii ale calculului diferenţial. Puncte de extrem 10.1 Diferenţiale de ordin superior S¼a trecem acum la de nirea diferenţialelor de ordi

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

Introducere

Microsoft Word - L_TI_4_C2_Tehnici_de_Analiza_a_Imaginilor_Brad_Remus.doc

FIŞA DISCIPLINEI

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea de Vest din Timișoara 1.2 Facultatea Matematică și Informa

Capitole Speciale de Informatică Curs 1: Extragerea informaţiilor. Modelul boolean şi modelul boolean extins 27 septembrie 2018 Extragerea informaţiil

Pattern Recognition Systems

Microsoft Word - 2 Filtre neliniare.doc

Procesarea Imaginilor Laborator 3: Histograma nivelurilor de intensitate 1 3. Histograma nivelurilor de intensitate 3.1. Introducere În această lucrar

METODE NUMERICE ÎN INGINERIE

Aproximarea functiilor prin metoda celor mai mici patrate

Învățare automată Laborator 9 Rețele neuronale în TensorFlow TensorFlow (abreviat TF) este o bibliotecă open source ce permite efectuarea de calcule ș

Logică și structuri discrete Limbaje regulate și automate Marius Minea marius/curs/lsd/ 24 noiembrie 2014

Microsoft Word - FiltrareaNyquist-rezumat.doc

Subiectul 1

Calcul Numeric

Microsoft Word - TIC5


2

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior 1.2 Facultatea 1.3 Departamentul 1.4 Domeniul de studii 1.5 Ciclul de st

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Spatii vectoriale

Microsoft Word - Capitolul_07

Pachete de lecţii disponibile pentru platforma AeL

Dorel LUCHIAN Gabriel POPA Adrian ZANOSCHI Gheorghe IUREA algebră geometrie clasa a VIII-a ediţia a V-a, revizuită mate 2000 standard EDITURA PARALELA

Analiz¼a Matematic¼a - Curs 6 M¼ad¼alina Roxana Buneci

TEZA de ABILITARE Corelatii intre biomateriale, proteze valvulare cardiace si tehnici chirurgicale folosite in protezarea valvulara aortica Horatiu Mo

UNIVERSITATEA DIN CRAIOVA FACULTATEA DE STIINTE EXACTE DEPARTAMENTUL DE INFORMATICA Pozitia postului: 23 Disciplina postului: Inteligenta artificială

Laborator 3

LUCRAREA 8 PROGRAMAREA NELINIARĂ ÎN REZOLVAREA PROBLEMELOR DIN ENERGETICĂ. METODE DE ORDINUL Aspecte generale Programarea neliniară are o foart

Microsoft Word - cap1p4.doc

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Slide 1

Microsoft Word - matem_aplicate in Economie aa FD Bala.doc

Calcul Numeric

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Microsoft Word - Algoritmi genetici.docx

Facultatea de Inginerie Departamentul de Inginerie Electrică, Electronică și Calculatoare As. drd. ing. Orha Ioan Teza de doctorat CENTRUL UNIVERSITAR

Microsoft Word - Lab1a.doc

Slide 1

I. Partea introductivă Proiectul unității de învățare CONCEPTUL DE MATRICE ŞCOALA: Colegiul Național Petru Rareș Suceava CLASA: a XI a- matematică / a

FIȘA DISCIPLINEI 1. Date despre program 1.1 Instituția de învățământ superior Universitatea Alexandru Ioan Cuza din Iași 1.2 Facultatea Facultatea de

UNIVERSITATEA DE STAT DIN MOLDOVA MOLDOVA STATE UNIVERSITY Aprobat: Approved by: Senatul U.S.M. din MSU Senate of. " " 2017 Proces verbal nr. Minutes

STORY NAME: Being 20: Japanese culture and Game Development in Moldova COPYRIGHT HOLDER: COPYRIGHT NOTICE: Gabriel Encev / OPEN Media Hub Ownership of

Ecuatii si sisteme de ecuatii neliniare 1 Metoda lui Newton Algorithm 1 Metoda lui Newton pentru ecuaţia f(x) = 0. Date de intrare: - Funcţia f - Apro

Cursul 12 (plan de curs) Integrale prime 1 Sisteme diferenţiale autonome. Spaţiul fazelor. Fie Ω R n o mulţime deschisă şi f : Ω R n R n o funcţie de

Aero-BCD, , Prof. L. Costache & M. Olteanu Notițe de Adrian Manea Seminar 5 Șiruri și serii de funcții. Serii de puteri 1 Șiruri de funcții D

Prelegerea 3 În această prelegere vom învăţa despre: Clase speciale de latici: complementate. modulare, metrice, distributive şi 3.1 Semi-distributivi

Paradigme de programare

CRIPTOSISTEME SIMETRICE I

Tiberiu Trif Analiză matematică 2 Calcul diferențial și integral în R n

Lucrarea 7 Filtrarea imaginilor BREVIAR TEORETIC Filtrarea imaginilor se înscrie în clasa operaţiilor de îmbunătăţire, principalul scop al acesteia fi

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

PowerPoint-Präsentation

Modelarea si Simularea Sistemelor de Calcul

ALGORITMICĂ. Seminar 3: Analiza eficienţei algoritmilor - estimarea timpului de execuţie şi notaţii asimptotice. Problema 1 (L) Să se determine număru

rrs_12_2012.indd

Autoevaluare curs MN.doc

Laborator 1-Teoria probabilitatilor si statistica matematica Sef lucrari dr.mat. Daniel N.Pop Departamentul de calculatoare si inginerie electrica 1 P

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

Facultatea de Matematică Anul II Master, Geometrie Algebrică Mulţimi algebrice ireductibile. Dimensiune 1 Mulţimi ireductibile Propoziţia 1.1. Fie X u

Limbaje de Programare Curs 6 – Functii de intrare-iesire

Deep learning

Transmisia datelor multimedia in retele de calculatoare <Titlu Lucrare>

rptFisa

Microsoft Word - MK_An_I_Matematica_aplicata_in_economie.docx

Probleme proiect TP BITPERM Implementați un algoritm care citește de la intrarea standard două numere naturale și scrie la ieșirea standard da

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ superior Universitatea Alexandru Ioan Cuza din Iaşi 1.2 Facultatea Facultatea de

INDICATORI AI REPARTIŢIEI DE FRECVENŢĂ

Curriculum vitae Europass Informaţii personale Nume / Prenume Adresă(e) Bârză, Silviu Bucureşti, România Telefon(oane) Mobil: Fax(uri) E-

PowerPoint Presentation

DAN LASCU ADRIANA-LIGIA SPORIŞ ANDA OLTEANU PAUL VASILIU MATEMATICĂ. CULEGERE DE PROBLEME TIP GRILĂ PENTRU ADMITEREA ÎN ACADEMIA NAVALĂ MIRCEA CEL BĂT

SECURITATE ȘI CRIPTOGRAFIE

Noțiuni matematice de bază

Retele Petri si Aplicatii

COMENTARII FAZA JUDEŢEANĂ, 9 MARTIE 2013 Abstract. Personal comments on some of the problems presented at the District Round of the National Mathemati

FIŞA DISCIPLINEI 1. Date despre program 1.1 Instituţia de învăţământ Universitatea Babeş-Bolyai Cluj-Napoca superior 1.2 Facultatea Facultatea de Mate

ExamView Pro - Untitled.tst

Examenul de bacalaureat 2012

Slide 1

1. Operatii cu matrici 1 Cerinte: Sa se realizeze functii pentru operatii cu matrici patratice (de dimensiune maxima 10x10). Operatiile cerute sunt: A

Slide 1

..MINISTERUL EDUCAŢIEI NAȚIONALE ŞI CERCETARII STIINTIFICE UNIVERSITATEA DE VEST DIN TIMIȘOARA.I CENTRUL DE DEZVOLTARE ACADEMICĂ. FIȘA DISCIPLINEI 1.

Transcriere:

Masteratul de Lingvistică Computațională Curs: Introducere in Lingvistica Computațională Curs 12 Abordări statistice, vectoriale și neurale Curs: Dan Cristea Seminarii & proiect: Mihaela Onofrei, Dan Cristea

Methods for discriminating terms and documents After (Manning et al., 2009)

Term Frequency Inverse Document Frequency tf(t,d) = the frequency of a term t in a document d how many times is t mentioned in d, usually normalised to the total number of terms used to scale a collection of documents with respect to the occurrences of a term however it may be confusing in appreciation of different term relevances idf(t) = N/log(df(t)) N = the number of documents in the collection df(t) = the number of documents containing t at least once idf of a frequent term is low, and of a rare term is high

tf-idf(t,d) = tf(t,d) * idf(t) TF-IDF a weighting scheme that reflects how important is a word with respect to the documents contained in a corpus used in classification, information retrieval, text mining, etc. Variations of the TF-IDF often used by search engines for scoring and ranking a document's relevance given a user query. TF-IDF can be successfully used for stop-words filtering in various subject fields including text summarization and classification.

Term-document matrix An M x N matrix with M rows representing terms (dimensions) and N columns representing documents Example: the number of occurrences of three terms (affection, jealous and gossip) in three novels: Jane Austen s Sense and Sensibility (SaS) and Pride and Prejudice (PaP) and Emily Brontë s Wuthering Heights (WH)

Metode kernel în învățarea bazată de similaritate După (Ionescu, 2018)

Applications that use vectors Vectors can be used as features in a variety of applications: information retrieval (Manning et al., 2009), document classification (Sebastiani, 2002), question answering (Tellex et al., 2003), named entity recognition (Turian et al., 2010), parsing (Socher et al., 2013)

Modelul spațiului vectorial Reprezentarea unei mulțimi de obiecte ca vectori este cunoscută sub numele de modelul spațiului vectorial (vector space model) dimensiunile sunt caracteristici (cuvinte, similarități între un eșantion de test și unul de antrenare, TF-IDF etc.) cererile însele sunt reprezentate ca vectori Din (Verberne, 2018)

Similaritate bazată pe produs scalar Un vector V(d) derivat dintr-un obiect d, cu câte o componentă pentru fiecare caracteristică valuarea unei componente este un număr, sau scorul de ponderare tf-idf, sau orice altceva Cum putem aprecia similaritatea dintre două objecte în acest spațiu vectorial? 1 a tentativă: să calculăm lungimea vectorului diferență dintre vectorii celor două obiecte criticabilă! o soluție mai bună: similaritatea cosinus:

Proprietățile produsului scalar (intern) <.,. >: V x V à R are proprietățile: simetrie: <x, y> = <y, x> linearitate: <ax, y> = a<x, y>; <x + y, z> = <x, z> + <y, z> definit pozitiv: <x, x> ³ 0; <x, x> = 0 ó x = 0 unde x T este transpusa lui x.

Calculând similaritatea Produs scalar: Lungime euclideană: Vectori unitari: și Similaritate: Similaritate = cosinusul unghiului dintre cele două obiecte

Spațiul produsului intern (spațiul Hilbert) Un spațiu vectorial X peste mulțimea numerelor reale R este un spațiu al produsului intern, dacă există o funcție (mapare) bilineară (lineară în fiecare argument), simetrică și cu valori reale <.,. >, care satisface: <x, x> ³ 0, pentru orice x Î X. funcția se numește produs intern sau produs scalar spațiul produsului intern este uneori numit spațiu Hilbert; R m este un spațiu Hilbert ( )

Motivația utilizării kernelilor: scufundarea (transpunerea) trăsăturilor (embedding) Patternuri neliniare sunt convertite în liniare. Funcția Φ încorporează datele unui spațiu de caracteristici în care relațiile neliniare apar liniare. Metodele de învățare automată pot detecta cu ușurință astfel de relații liniare

Kerneluri în spații de produs intern O metodă kernel face o mapare într-un spațiu al scufundărilor sau al caracteristicilor. O mapare de scufundare (embedding) este o funcție: unde F este un spațiu al produsului intern aplicat caracteristicilor. Un kernel este o funcție k care, pentru orice x, z Î X satisface: alegerea funcției de mapare f are ca scop conversia relațiilor nelineare din X în relații lineare din spațiul scufundărilor F

Metode kernel Metodele de învățare bazate pe kernel funcționează prin transpunerea datelor într-un spațiu Hilbert și prin căutarea unor relații liniare în acel spațiu, folosind un algoritm de învățare. pentru a transpune date într-un spațiu Hilbert: indiferent de datele de intrare, se transformă reprezentarea într-un spațiu multidimensional (> 3 dimensiuni) transpunerea se face implicit, prin specificarea produsului intern între fiecare pereche de puncte, mai degrabă decât prin precizarea explicită a coordonatelor

De ce e importantă o funcție kernel? Metodele kernel (prin funcții kernel) oferă puterea de a gestiona în mod natural datele de intrare care nu sunt sub formă de vectori numerici, cum ar fi șiruri de caractere, șiruri de cuvinte, imagini sau chiar fișiere video și audio. Funcția kernel captează noțiunea intuitivă de asemănare între obiecte dintr-un domeniu specific și poate fi orice funcție definită pe domeniul respectiv care este simetrică și pozitiv definită. în biologie computațională și lingvistică computațională (Shawe-Taylor and Cristianini, 2004) în interpretarea imaginilor (Lazebnik et al., 2006; Grauman and Darrell, 2005)

Matricea kernel Fiind dat un set de vectori {x 1, x n } și o funcție kernel k folosită pentru a evalua produsele scalare într-un spațiu al caracteristicilor, cu funcția de mapare a caracteristicilor f, matricea kernel este definită ca matricea n xn K cu intrările date de K ij = <f (x i ), f (x j ) > = k(x i, x j ) O funcție k : X X à R care este fie continuă, fie are un domeniu finit, poate fi descompusă de o funcție de mapare a caracteristicilor f într-un spațiu Hilbert F aplicat ambelor argumente, urmat de evaluarea produsului intern în F după cum urmează: k(x, z) = <f(x), f(z) >, dacă și numai dacă este pozitiv semi-definită.

Exemple și proprietăți de funcții kernel Kernel liniar: obținut prin calculul produsului intern al doi vectori. Funcția de mapare în acest caz este f(x) = x. Exemplu: dacă x = (1, 2, 4, 1) și z = (5, 1, 2, 3) sunt doi vectori în R 4, atunci k(x, z) = <x, z> = 1. 5 + 2. 1 + 4. 2 + 1. 3 = 18 Fie k1 și k2 două kerneluri peste X X, X Í, a Î R +, f(.) o funcție reală pe X și M o matrice pozitiv semi-definită și simetrică n x n. Atunci, următoarele funcții sunt, de asemenea, kernel-uri: k(x, z) = k1(x, z) + k2(x, z) k(x, z) = a k1(x, z) k(x, z) = k1(x, y). k2(y, z) k(x, z) = f(x). f(z) k(x, z) = x T M z A se vedea (Ionescu, 2018), pag. 44-45, pentru mai multe exemple de funcții kernel. M se numește pozitiv semi-definită dacă x T M x ³ 0 pentru orice x in R n.

Clasificatori Kernel În problemele de clasificare binară, algoritmii de învățare bazați pe kernel caută o funcție discriminantă, care atribuie +1 exemplelor care aparțin unei clase și -1 exemplelor care aparțin celeilalte clase. O funcție liniară:

Normalizare Kernel Fiind dat un kernel k(x; z) care corespunde funcției de mapare f, kernelul normatizat ^k(x; z) corespunde funcției de mapare dată de: Normalizarea ajută la îmbunătățirea performanțelor algoritmilor de învățare automată. Exemple: normalizarea face ca valorile caracteristicilor din date să aibă media zero și variația sub-unitară se împarte fiecare componentă cu rădăcina pătrată a produsului celor două componente diagonale corespunzătoare:

O scurtă revedere a rețelelor neurale După: (Nielsen, 2015)

Rețele neurale în IA Inspirate din medicină, unde ar trebui referite drept rețele neuronale Neuronul artificial numit perceptron concept introdus în anii 1950 și 1960 (de către Frank Rosenblatt, inspirat de o lucrare anterioară a lui Warren McCulloch și Walter Pitts) w 1 w 2 w 3

Rețele cu sau fără feedback Rețele neurale în care ieșirea dintr-un strat este utilizată ca intrare în stratul următor => rețele neurale feedforward. nu există bucle în rețea - informațiile sunt întotdeauna alimentate către înainte, nu și către înapoi Dacă ieșirea alimentează noduri interioare => rețele recurente

O altă manieră de a scrie ecuația rețelei = w. x (produs scalar între doi vectori: de ponderi și de intrări) Notând b = - threshold (prag) =>

Schimbând funcția kernel și clasificatorul algoritmul se poate particulariza kernelurile sunt inițializate la matrici zero matricea kernel de test de l x n componente clasificatorul kernel C asignează o pondere fiecărui exemplu de antrenare etichetele prezise pentru eșantioanele de test din Z, astfel încât y i corespunde eșantionului de test z i ponderi praguri Din (Ionescu, 2018), pag. 47

Cum poate o rețea neurală să învețe? O mică schimbare a ponderii unui arc din rețea... poate provoca comutarea completă a ieșirii, de ex. din 0 în 1 dacă o anumită ieșire acum ar fi corectată în sensul în care dorim, e posibil însă ca restul intrărilor să fie drastic afectate, într-un mod greu de controlat => ne trebuie o manieră prin care să modificăm treptat ponderile și polaritățile, astfel încât rețeaua să se apropie de comportamentul dorit? O rețea în care comutarea să nu fie radicală, cum e cea dată de o funcție prag...

Funcțiile sign, sigmoid, tanh

A învăța = a minimiza o funcție de eroare (cost, obiectiv, loss) în care: w = matricea ponderilor (weights) b = vectorul pragurilor (biases) n = dimensiunea intrării (lungimea lui x) x = intrarea y(x) = ieșirea dorită a(w, b, x) = ieșirea calculată de rețea

Regula de scădere a gradientului Presupunând un C care depinde de un set de variabile de intrare v = (v 1,... v m ), variația DC a lui C, produsă de o mică variație a intrării: Dv = (Dv 1,... Dv m ) T, este: DC ÑC. Dv, unde: este gradientul. Dacă alegem: Dv = -η ÑC, cu η > 0, atunci ne asigurăm că variația DC va fi negativă (pt că vrem ca eroarea să fie mai mică la fiecare pas). Regula de actualizare: algoritmul de gradient descent

Cum se aplică gradient descent? Scăderea gradientului poate fi privită ca o modalitate de a face pași mici în direcția care îl face pe C să scadă cel mai rapid. Vectorul gradient are componentele astfel încât: și regulile prin care rețeaua neurală va putea să învețe Dar asta înseamnă că ieșirea influențează rețeaua, fără ca rețeaua să fie recurentă (pentru că sunt influențate doar ponderile și pragurile, nu și intrările neuronilor).

Scăderea stocastică a gradientului În practică, numărul ponderilor și a pragurilor poate fi extrem de mare, de aceea iterarea scăderii gradientului pe fiecare dintre ele poate fi nerealistă. La fiecare pas în antrenare, se aleg aleator un număr m de intrări X 1,... X m și se estimează DC doar pe baza acestora, prin medierea rezultatelor. La fiecare pass, alt eșantion.

Rețele neurale de adâncime

Rețele multistrat (de adâncime) Perceptronii de pe nivelul 2 iau decizii prin cântărirea rezultatelor primului nivel decizii la un nivel mai complex și mai abstract decât pe cel din primul strat decizii și mai complexe pot fi luate de perceptronii din cel de al treilea strat o rețea multiplă de perceptroni se poate angaja într-o decizie sofisticată

Învățare de profunzime (deep learning) Să presupunem că dorim să determinăm dacă o poză conține o față umană ori nu: A se vedea: (Goodfellow et al., 2016)

Descompunem problema în subprobleme mai simple Are imaginea un ochi în partea stângă sus? Are ea un ochi în partea dreaptă sus? Are un nas în mijloc? Are o gură jos la mijloc? Există păr deasupra? Și așa mai departe.

Și acestea... în altele încă mai simple Dar cum să descompui problema automat, propunând 5-10 niveluri intermediare (ascunse) de neuroni, care abordează concepte din ce în ce mai generale...

ImageNet and WordNet A huge database of over 14 million images drawn from 1000 different categories. Its class coverage is exhaustive enough that it covers most types of images that one would encounter in everyday life. Organized according to the WordNet hierarchy of nouns

Follow a Stanford course At: https://www.youtube.com/watch?v=oqq-w_63ugq

or Follow an MIT course At: https://www.youtube.com/watch?v=0vh1lim8gl8

Bibliografie Goodfellow, Ian, Bengio, Yoshua and Courville, Aaron (2016). Deep Learning, MIT Press (http://www.deeplearningbook.org) Grauman, Kristen and Darrell, Trevor (2005). The Pyramid Match Kernel: Discriminative Classification with Sets of Image Features. In Proceedings of ICCV, volume 2, pp. 1458{1465. Ionescu, Radu Tudor (2018). Habilitation thesis. Knowledge Transfer between Computer Vision, Text Mining and Computational Biology: New Chapters, University of Bucharest. Lazebnik, Svetlana, Schmid, Cordelia, and Ponce, Jean (2006). Beyond Bags of Features: Spatial Pyramid Matching for Recognizing Natural Scene Categories. In Proceedings of CVPR, volume 2, pp. 2169{2178, Washington, IEEE Computer Society. Manning, C. D. and Socher, R. (2017). CS224N: Natural language processing with deep learning. Stanford University School of Engineering. https://www.youtube.com/watch?v=oqq-w 63UgQ Manning, Christopher D., Raghavan, Prabhakar and Schütze, Hinrich (2009). An Introduction to Information Retrieval, Cambridge UP, https://nlp.stanford.edu/ir-book/pdf/irbookonlinereading.pdf Nielsen, Michael A. (2015). Neural networks and deep learning, Determination Press. http://neuralnetworksanddeeplearning.com/chap1.html Shawe-Taylor, John and Cristianini, Nello (2004). Kernel Methods for Pattern Analysis, Cambridge University Press. Sebastiani, Fabrizio (2002). Machine learning in automated text categorization. ACM Computing Surveys, 34:1 47 Socher, Richard, Bauer, John, Manning, Christopher D. and Ng, Andrew Y. (2013). Parsing With Compositional Vector Grammars. In ACL. Verberne, Suzan (2018). Word2Vec Tutorial, Leiden Univ., March. https://twitter.com/suzan/status/977158060371316736 Tellex, Stefanie, Katz, Boris, Lin, Jimmy, Fernandes, Aaron and Marton, Gregory (2003). Quantitative evaluation of passage retrieval algorithms for question answering. In Proceedings of the SIGIR Conference on Research and Development in Informaion Retrieval. Turian, Joseph, Ratinov, Lev and Bengio, Yoshua (2010). Word representations: a simple and general method for semi-supervised learning. In Proceedings of ACL, pages 384 394.