TALLER isummit
2010
2010
Datos, textos y visualización
Sylvie Ratté, Ph.D.
Directora del Laboratorio de Ingeniería Cognitiva y Semántica
École de technologie supérieure, Montréal, QC
2
ProgramaPrograma
• introducción
• parte 1:WEKA y MD básica
• parte II: RapidMiner y su interfaz visual y mas
• parte III: R y sus posibilidades
• parte IV: GATE y los textos
• discusión y conclusión
Introducción
ÉTS, el LiNCS y el taller
4
IntroducciónIntroducción
1. Sobre la ÉTS
2. Sobre las investigaciones del LiNCS
3. Sobre el taller y las herramientas
4. Sobre el transcurso del taller (duración, método)
5
1. Sobre la ÉTS1. Sobre la ÉTS
ÉTS - École de technologie supérieure
•'Top' 5 de las 45 escuelas y
facultades de ingeniería en Canadá
•Uno de cada cuatro Ingenieros de la
Provincia de Qébec se graduó de la
ETS
•Más de 4 500 estudiantes
•Edificios ultra moderno
•1000 unidades en las residencias
6
1. Breve presentación: LiNCS / ÉTS1. Breve presentación: LiNCS / ÉTS
LiNCS - Laboratorio de Ingeniería Cognitiva y Semántica
• Focos en el trazado entre la
descripción escrita en lenguaje
natural (documento) y su
representación visual (modelo,
diagrama y animación).
• Minería de textos
• Minería del Web
• Minería de redes
• Modelos de lenguaje
2. Sobre las investigaciones del LiNCS2. Sobre las investigaciones del LiNCS
7
3. Sobre el taller y las herramientas3. Sobre el taller y las herramientas
Extracción de
información
Extracción de
información
Minería de
textos
Minería de
textos
Minería de
datos
Minería de
datos
Estadística y
mas
Estadística y
mas
8
4. Sobre el transcurso del taller4. Sobre el transcurso del taller
• Duración: 4 partes de 4 horas
• Método:
• muchas practicas;
• poco teoría;
• experimentación libre
• «Vamos al grano!»: Sobre la minería de datos
Parte I
WEKA y Minería de datos básica
4 ejercicios y una experimentación
10
programaprograma
1. introducción
2. WEKA: presentación
3. ejercicio I: el «explorer» y predicción
4. ejercicio II: el «explorer» y clasificación
5. ejercicio III: clustering
6. ejercicio IV: «knowledge flow»
7. experimentación libre
11
1. Introducción1. Introducción
• La minería de datos consiste en la extracción no trivial de
información que reside de manera implícita en los datos.
• Dicha información era previamente desconocida y podrá
resultar útil para algún proceso.
• En otras palabras, la minería de datos prepara, sondea y
explora los datos para sacar la información oculta en ellos.
• En las próximas horas, vamos a experimentar con el
concepto de manera practica pero por ahora...
12
1. Introducción1. Introducción
• Usted es parte de un grupo de personas en una isla
desierta.
• Para sobrevivir, debe comer hongos nativos.
• Cuatro amigos fueron lo bastante temerario y comieron 4
especímenes diferentes...
• Dos de ellos están muy enfermos
• Se descubre 4 especímenes mas:
Espécimen Pesado Olor Moteado Tóxico
A 0 0 0 0
B 0 1 1 1
C 1 1 0 0
D 1 0 0 1
Espécimen Pesado Olor Moteado Tóxico
E 1 1 1
F 0 0 1
G 0 1 0
H 1 0 1
13
1. Introducción1. Introducción
• Cada vez que hago este pequeño ejercicio me resulta lo
mismo:
• técnicas tipo reglas: IF...THEN (antecedentes, consequentes)
• técnicas tipo probabilidad: Bayes
• técnicas tipo distancias: Knn
• Este ejemplo ilustra un grupo de métodos de predicción
14
1. Introducción1. Introducción
• Espiar a mi vecino, el banquero
perspectiva temperatura humedad viento juega
soleado caliente alto F no
soleado caliente alto T no
cubierto caliente alto F sí
lluvioso suave alto F sí
lluvioso fresco normal F sí
lluvioso fresco normal T no
cubierto fresco normal T sí
soleado suave alto F no
soleado fresco normal F sí
lluvioso suave normal F sí
soleado suave normal T sí
cubierto suave alto T sí
cubierto caliente normal F sí
lluvioso suave alto T no
perspectiva temperatura humedad viento juega
soleado caliente normal F
cubierto fresco alto T
cubierto caliente alto T
lluvioso suave normal F
15
1. Introducción1. Introducción
• Fases de construcción
Selección del conjunto de datos
Análisis de las propiedades de los datos
Transformación del conjunto de datos de entrada
Seleccionar y aplicar la técnica
de minería de datos
Evaluar los resultados
soleado, humidad, vestido negro,
tipo de pantalon, tipo de caro,
llamada telefonica, temperatura,
viento, juega golf, trabaja, a comer
soleado, humidad, vestido negro,
tipo de pantalon, tipo de caro,
llamada telefonica, temperatura,
viento, juega golf, trabaja, a comer
 ZeroR
 OneR
 Naive Bayes
 Árbol de decisiones
 K-vecinos
 Red neuronal
 Inducción de reglas
http://www.crisp-dm.org/
16
1. Introducción1. Introducción
• Illustracion de ZeroR
perspectiva temperatura humedad viento
juega
soleado caliente alto F
no
soleado caliente alto T
no
cubierto caliente alto F
sí
lluvioso suave alto F
sí
lluvioso fresco normal F
sí
lluvioso fresco normal T
no
cubierto fresco normal T
sí
soleado suave alto F
no
soleado fresco normal F
sí
lluvioso suave normal F
sí
soleado suave normal T
sí
cubierto suave alto T
sí
cubierto caliente normal F
sí
lluvioso suave alto T
no
perspectiva temperatura humedad viento juega
soleado caliente normal F
cubierto fresco alto T
cubierto caliente alto T
lluvioso suave normal F
9 sí
5 no
sí
sí
sí
sí
17
1. Introducción1. Introducción
• Ilustración de OneR Perspectiva | No Sí
--------------------------------------------
Soleado | 3 2
--------------------------------------------
Cubierto | 0 4
--------------------------------------------
Lluvioso | 2 3
Temp | No Sí
--------------------------------------------
Caliente | 2 2
--------------------------------------------
Suave | 2 4
--------------------------------------------
Fresco | 1 3
Humedad | No Sí
--------------------------------------------
Alta | 4 3
--------------------------------------------
Normal | 1 6
Viento | No Sí
--------------------------------------------
F | 2 6
--------------------------------------------
T | 3 3
10/14
9/14
10/14
9/14
perspectiva temperatura humedad viento juega
soleado caliente normal F
cubierto fresco alto T
cubierto caliente alto T
lluvioso suave normal F
no
sí
sí
sí
18
2.WEKA: presentación2.WEKA: presentación
19
3. Ejercicio I: el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
• Objetivo: aprender a manejar «el explorer» de Weka
• cargar un archivo de datos en de Weka;
• aplicar algunos algoritmos de clasificación;
• navegar;
• ver algunos resultados;
• aprender el formato de datos ARFF.
• weather.nominal.arff
• ABRE este fichero primero dentro un programa TXT-only
20
3. Ejercicio I: el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
• @relation weather.symbolic
• @attribute outlook {sunny, overcast, rainy}
• @attribute temperature {hot, mild, cool}
• @attribute humidity {high, normal}
• @attribute windy {TRUE, FALSE}
• @attribute play {yes, no}
• @data
• sunny,hot,high,FALSE,no
• sunny,hot,high,TRUE,no
• overcast,hot,high,FALSE,yes
21
3. Ejercicio I: el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
22
3. Ejercicio I: el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
• ZeroR
• Naive Bayes
• IbK
• J48
• ZeroR
• Naive Bayes
• IbK
• J48
23
3. Ejercicio I: el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
24
4. Ejercicio 1I: clases múltiples4. Ejercicio 1I: clases múltiples
• iris.arff -- hace una clasificación con J48...
25
5. Ejercicio III: clustering5. Ejercicio III: clustering
• iris.arff
26
5. Ejercicio III: clustering5. Ejercicio III: clustering
27
6. EjercicioV: «knowledge flow»6. EjercicioV: «knowledge flow»
• segment-challenge and segment-test
• Logistic regression
28
6. EjercicioV: «knowledge flow»6. EjercicioV: «knowledge flow»
Parte II
RapidMiner: interfaz visual y mas
30
Parte II: programaParte II: programa
1. RapidMiner: presentación
2. Ejercicio I: ficheros .arff
3. Ejercicio II: repositorios propios de RM
4. Ejercicio III: ROC y otras métricas de evaluación
5. Ejercicio IV: «train» y «test»
6. EjercicioV: PCA (teoría) y clustering
7. Experimentación libre
31
1. RapidMiner: presentación1. RapidMiner: presentación
operadores y
repertorios
operadores y
repertorios
igual al KnowledgeFlow
de Weka
igual al KnowledgeFlow
de Weka
parámetros de
la selección
actual
parámetros de
la selección
actual
ejecución y visualizaciónejecución y visualización
reporte de los
problemas
reporte de los
problemas
parámetros de
la selección
actual
parámetros de
la selección
actual
ayuda sobre la
selección actual
ayuda sobre la
selección actual
32
2. Ejercicio I: ficheros .arff en RM2. Ejercicio I: ficheros .arff en RM
• Objetivo: los repositorios y los datos
33
2. Ejercicio I: iris con RapidMiner2. Ejercicio I: iris con RapidMiner
• Objetivo: los repositorios y los datos
34
2. Ejercicio I: iris con RapidMiner2. Ejercicio I: iris con RapidMiner
• Objetivo: los repositorios y los datos
35
2. Ejercicio I: iris con RapidMiner2. Ejercicio I: iris con RapidMiner
36
2. Ejercicio I: iris con RapidMiner2. Ejercicio I: iris con RapidMiner
37
2. Ejercicio II: repositorios propios de RM2. Ejercicio II: repositorios propios de RM
• Siempre es mas fácil transformar los ficheros directamente
en los repositorios de RM.
38
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
• ROC : receiver operating characteristic .... pero primero...
regresamos al principio
Matriz de confusión
ecisión del clasificador: accuracy = (TP+TN)/(TP+TN+FP+FN
Pueden imaginar un caso especial:
la precisión muy alta pero de verdad, no significa nada?
AYUDA: pensan en ZeroR...
39
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
• Limitaciones de la precisión (“accuracy”) :
• Supongamos un problema con 2 clases:
• 9990 ejemplos de la clase 1
• 10 ejemplos de la clase 2
• Si el modelo de clasificación siempre dice que los ejemplos
son de la clase 1, su precisión es
• 9990/10000 = 99.9%
• Totalmente engañosa, ya que nunca detectaremos ningún
40
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
precision = TP/(TP+FP) True positive recognition rate
recall = sensitivity = TP/P = TP/(TP+FN) True negative recognition rate
specificity = TN/N = TN/(TN+FP)
F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN)
F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN)
F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN)
F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN)
Medidas “cost-sensitive”
41
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
42
• Para evaluar la precisión de un modelo de clasificación
nunca debemos utilizar el conjunto de entrenamiento (lo
que nos daría el “error de resustitución” del clasificador),
sino un conjunto de prueba independiente:
• Por ejemplo, podríamos reservar 2/3 de los ejemplos
disponibles para construir el clasificador y el 1/3 restante lo
utilizaríamos de conjunto de prueba para estimar la
precisión del clasificador.
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
44
• Variantes de la validación cruzada
• “Leave one out”: Se realiza una validación cruzada con k
particiones del conjunto de datos, donde k coincide con el
número de ejemplos disponibles.
• Validación cruzada estratificada: Las particiones se realizan
intentando mantener en todas ellas la misma proporción de
clases que aparece en el conjunto de datos completo.
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
45
• Curvas ROC (Receiver Operating Characteristics)
• Eje vertical: “true positive rate” TPR = TP/(TP+FN)
• Eje horizontal: “false positive rate” FPR = FP/(FP+TN)
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
46
Curvas ROC
•Desarrolladas en los años 50 para analizar señales con ruido:
caracterizar el compromiso entre aciertos y falsas alarmas.
•Permiten comparar visualmente distintos modelos de
clasificación.
•El área que queda bajo la curva es una medida de la
precisión (accuracy) del clasificador:
•Cuanto más cerca estemos de la diagonal (área cercana a
0.5), menos preciso será el modelo.
•Un modelo “perfecto” tendrá área 1.
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
47
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
Ningún modelo es consistentemente mejor que el otro:
M1 es mejor para FPR bajos, M2 para FPR altos.
48
Curvas ROC
•¿Cómo construir la curva ROC?
•Se usa un clasificador que prediga la probabilidad de que un
ejemplo E pertenezca a la clase positiva P(+|E)
•Se ordenan los ejemplos en orden decreciente del valor
estimado P(+|E)
•Se aplica un umbral para cada valor distinto de P(+|E), donde
se cuenta el número de TP, FP,TN y FN.
• TPR = TP/(TP+FN)
• FPR = FP/(FP+TN)
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
49
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
50
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
• labor.ooi
51
3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
52
4. Ejercicio IV: «train» y «test»4. Ejercicio IV: «train» y «test»
• Modelo:Apply testset
• digit2_train
• digit2_test
53
5. EjercicioV: PCA5. EjercicioV: PCA
• Sobre iris
Experimentación libre:
comparación de los resultados con el ExampleSet original y
con el ExampleSetPCA
54
6. EjercicioVI: «market basket analysis»6. EjercicioVI: «market basket analysis»
55
6. EjercicioVI: «market basket analysis»6. EjercicioVI: «market basket analysis»
56
6. EjercicioV: «market basket analysis»6. EjercicioV: «market basket analysis»
57
6. EjercicioV: «market basket analysis»6. EjercicioV: «market basket analysis»
Parte III
Representación de textos, R y LSA
59
Parte III: programaParte III: programa
1. Minería de textos: requisitos
2. Teoría: LSA
3. Ejercicio I: LSA en RapidMiner
4. R: presentación
5. Ejercicio II: LSA en R
6. Ejercicio III:Visualización en R
7. Experimentación libre
60
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
• Buscar «text mining» en Google...
• Muchas informaciones en formato textual
• Estimacion: 80%-85% de datos en textos LN (lenguajes
naturales)
• Ejemplo en BioTech
• 80% del conocimiento in artículos científicos
• Humano: leer 60 artículos / semana ...!
• ... 10% son interesante... 6 semanas, 300/años
• MedLine: 10 000 articulos / mes !!!
• Chemical Abstract Registry: 4000 / dia, 2.5 miliones en
2004
61
dfdfdsafsdafdsafdsafdsCharacterizing Trajectories of Moving Objects
Mobile Medecine: Drug Information through NL SMS
Capture Relations in Biomedical Text
Texts for a Cognitive Vision System
Mapping Natural Language to Imagery
Automated Identification of LTL Patterns
Mapping NL to Imagery
Automation of Requirements Analysis
NL Interface for Crime-related Queries
Dependability Analysis in Industrial Use Cases
Web 2.0 and NLP
Animated Agent that Understand NL
Processing NL Requirements
Automatic Diagram Drawing
Automatic Construction of UML Diagrams
Automated Conceptual Data Modeling
Intelligent User Interfaces for Wikis
Integrating BPM and Governing Documents
Integrating Requirements and Model-Driven Engineering
Translation NL into Temporal and Dynamic Logic
Fact Extraction from Source Code
Finding Defects in NL Confidentiality Requirements
Extracting Causation Knowledge
Multilingual Understanding of Natural Business Rules
SMS Text Normalization
Text Mining for Clinical Medical Records
Event Model for Analysis of Verb Sense
Intelligent Decision Support System
User-Friendly Interface for Fingerprint Systems
Analyzing Gap between Workflows and NL Descriptions
000
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
62
• Classify news stories as World, US, Business, SciTech, Sports,
Entertainment, Health, Other
• Add MeSH terms to Medline abstracts
• e.g.“Conscious Sedation” [E03.250]
• Classify business names by industry.
• Classify student essays as A,B,C,D, or F.
• Classify email as Spam, Other.
• Classify email to tech staff as Mac,Windows, ..., Other.
• Classify pdf files as ResearchPaper, Other
• Classify documents as WrittenByReagan, GhostWritten
• Classify movie reviews as Favorable,Unfavorable,Neutral.
• Classify technical papers as Interesting, Uninteresting.
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
63
• Best-studied benchmark: Reuters-21578 newswire stories
• 9603 train, 3299 test documents, 80-100 words each, 93
classes
ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONS
BUENOS AIRES, Feb 26
Argentine grain board figures show crop registrations of grains, oilseeds and their
products to February 11, in thousands of tonnes, showing those for future
shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in
brackets:
Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0).
Maize Mar 48.0, total 48.0 (nil).
Sorghum nil (nil)
Oilseed export registrations were:
Sunflowerseed total 15.0 (7.9)
Soybean May 20.0, total 20.0 (nil)
The board also detailed export registrations for subproducts, as follows....
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
64
Cual es la mejor representación
para un documento?
sencilla / útil
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
el gato gato gato gordoel gato gato gato gordo
el ... el gato gordo!el ... el gato gordo!
el gato gordo gordo gordo gordoel gato gordo gordo gordo gordo
A
B
C
1 1 3
1 2 1
4 1 1
gordo el gato
A
B
C
65
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
66
 Secuencias de caracteres
+ Nada de conocimiento de lingüística!
Consecuencia: herramientas muy sencillas para construir la
matriz
- Si quiere un poco de semántica, la representación es muy
débil
 N-grammes (unigrammes, bigrammes, trigrammes, …)
 Google (2006): corpus de n-grams
 Gratuito en 2006, 150$US en 2009
 Fichero txt: 24 Mo zip
 Number of tokens: 1,024,908,267,229
 Number of sentences: 95,119,665,584
 Number of unigrams: 13,588,391
 Number of bigrams: 314,843,401
 Number of trigrams: 977,069,902
 Number of fourgrams: 1,313,818,354
Atributos
25
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
67
 Palabras
 bag-of-words representation
 Herramientas necesarias: por lo menos un «tokenizer», mas un «lemmatizer»
 Expresiones regulares (*, ?, etc.)
 Secuencias de palabras (1, 2, 3...)
 Google (2006): corpus de n-grams
 Gratuito en 2006, 150$US en 2009
 Fichero txt: 24 Mo zip
 Number of tokens: 1,024,908,267,229
 Number of sentences: 95,119,665,584
 Number of unigrams: 13,588,391
 Number of bigrams: 314,843,401
 Number of trigrams: 977,069,902
 Number of fourgrams: 1,313,818,354
 Number of fivegrams: 1,176,470,663
26
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
Atributos
68
 Palabras que pertenece a una clase lexical en particular (ex. solamente los verbos,
solamente los nombres, etc.)
 Herramientas necesarias: POS-tagger
 Los tesauros y las taxonomías permiten establecer una relación entre las formas de misma
significación (sinónimos) o establecer una relación entre una forma de significación general y otra
mas especifica (hiperonimia?!!)
 Herramientas:WordNet, EuroWordNet
 Otra posibilidad: los «tags» colaborativos
30
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
Atributos
69
 Presencia/ausencia del termino
 Frecuencia del termino :TF(j)
 Frecuencia tri-valuada: 0, 1, 2
 Frecuencia TF-IDF(j) = TF(j) * IDF(j)
33
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
Valores
inverse document frequency
70
o Possibilités
o Tf-idf
o Similarité
Multimodal
N
df(m)
tfidf(m) = tf(m) * log
Nombre de documentos
Frecuencia de la palabra en el
documento
Nombre de documentos
contendiendo la palabra
34
1. Mineria de textos: requisitos1. Mineria de textos: requisitos
La palabra (m) es mas
importante si aparece
muchas veces en un
documento.
La palabra (m) es
menos importante si
aparece en muchos
documentos
Valores
71
• Principal Component Analysis: buscar el mejor «plan» de proyección
(pasar de 1000 a 30 dimensiones p.e.)
• Latent Semantic Analysis: basado sobre SingularValue Decomposition
• U contiene los «eigen vectors» de A * A
• V contiene los «eigen vectors» de A * A
• S contiene las «singular values»
• Latent Dirichlet Allocation: descubierto de «topics»
• pLSA, etc.
Reduccion de la dimensionalidad / modelos de lenguaje
A = U * S * V
T
T
T
2. LSA2. LSA
72
• LSA transforma la matriz de ocurrencias en una "relación" entre los
términos y "conceptos" y una relación entre estos conceptos y de
los documentos.
A A
documentos términos
documentos
términos
T
A = U * S * V
T
U
A
A
documentos
términos
documentos
términos
TV
2. LSA2. LSA
73
distancia entre 2
documentos
distancia entre 2
«palabras»
2. LSA2. LSA
74
 Similaridad cosine
∑x1i x2i
Sim(D1, D2) =
∑xj
2
∑xk
2
35
2. LSA2. LSA
75
2. LSA2. LSA
76
3. LSA con RapidMiner3. LSA con RapidMiner
bow.csv
77
3. LSA con RapidMiner3. LSA con RapidMiner
78
3. LSA con RapidMiner3. LSA con RapidMiner
79
3. LSA con RapidMiner3. LSA con RapidMiner
80
4. R: Presentacion4. R: Presentacion
81
5. LSA con R5. LSA con R
82
5. LSA con R5. LSA con R
dependencias:
Snowball
Rweka
Rjava
Rwekajar
Mas rapido de cargar
los archivos ZIP sobre
el sitio de R...
83
5. LSA con R5. LSA con R
ad.csv("bow.csv", header=TRUE, sep=",")> X (para ver su con
Menu Archivo / Cambiar dir...
seleccionar el repertorio donde esta BOW.CSV
(ex. LSA Datasets)
84
5. LSA con R5. LSA con R
> R = lsa(X, dims=dimcalc_share())> R (para ver
su contenido: $tk, $dk y $sk)
> U = R$tk> V = R$dk> S = R$sk
> Xmodif = as.textmatrix(R)
> cosine(Xmodif[,1], Xmodif[,2])>
cosine(Xmodif)
85
5.Visualización de LSA en R5.Visualización de LSA en R
read.csv("mots.csv", header=FALSE, sep=",")> mots
1], U[,2], col = "red")> textxy(U[,1], U[,2], t(mots), cx=0.5, d
1], V[,2], col = "blue")> textxy(V[,1], V[,2], 1:9, cx=0.5, dcol=
86
5.Visualización de LSA en R5.Visualización de LSA en R
U[,1], V[,1])> losY = append(U[,2], V[,2])> plot(losX, losY, co
Parte IV
GATE y los textos
88
Parte IV: programaParte IV: programa
1. «Text analytics» y minería de textos
2. GATE: presentación
3. Ejercicio I: documentos y corpus
4. Ejercicio II: Processing Resources
5. Ejercicio III:Applications
6. Ejercicio IV:Anotaciones y esquemas (patrones)
7. Experimentación libre
89
Natural Language Processing
NLP
Minería de textos
MT
IR
Busceda de information
(information retrieval)
Semantic Web
Web 2.0
Text Analytics
Analítica de
textos
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
90
• Había una vez una serie de palabras
• T mey levtp t rk n.ə ŋə əγ ə ə
(Skorik 1961: 102)
Nociones
10
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
verbos
nombres
adjetivos
adverbios
pronombres
conjunción
determinantes
yo, tu, la, les, y, o, cual...
•part-of-speech: POS
91
• el libro, los libros
• canto, cantamos, cantan
• difícil, difícilmente
• instituto, institutor, institución, instituir
13
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
Nociones
92
ella
la mujer
la mujer muy grande
la mujer con los aquellos ojos verdes
la mujer con el cabello largo que me ha dado
un regalo
Nelson
los ninos
los estudiantes de la UTPL
el pequeno profesor con el pelo corto
la carta que me has dado
16
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
Nociones
93
• sintagmas nominales (noun phrase): NP
• sintagmas preposicionales (prepositional phrase): PP
• sintagmas verbales (verbal phrase):VP
• sintagmas adjetivas (adjectival phrase):AP
17
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
Nociones
94
• S  NPVP
• NP  Nprop
• NP  Det N
• NP  NP PP
• VP V NP
• VP VP PP
• PP  P NP
 N libro, castillo, parque,
cazador, mesa, gato,
pastel
 Nprop Marcelo
 V  come, caza, ve,
estrangula, pica,
construye
 P  en, sobre, detrás
 Det  el, un
18
1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
Nociones
Marcelo estrangula un gato en el parque detrás el castillo
95
2. GATE: presentación2. GATE: presentación
resourcesresources
mensajes, anotations and
construccion de applicationes
mensajes, anotations and
construccion de applicationes
96
2. GATE: presentación2. GATE: presentación
97
2. GATE: presentación2. GATE: presentación
98
2. GATE: presentación2. GATE: presentación
99
3. Ejercicio I: documentos y corpus3. Ejercicio I: documentos y corpus
1. carga y visualización documentos in GATE
2. navegación de los conjuntos de anotaciones y lista de
anotaciones.
100
3. Ejercicio I: documentos y corpus3. Ejercicio I: documentos y corpus
1. nombre de archivos y de carpetas: sin espacio
101
3. Ejercicio I: documentos y corpus3. Ejercicio I: documentos y corpus
102
3. Ejercicio 1: documentos y corpus3. Ejercicio 1: documentos y corpus
corpus_1
103
3. Ejercicio 1: documentos y corpus3. Ejercicio 1: documentos y corpus
104
4. Ejercicio II: Processing Resources4. Ejercicio II: Processing Resources
105
4. Ejercicio II: Processing Resources4. Ejercicio II: Processing Resources
106
4. Ejercicio II: Processing Resources4. Ejercicio II: Processing Resources
107
4. Ejercicio II: Processing Resources4. Ejercicio II: Processing Resources
108
5. Ejercicio III:Aplicaciones5. Ejercicio III:Aplicaciones
109
5. Ejercicio III:Aplicaciones5. Ejercicio III:Aplicaciones
110
5. Ejercicio III:Aplicaciones5. Ejercicio III:Aplicaciones
MyTokens
MySentences
MyTokens
111
5. Ejercicio III:Aplicaciones5. Ejercicio III:Aplicaciones
112
6. Ejercicio IV:Anotaciones y esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
113
6. Ejercicio IV:Anotaciones y esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
114
6. Ejercicio IV:Anotaciones y esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
115
6. Ejercicio IV:Anotaciones y esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
116
6. Ejercicio IV:Anotaciones y esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
Conclusión y discusión
Donde vamos ahora?

I summit utpl-taller

  • 1.
    TALLER isummit 2010 2010 Datos, textosy visualización Sylvie Ratté, Ph.D. Directora del Laboratorio de Ingeniería Cognitiva y Semántica École de technologie supérieure, Montréal, QC
  • 2.
    2 ProgramaPrograma • introducción • parte1:WEKA y MD básica • parte II: RapidMiner y su interfaz visual y mas • parte III: R y sus posibilidades • parte IV: GATE y los textos • discusión y conclusión
  • 3.
  • 4.
    4 IntroducciónIntroducción 1. Sobre laÉTS 2. Sobre las investigaciones del LiNCS 3. Sobre el taller y las herramientas 4. Sobre el transcurso del taller (duración, método)
  • 5.
    5 1. Sobre laÉTS1. Sobre la ÉTS ÉTS - École de technologie supérieure •'Top' 5 de las 45 escuelas y facultades de ingeniería en Canadá •Uno de cada cuatro Ingenieros de la Provincia de Qébec se graduó de la ETS •Más de 4 500 estudiantes •Edificios ultra moderno •1000 unidades en las residencias
  • 6.
    6 1. Breve presentación:LiNCS / ÉTS1. Breve presentación: LiNCS / ÉTS LiNCS - Laboratorio de Ingeniería Cognitiva y Semántica • Focos en el trazado entre la descripción escrita en lenguaje natural (documento) y su representación visual (modelo, diagrama y animación). • Minería de textos • Minería del Web • Minería de redes • Modelos de lenguaje 2. Sobre las investigaciones del LiNCS2. Sobre las investigaciones del LiNCS
  • 7.
    7 3. Sobre eltaller y las herramientas3. Sobre el taller y las herramientas Extracción de información Extracción de información Minería de textos Minería de textos Minería de datos Minería de datos Estadística y mas Estadística y mas
  • 8.
    8 4. Sobre eltranscurso del taller4. Sobre el transcurso del taller • Duración: 4 partes de 4 horas • Método: • muchas practicas; • poco teoría; • experimentación libre • «Vamos al grano!»: Sobre la minería de datos
  • 9.
    Parte I WEKA yMinería de datos básica 4 ejercicios y una experimentación
  • 10.
    10 programaprograma 1. introducción 2. WEKA:presentación 3. ejercicio I: el «explorer» y predicción 4. ejercicio II: el «explorer» y clasificación 5. ejercicio III: clustering 6. ejercicio IV: «knowledge flow» 7. experimentación libre
  • 11.
    11 1. Introducción1. Introducción •La minería de datos consiste en la extracción no trivial de información que reside de manera implícita en los datos. • Dicha información era previamente desconocida y podrá resultar útil para algún proceso. • En otras palabras, la minería de datos prepara, sondea y explora los datos para sacar la información oculta en ellos. • En las próximas horas, vamos a experimentar con el concepto de manera practica pero por ahora...
  • 12.
    12 1. Introducción1. Introducción •Usted es parte de un grupo de personas en una isla desierta. • Para sobrevivir, debe comer hongos nativos. • Cuatro amigos fueron lo bastante temerario y comieron 4 especímenes diferentes... • Dos de ellos están muy enfermos • Se descubre 4 especímenes mas: Espécimen Pesado Olor Moteado Tóxico A 0 0 0 0 B 0 1 1 1 C 1 1 0 0 D 1 0 0 1 Espécimen Pesado Olor Moteado Tóxico E 1 1 1 F 0 0 1 G 0 1 0 H 1 0 1
  • 13.
    13 1. Introducción1. Introducción •Cada vez que hago este pequeño ejercicio me resulta lo mismo: • técnicas tipo reglas: IF...THEN (antecedentes, consequentes) • técnicas tipo probabilidad: Bayes • técnicas tipo distancias: Knn • Este ejemplo ilustra un grupo de métodos de predicción
  • 14.
    14 1. Introducción1. Introducción •Espiar a mi vecino, el banquero perspectiva temperatura humedad viento juega soleado caliente alto F no soleado caliente alto T no cubierto caliente alto F sí lluvioso suave alto F sí lluvioso fresco normal F sí lluvioso fresco normal T no cubierto fresco normal T sí soleado suave alto F no soleado fresco normal F sí lluvioso suave normal F sí soleado suave normal T sí cubierto suave alto T sí cubierto caliente normal F sí lluvioso suave alto T no perspectiva temperatura humedad viento juega soleado caliente normal F cubierto fresco alto T cubierto caliente alto T lluvioso suave normal F
  • 15.
    15 1. Introducción1. Introducción •Fases de construcción Selección del conjunto de datos Análisis de las propiedades de los datos Transformación del conjunto de datos de entrada Seleccionar y aplicar la técnica de minería de datos Evaluar los resultados soleado, humidad, vestido negro, tipo de pantalon, tipo de caro, llamada telefonica, temperatura, viento, juega golf, trabaja, a comer soleado, humidad, vestido negro, tipo de pantalon, tipo de caro, llamada telefonica, temperatura, viento, juega golf, trabaja, a comer  ZeroR  OneR  Naive Bayes  Árbol de decisiones  K-vecinos  Red neuronal  Inducción de reglas http://www.crisp-dm.org/
  • 16.
    16 1. Introducción1. Introducción •Illustracion de ZeroR perspectiva temperatura humedad viento juega soleado caliente alto F no soleado caliente alto T no cubierto caliente alto F sí lluvioso suave alto F sí lluvioso fresco normal F sí lluvioso fresco normal T no cubierto fresco normal T sí soleado suave alto F no soleado fresco normal F sí lluvioso suave normal F sí soleado suave normal T sí cubierto suave alto T sí cubierto caliente normal F sí lluvioso suave alto T no perspectiva temperatura humedad viento juega soleado caliente normal F cubierto fresco alto T cubierto caliente alto T lluvioso suave normal F 9 sí 5 no sí sí sí sí
  • 17.
    17 1. Introducción1. Introducción •Ilustración de OneR Perspectiva | No Sí -------------------------------------------- Soleado | 3 2 -------------------------------------------- Cubierto | 0 4 -------------------------------------------- Lluvioso | 2 3 Temp | No Sí -------------------------------------------- Caliente | 2 2 -------------------------------------------- Suave | 2 4 -------------------------------------------- Fresco | 1 3 Humedad | No Sí -------------------------------------------- Alta | 4 3 -------------------------------------------- Normal | 1 6 Viento | No Sí -------------------------------------------- F | 2 6 -------------------------------------------- T | 3 3 10/14 9/14 10/14 9/14 perspectiva temperatura humedad viento juega soleado caliente normal F cubierto fresco alto T cubierto caliente alto T lluvioso suave normal F no sí sí sí
  • 18.
  • 19.
    19 3. Ejercicio I:el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka • Objetivo: aprender a manejar «el explorer» de Weka • cargar un archivo de datos en de Weka; • aplicar algunos algoritmos de clasificación; • navegar; • ver algunos resultados; • aprender el formato de datos ARFF. • weather.nominal.arff • ABRE este fichero primero dentro un programa TXT-only
  • 20.
    20 3. Ejercicio I:el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka • @relation weather.symbolic • @attribute outlook {sunny, overcast, rainy} • @attribute temperature {hot, mild, cool} • @attribute humidity {high, normal} • @attribute windy {TRUE, FALSE} • @attribute play {yes, no} • @data • sunny,hot,high,FALSE,no • sunny,hot,high,TRUE,no • overcast,hot,high,FALSE,yes
  • 21.
    21 3. Ejercicio I:el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
  • 22.
    22 3. Ejercicio I:el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka • ZeroR • Naive Bayes • IbK • J48 • ZeroR • Naive Bayes • IbK • J48
  • 23.
    23 3. Ejercicio I:el «explorer» de Weka3. Ejercicio I: el «explorer» de Weka
  • 24.
    24 4. Ejercicio 1I:clases múltiples4. Ejercicio 1I: clases múltiples • iris.arff -- hace una clasificación con J48...
  • 25.
    25 5. Ejercicio III:clustering5. Ejercicio III: clustering • iris.arff
  • 26.
    26 5. Ejercicio III:clustering5. Ejercicio III: clustering
  • 27.
    27 6. EjercicioV: «knowledgeflow»6. EjercicioV: «knowledge flow» • segment-challenge and segment-test • Logistic regression
  • 28.
    28 6. EjercicioV: «knowledgeflow»6. EjercicioV: «knowledge flow»
  • 29.
  • 30.
    30 Parte II: programaParteII: programa 1. RapidMiner: presentación 2. Ejercicio I: ficheros .arff 3. Ejercicio II: repositorios propios de RM 4. Ejercicio III: ROC y otras métricas de evaluación 5. Ejercicio IV: «train» y «test» 6. EjercicioV: PCA (teoría) y clustering 7. Experimentación libre
  • 31.
    31 1. RapidMiner: presentación1.RapidMiner: presentación operadores y repertorios operadores y repertorios igual al KnowledgeFlow de Weka igual al KnowledgeFlow de Weka parámetros de la selección actual parámetros de la selección actual ejecución y visualizaciónejecución y visualización reporte de los problemas reporte de los problemas parámetros de la selección actual parámetros de la selección actual ayuda sobre la selección actual ayuda sobre la selección actual
  • 32.
    32 2. Ejercicio I:ficheros .arff en RM2. Ejercicio I: ficheros .arff en RM • Objetivo: los repositorios y los datos
  • 33.
    33 2. Ejercicio I:iris con RapidMiner2. Ejercicio I: iris con RapidMiner • Objetivo: los repositorios y los datos
  • 34.
    34 2. Ejercicio I:iris con RapidMiner2. Ejercicio I: iris con RapidMiner • Objetivo: los repositorios y los datos
  • 35.
    35 2. Ejercicio I:iris con RapidMiner2. Ejercicio I: iris con RapidMiner
  • 36.
    36 2. Ejercicio I:iris con RapidMiner2. Ejercicio I: iris con RapidMiner
  • 37.
    37 2. Ejercicio II:repositorios propios de RM2. Ejercicio II: repositorios propios de RM • Siempre es mas fácil transformar los ficheros directamente en los repositorios de RM.
  • 38.
    38 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación • ROC : receiver operating characteristic .... pero primero... regresamos al principio Matriz de confusión ecisión del clasificador: accuracy = (TP+TN)/(TP+TN+FP+FN Pueden imaginar un caso especial: la precisión muy alta pero de verdad, no significa nada? AYUDA: pensan en ZeroR...
  • 39.
    39 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación • Limitaciones de la precisión (“accuracy”) : • Supongamos un problema con 2 clases: • 9990 ejemplos de la clase 1 • 10 ejemplos de la clase 2 • Si el modelo de clasificación siempre dice que los ejemplos son de la clase 1, su precisión es • 9990/10000 = 99.9% • Totalmente engañosa, ya que nunca detectaremos ningún
  • 40.
    40 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación precision = TP/(TP+FP) True positive recognition rate recall = sensitivity = TP/P = TP/(TP+FN) True negative recognition rate specificity = TN/N = TN/(TN+FP) F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN) F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN) F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN) F-measure = 2*precision*recall / (precision+recall)F= 2TP / (2TP+FP+FN) Medidas “cost-sensitive”
  • 41.
    41 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 42.
    42 • Para evaluarla precisión de un modelo de clasificación nunca debemos utilizar el conjunto de entrenamiento (lo que nos daría el “error de resustitución” del clasificador), sino un conjunto de prueba independiente: • Por ejemplo, podríamos reservar 2/3 de los ejemplos disponibles para construir el clasificador y el 1/3 restante lo utilizaríamos de conjunto de prueba para estimar la precisión del clasificador. 3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 43.
    44 • Variantes dela validación cruzada • “Leave one out”: Se realiza una validación cruzada con k particiones del conjunto de datos, donde k coincide con el número de ejemplos disponibles. • Validación cruzada estratificada: Las particiones se realizan intentando mantener en todas ellas la misma proporción de clases que aparece en el conjunto de datos completo. 3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 44.
    45 • Curvas ROC(Receiver Operating Characteristics) • Eje vertical: “true positive rate” TPR = TP/(TP+FN) • Eje horizontal: “false positive rate” FPR = FP/(FP+TN) 3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 45.
    46 Curvas ROC •Desarrolladas enlos años 50 para analizar señales con ruido: caracterizar el compromiso entre aciertos y falsas alarmas. •Permiten comparar visualmente distintos modelos de clasificación. •El área que queda bajo la curva es una medida de la precisión (accuracy) del clasificador: •Cuanto más cerca estemos de la diagonal (área cercana a 0.5), menos preciso será el modelo. •Un modelo “perfecto” tendrá área 1. 3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 46.
    47 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación Ningún modelo es consistentemente mejor que el otro: M1 es mejor para FPR bajos, M2 para FPR altos.
  • 47.
    48 Curvas ROC •¿Cómo construirla curva ROC? •Se usa un clasificador que prediga la probabilidad de que un ejemplo E pertenezca a la clase positiva P(+|E) •Se ordenan los ejemplos en orden decreciente del valor estimado P(+|E) •Se aplica un umbral para cada valor distinto de P(+|E), donde se cuenta el número de TP, FP,TN y FN. • TPR = TP/(TP+FN) • FPR = FP/(FP+TN) 3. Ejercicio III: ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 48.
    49 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 49.
    50 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación • labor.ooi
  • 50.
    51 3. Ejercicio III:ROC y otras métricas de evaluación3. Ejercicio III: ROC y otras métricas de evaluación
  • 51.
    52 4. Ejercicio IV:«train» y «test»4. Ejercicio IV: «train» y «test» • Modelo:Apply testset • digit2_train • digit2_test
  • 52.
    53 5. EjercicioV: PCA5.EjercicioV: PCA • Sobre iris Experimentación libre: comparación de los resultados con el ExampleSet original y con el ExampleSetPCA
  • 53.
    54 6. EjercicioVI: «marketbasket analysis»6. EjercicioVI: «market basket analysis»
  • 54.
    55 6. EjercicioVI: «marketbasket analysis»6. EjercicioVI: «market basket analysis»
  • 55.
    56 6. EjercicioV: «marketbasket analysis»6. EjercicioV: «market basket analysis»
  • 56.
    57 6. EjercicioV: «marketbasket analysis»6. EjercicioV: «market basket analysis»
  • 57.
  • 58.
    59 Parte III: programaParteIII: programa 1. Minería de textos: requisitos 2. Teoría: LSA 3. Ejercicio I: LSA en RapidMiner 4. R: presentación 5. Ejercicio II: LSA en R 6. Ejercicio III:Visualización en R 7. Experimentación libre
  • 59.
    60 1. Mineria detextos: requisitos1. Mineria de textos: requisitos • Buscar «text mining» en Google... • Muchas informaciones en formato textual • Estimacion: 80%-85% de datos en textos LN (lenguajes naturales) • Ejemplo en BioTech • 80% del conocimiento in artículos científicos • Humano: leer 60 artículos / semana ...! • ... 10% son interesante... 6 semanas, 300/años • MedLine: 10 000 articulos / mes !!! • Chemical Abstract Registry: 4000 / dia, 2.5 miliones en 2004
  • 60.
    61 dfdfdsafsdafdsafdsafdsCharacterizing Trajectories ofMoving Objects Mobile Medecine: Drug Information through NL SMS Capture Relations in Biomedical Text Texts for a Cognitive Vision System Mapping Natural Language to Imagery Automated Identification of LTL Patterns Mapping NL to Imagery Automation of Requirements Analysis NL Interface for Crime-related Queries Dependability Analysis in Industrial Use Cases Web 2.0 and NLP Animated Agent that Understand NL Processing NL Requirements Automatic Diagram Drawing Automatic Construction of UML Diagrams Automated Conceptual Data Modeling Intelligent User Interfaces for Wikis Integrating BPM and Governing Documents Integrating Requirements and Model-Driven Engineering Translation NL into Temporal and Dynamic Logic Fact Extraction from Source Code Finding Defects in NL Confidentiality Requirements Extracting Causation Knowledge Multilingual Understanding of Natural Business Rules SMS Text Normalization Text Mining for Clinical Medical Records Event Model for Analysis of Verb Sense Intelligent Decision Support System User-Friendly Interface for Fingerprint Systems Analyzing Gap between Workflows and NL Descriptions 000 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 61.
    62 • Classify newsstories as World, US, Business, SciTech, Sports, Entertainment, Health, Other • Add MeSH terms to Medline abstracts • e.g.“Conscious Sedation” [E03.250] • Classify business names by industry. • Classify student essays as A,B,C,D, or F. • Classify email as Spam, Other. • Classify email to tech staff as Mac,Windows, ..., Other. • Classify pdf files as ResearchPaper, Other • Classify documents as WrittenByReagan, GhostWritten • Classify movie reviews as Favorable,Unfavorable,Neutral. • Classify technical papers as Interesting, Uninteresting. 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 62.
    63 • Best-studied benchmark:Reuters-21578 newswire stories • 9603 train, 3299 test documents, 80-100 words each, 93 classes ARGENTINE 1986/87 GRAIN/OILSEED REGISTRATIONS BUENOS AIRES, Feb 26 Argentine grain board figures show crop registrations of grains, oilseeds and their products to February 11, in thousands of tonnes, showing those for future shipments month, 1986/87 total and 1985/86 total to February 12, 1986, in brackets: Bread wheat prev 1,655.8, Feb 872.0, March 164.6, total 2,692.4 (4,161.0). Maize Mar 48.0, total 48.0 (nil). Sorghum nil (nil) Oilseed export registrations were: Sunflowerseed total 15.0 (7.9) Soybean May 20.0, total 20.0 (nil) The board also detailed export registrations for subproducts, as follows.... 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 63.
    64 Cual es lamejor representación para un documento? sencilla / útil 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 64.
    el gato gatogato gordoel gato gato gato gordo el ... el gato gordo!el ... el gato gordo! el gato gordo gordo gordo gordoel gato gordo gordo gordo gordo A B C 1 1 3 1 2 1 4 1 1 gordo el gato A B C 65 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 65.
    66  Secuencias decaracteres + Nada de conocimiento de lingüística! Consecuencia: herramientas muy sencillas para construir la matriz - Si quiere un poco de semántica, la representación es muy débil  N-grammes (unigrammes, bigrammes, trigrammes, …)  Google (2006): corpus de n-grams  Gratuito en 2006, 150$US en 2009  Fichero txt: 24 Mo zip  Number of tokens: 1,024,908,267,229  Number of sentences: 95,119,665,584  Number of unigrams: 13,588,391  Number of bigrams: 314,843,401  Number of trigrams: 977,069,902  Number of fourgrams: 1,313,818,354 Atributos 25 1. Mineria de textos: requisitos1. Mineria de textos: requisitos
  • 66.
    67  Palabras  bag-of-wordsrepresentation  Herramientas necesarias: por lo menos un «tokenizer», mas un «lemmatizer»  Expresiones regulares (*, ?, etc.)  Secuencias de palabras (1, 2, 3...)  Google (2006): corpus de n-grams  Gratuito en 2006, 150$US en 2009  Fichero txt: 24 Mo zip  Number of tokens: 1,024,908,267,229  Number of sentences: 95,119,665,584  Number of unigrams: 13,588,391  Number of bigrams: 314,843,401  Number of trigrams: 977,069,902  Number of fourgrams: 1,313,818,354  Number of fivegrams: 1,176,470,663 26 1. Mineria de textos: requisitos1. Mineria de textos: requisitos Atributos
  • 67.
    68  Palabras quepertenece a una clase lexical en particular (ex. solamente los verbos, solamente los nombres, etc.)  Herramientas necesarias: POS-tagger  Los tesauros y las taxonomías permiten establecer una relación entre las formas de misma significación (sinónimos) o establecer una relación entre una forma de significación general y otra mas especifica (hiperonimia?!!)  Herramientas:WordNet, EuroWordNet  Otra posibilidad: los «tags» colaborativos 30 1. Mineria de textos: requisitos1. Mineria de textos: requisitos Atributos
  • 68.
    69  Presencia/ausencia deltermino  Frecuencia del termino :TF(j)  Frecuencia tri-valuada: 0, 1, 2  Frecuencia TF-IDF(j) = TF(j) * IDF(j) 33 1. Mineria de textos: requisitos1. Mineria de textos: requisitos Valores inverse document frequency
  • 69.
    70 o Possibilités o Tf-idf oSimilarité Multimodal N df(m) tfidf(m) = tf(m) * log Nombre de documentos Frecuencia de la palabra en el documento Nombre de documentos contendiendo la palabra 34 1. Mineria de textos: requisitos1. Mineria de textos: requisitos La palabra (m) es mas importante si aparece muchas veces en un documento. La palabra (m) es menos importante si aparece en muchos documentos Valores
  • 70.
    71 • Principal ComponentAnalysis: buscar el mejor «plan» de proyección (pasar de 1000 a 30 dimensiones p.e.) • Latent Semantic Analysis: basado sobre SingularValue Decomposition • U contiene los «eigen vectors» de A * A • V contiene los «eigen vectors» de A * A • S contiene las «singular values» • Latent Dirichlet Allocation: descubierto de «topics» • pLSA, etc. Reduccion de la dimensionalidad / modelos de lenguaje A = U * S * V T T T 2. LSA2. LSA
  • 71.
    72 • LSA transformala matriz de ocurrencias en una "relación" entre los términos y "conceptos" y una relación entre estos conceptos y de los documentos. A A documentos términos documentos términos T A = U * S * V T U A A documentos términos documentos términos TV 2. LSA2. LSA
  • 72.
    73 distancia entre 2 documentos distanciaentre 2 «palabras» 2. LSA2. LSA
  • 73.
    74  Similaridad cosine ∑x1ix2i Sim(D1, D2) = ∑xj 2 ∑xk 2 35 2. LSA2. LSA
  • 74.
  • 75.
    76 3. LSA conRapidMiner3. LSA con RapidMiner bow.csv
  • 76.
    77 3. LSA conRapidMiner3. LSA con RapidMiner
  • 77.
    78 3. LSA conRapidMiner3. LSA con RapidMiner
  • 78.
    79 3. LSA conRapidMiner3. LSA con RapidMiner
  • 79.
    80 4. R: Presentacion4.R: Presentacion
  • 80.
    81 5. LSA conR5. LSA con R
  • 81.
    82 5. LSA conR5. LSA con R dependencias: Snowball Rweka Rjava Rwekajar Mas rapido de cargar los archivos ZIP sobre el sitio de R...
  • 82.
    83 5. LSA conR5. LSA con R ad.csv("bow.csv", header=TRUE, sep=",")> X (para ver su con Menu Archivo / Cambiar dir... seleccionar el repertorio donde esta BOW.CSV (ex. LSA Datasets)
  • 83.
    84 5. LSA conR5. LSA con R > R = lsa(X, dims=dimcalc_share())> R (para ver su contenido: $tk, $dk y $sk) > U = R$tk> V = R$dk> S = R$sk > Xmodif = as.textmatrix(R) > cosine(Xmodif[,1], Xmodif[,2])> cosine(Xmodif)
  • 84.
    85 5.Visualización de LSAen R5.Visualización de LSA en R read.csv("mots.csv", header=FALSE, sep=",")> mots 1], U[,2], col = "red")> textxy(U[,1], U[,2], t(mots), cx=0.5, d 1], V[,2], col = "blue")> textxy(V[,1], V[,2], 1:9, cx=0.5, dcol=
  • 85.
    86 5.Visualización de LSAen R5.Visualización de LSA en R U[,1], V[,1])> losY = append(U[,2], V[,2])> plot(losX, losY, co
  • 86.
    Parte IV GATE ylos textos
  • 87.
    88 Parte IV: programaParteIV: programa 1. «Text analytics» y minería de textos 2. GATE: presentación 3. Ejercicio I: documentos y corpus 4. Ejercicio II: Processing Resources 5. Ejercicio III:Applications 6. Ejercicio IV:Anotaciones y esquemas (patrones) 7. Experimentación libre
  • 88.
    89 Natural Language Processing NLP Mineríade textos MT IR Busceda de information (information retrieval) Semantic Web Web 2.0 Text Analytics Analítica de textos 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos
  • 89.
    90 • Había unavez una serie de palabras • T mey levtp t rk n.ə ŋə əγ ə ə (Skorik 1961: 102) Nociones 10 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos verbos nombres adjetivos adverbios pronombres conjunción determinantes yo, tu, la, les, y, o, cual... •part-of-speech: POS
  • 90.
    91 • el libro,los libros • canto, cantamos, cantan • difícil, difícilmente • instituto, institutor, institución, instituir 13 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos Nociones
  • 91.
    92 ella la mujer la mujermuy grande la mujer con los aquellos ojos verdes la mujer con el cabello largo que me ha dado un regalo Nelson los ninos los estudiantes de la UTPL el pequeno profesor con el pelo corto la carta que me has dado 16 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos Nociones
  • 92.
    93 • sintagmas nominales(noun phrase): NP • sintagmas preposicionales (prepositional phrase): PP • sintagmas verbales (verbal phrase):VP • sintagmas adjetivas (adjectival phrase):AP 17 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos Nociones
  • 93.
    94 • S NPVP • NP  Nprop • NP  Det N • NP  NP PP • VP V NP • VP VP PP • PP  P NP  N libro, castillo, parque, cazador, mesa, gato, pastel  Nprop Marcelo  V  come, caza, ve, estrangula, pica, construye  P  en, sobre, detrás  Det  el, un 18 1. «text analytics» y Minería de textos1. «text analytics» y Minería de textos Nociones Marcelo estrangula un gato en el parque detrás el castillo
  • 94.
    95 2. GATE: presentación2.GATE: presentación resourcesresources mensajes, anotations and construccion de applicationes mensajes, anotations and construccion de applicationes
  • 95.
    96 2. GATE: presentación2.GATE: presentación
  • 96.
    97 2. GATE: presentación2.GATE: presentación
  • 97.
    98 2. GATE: presentación2.GATE: presentación
  • 98.
    99 3. Ejercicio I:documentos y corpus3. Ejercicio I: documentos y corpus 1. carga y visualización documentos in GATE 2. navegación de los conjuntos de anotaciones y lista de anotaciones.
  • 99.
    100 3. Ejercicio I:documentos y corpus3. Ejercicio I: documentos y corpus 1. nombre de archivos y de carpetas: sin espacio
  • 100.
    101 3. Ejercicio I:documentos y corpus3. Ejercicio I: documentos y corpus
  • 101.
    102 3. Ejercicio 1:documentos y corpus3. Ejercicio 1: documentos y corpus corpus_1
  • 102.
    103 3. Ejercicio 1:documentos y corpus3. Ejercicio 1: documentos y corpus
  • 103.
    104 4. Ejercicio II:Processing Resources4. Ejercicio II: Processing Resources
  • 104.
    105 4. Ejercicio II:Processing Resources4. Ejercicio II: Processing Resources
  • 105.
    106 4. Ejercicio II:Processing Resources4. Ejercicio II: Processing Resources
  • 106.
    107 4. Ejercicio II:Processing Resources4. Ejercicio II: Processing Resources
  • 107.
    108 5. Ejercicio III:Aplicaciones5.Ejercicio III:Aplicaciones
  • 108.
    109 5. Ejercicio III:Aplicaciones5.Ejercicio III:Aplicaciones
  • 109.
    110 5. Ejercicio III:Aplicaciones5.Ejercicio III:Aplicaciones MyTokens MySentences MyTokens
  • 110.
    111 5. Ejercicio III:Aplicaciones5.Ejercicio III:Aplicaciones
  • 111.
    112 6. Ejercicio IV:Anotacionesy esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
  • 112.
    113 6. Ejercicio IV:Anotacionesy esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
  • 113.
    114 6. Ejercicio IV:Anotacionesy esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
  • 114.
    115 6. Ejercicio IV:Anotacionesy esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
  • 115.
    116 6. Ejercicio IV:Anotacionesy esquemas (patrones)6. Ejercicio IV:Anotaciones y esquemas (patrones)
  • 116.

Notas del editor

  • #2 exploracion con 4 herramientas opensource
  • #7 Maestría Matemática e Informática (Comprensión automática de cartas de negocios)Doctorado en lingüística computacional (Representación de la semántica del concepto ‘evento’ en los idiomas naturales)Post doctorado (Elaboración de la semántica del concepto ‘evento’ y su relación con el concepto ‘cambio” en los idiomas naturales)
  • #9 porque mas practicas? 1) porque la MD o la extraccion de la informacion comprenden muchas tecnicas que mas vale aprender haciendolas 2) porque
  • #13 Cómo predecir la toxicidad de estos hongos? Trate de encontrar una manera de hacer y aplica la solución para predecir la toxicidad de los hongos E, F, G y H.
  • #28 Nous utilisons le mode KNOWLEDGE FLOW. Le fichier original a été scindé en deux: une partie TRAIN et une partie TEST (la variable SAMPLE dans ces deux fichiers a été évacuée).
  • #29 Nous utilisons le mode KNOWLEDGE FLOW. Le fichier original a été scindé en deux: une partie TRAIN et une partie TEST (la variable SAMPLE dans ces deux fichiers a été évacuée).
  • #34 importar un fichero arff
  • #55 salvar «transactions»
  • #65 palabras, palabras sin nada ex. comer (como, comes, comian, comeremos) y comida ?
  • #67 Beaucoup de réponses…. Allant du TALN au Ontologies…
  • #68 Ho: capital Po: banque (de sang, institution financière) Sy: chanteur, ténor, vocaliste Hy: déjeuner, repas
  • #69 Beaucoup de réponses…. Allant du TALN au Ontologies…
  • #70 tf(j) = la fréquence du terme j (nb d’occurrences de j / nb total de termes) idf(j) = log(D/df(j)) : inverse document frequency df(j) = le nombre de documents contenant le terme j D = le nombre de documents
  • #71 tf(j) = la fréquence du terme j (nb d’occurrences de j / nb total de termes) idf(j) = log(D/df(j)) : inverse document frequency df(j) = le nombre de documents contenant le terme j D = le nombre de documents
  • #72 A es nuestra matriz de documentos y «caracteristicas»
  • #75 La mesure de similarité la plus fréquente. -- calcul du cosinus de l’angle entre les vecteurs de document -- efficace : on calcule la somme des produits des mots semblables -- similarité varie entre 0 (différent) et 1 (le même). ∑√
  • #77 RapidMiner travaille avec des répertoires qui sont très pratiques. Il est donc très intéressants d'importer nos fichiers directement dans ceux-ci au lieu de passer à chaque fois par un « reader de CSV » ou autre. Ce processus est illustré aux figures 11 et 12. 3 La colonne « mots » sera considérée comme un label.
  • #78 Le processus de transformation LSA se trouve dans la rubrique « Data Transformation/Transformation » sous le libellé Singular Value Decomposition (figure 15). On s'assure que toutes les connections sont faites. Placement de l'opérateur SVD de la rubrique « Data Transformation » et les sous-rubriques « Attribute Set Reduction and Transformation » et « Transformation ».
  • #79 Graphique des deux premiers vecteurs de l'espace des termes.
  • #80 Graphique des deux premiers vecteurs de l'espace des documents.
  • #82 Nous utiliserons ici deux packages disponibles pour R: lsa et calibrate. Le premier pour LSA comme tel et le second, pour les graphiques. Le package calibrate comporte en effet une fonction (textxy) facilitant le placement d'étiquettes sur les graphiques. Nous procédons d'abord au chargement des packages (figure 20) en choisissant l'item Gestionnaire de package dans le menu Packages & Données.
  • #83 Nous procédons d'abord au chargement des packages (figure 20) en choisissant l'item Gestionnaire de package dans le menu Packages & Données. Si les packages calibrate et lsa n'apparaissent pas, il faudra les installer (figure 21) en s'assurant que l'on inclut aussi les dépendances (case à cocher). Le package lsa nécessite notamment les packages snowball, rjava, rweka. L'installateur est disponible sous l'item Installateur de package du menu Packages & Données.
  • #84 Nous aiguillons ensuite R vers notre répertoire de travail (figure 22). Tout est maintenant en place pour effectuer nos analyses. Il existe plusieurs fonctions permettant de lire des tables de données. Nous utiliserons ici read.csv. Pour obtenir de l'information sur les autres fonctions disponibles, consultez l'aide sous la rubrique read.table.
  • #85 La fonction lsa retourne une liste contenant trois composantes (Tk, Sk, Dk) qui représentent l'espace sémantique latent. Le package comprend également des fonctions permettant de calculer les fréquences tf-idf et aussi une fonction permettant d'éliminer les mots vides (stop words). Nous y reviendrons plus loin. Le calcul de l'espace latent (la décomposition en valeurs singulières) est simple. Le second paramètre détermine combien de dimensions seront conservées. dimcalc_share retourne une réduction de la dimension basée sur la somme des valeurs singulières, dimcalc_raw retourne le maximum de dimensions. En général, on utilisera dimcalc_share. Consultez l'aide concernant dimcalc. Les trois composantes sont directement accessibles grâce à $tk, $dk et $sk: La fonction as.textmatrix permet de reconstruire la matrice termes/documents telle que modifiée par la réduction de dimensions. Grâce à cette matrice, il est désormais possible d'effectuer certains calculs de similarité entre deux documents. Note: on peut également effectué ces calculs de similarité sur les vecteurs propres directement. Ou encore, obtenir les distances cosine pour toute la matrice.
  • #86 Mais reprenons nos vecteurs propres que nous avons placé dans U et dans V. Nous les utiliserons pour créer un graphique des deux premières dimensions de U et de V sur le même graphique en étiquetant les points ainsi obtenus. Allons d'abord chercher les mots qui nous servirons à étiqueter nos points. Comme les titres des documents sont assez longs, nous utiliserons plutôt des entiers pour étiqueter les points de V. Comme textxy nécessite une ligne d'étiquettes, nous lui donnerons la matrice transposée de mots donnée par t(mots).
  • #87 Présentons maintenant les documents et les termes sur le même graphique. Créons d'abord toutes nos étiquettes en collant les numéros de documents la suite des mots. Créons ensuite nos vecteurs complets pour toutes nos coordonnées.
  • #91 Limitons nous aux textes. Un mot est une unité sémantique Attention aux autres langues: chinois, japonais, hongrois, basque et le chukchi… 'I have a fierce headache.'
  • #92 Outil: plusieurs analyseurs morphologiques sont intégrés aux taggers.
  • #93 (a vu)
  • #94 (a vu)
  • #95 (a vu)
  • #96 a la entrada, solo se ve «Messages» aqui: se puede ver un corpus, un documento y una application
  • #97 como se ve un documento con annotationes en GATE. Dos tipos de annotation estan marcados en esta diapositiva: la localization (eg Montreal) y las organizaciones (eg Software Engineering Research Laboratoty)
  • #98 Applications : grupo de procesos que pueden ser aplicados a un documento o a una colección de documentos (= corpus) Processing resources: tagger, annotation, syntactic analyser
  • #99 Languages resources: documentos y corpusData stores: procesos o documentos a conservar
  • #100 Objetivos: carga y visualización documentos in GATE; navegación de los conjuntos de anotaciones y lista de anotaciones. Cuando GATE hace la importación de documentos, hace una conversión de ellos dentro un formato especial. Cada documento puede ser exportado o guardado en el DataStore. Botón derecha, New, Gate Document, las marcas indican las opciones obligatorias.
  • #101 Objetivos: carga y visualización documentos in GATE; navegación de los conjuntos de anotaciones y lista de anotaciones. Cuando GATE hace la importacion de documentatos, hace una conversion de ellos dentro un formato especial. Cada documento puede ser exportado o guardado en el DataStore.
  • #102 Navegar en las anotaciones
  • #103 populate un corpus a su creation
  • #107 Processing ressources tienen parámetros de inicialización y parámetros de ejecución.
  • #108 el Gazeetteer GAZE es una excepcion, se puede cambiar los parametros
  • #109 vamos a utilizar el corpus1 - el orden de las herramientas es importante. Por ejemplo, el Gazeetteer necesita los resultados del Tokeniser