SlideShare une entreprise Scribd logo
Trabajo de Fin de Máster
Análisis de sentimiento como indicador
reputacional
Alumno: Carlos Perales González
Tutor en la empresa: Hugo Marrao
Tutor en la universidad: Carlos Rivero Rodríguez
Máster de Ingeniería Matemática de la UCM
Agradecimientos
A Hugo y Rogelio, que me han ayudado en lo posible y más.
A Carlos Rivero, dispuesto siempre a solventar dudas.
A mi familia, que a pesar de la distancia, han estado siempre ahí.
Índice
1. Introducción y objetivos 3
2. Planteamiento 5
2.1. Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2. Presentación del problema . . . . . . . . . . . . . . . . . . . . 6
2.3. Clasificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.4. Preparación del corpus. Entrenamiento y validación . . . . . . 7
2.5. Teorema de Bayes . . . . . . . . . . . . . . . . . . . . . . . . . 8
3. Metodología de clasificación de texto 10
3.1. Construcción del clasificador . . . . . . . . . . . . . . . . . . . 10
3.2. Extracción de features y construcción de n-gramas . . . . . . . 14
3.3. De n-gramas a texto. Estimación de parámetros . . . . . . . . 15
4. Resultados 19
4.1. Ejemplos de tweets . . . . . . . . . . . . . . . . . . . . . . . . 19
4.2. Tasa de acierto . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3. Curva ROC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5. Conclusiones 22
1
Índice de cuadros
1. Comparación de la tasa de acierto frente a los distintos clasi-
ficadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Índice de figuras
1. Curva ROC del clasificador bayesiano ingenuo . . . . . . . . . 21
2. Curva ROC del clasificador de métrica reputacional . . . . . . 21
2
1. Introducción y objetivos
Un producto no solo es valorado por la calidad o el precio del mismo; tam-
bién el consumidor tiene en cuenta, de forma más o menos presente, quién lo
está vendiendo. La confianza en el vendedor es clave en la venta del producto.
Esto significa que la reputación de quién vende es valorada en el proceso de
compra.
Esta relación entre las ganancias de una institución y su reputación está
presente en el ámbito financiero actual en el que, a consecuencia de la crisis
iniciada en 2008, es necesario acotar las pérdidas que se puedan producir a
consecuencia de la actividad financiera en la que participan y/o están ex-
puestas las entidades financieras.
El riesgo reputacional, según define la Autoridad Europea de la Banca
(European Banking Authority, o simplemente EBA), es el riesgo actual, o el
riesgo futuro, asociado a las ganancias de la institución, sus propios fondos
o su liquidez a consecuencia del daño de la reputación que la entidad pueda
tener [1]. La EBA está empezando a exigir a las distintas entidades finan-
cieras que operan en Europa tengan una medida de su propia reputación, a
fin de que puedan prever la fortaleza de sus relaciones con otras entidades
bancarias y con la sociedad misma.
Es por ello necesario que las autoridades financieras posean métodos y
técnicas con las que predecir pérdidas de capital. En el caso que nos ocupa,
se intenta establecer un método para medir el riesgo reputacional. Supone un
trabajo interesante definir una métrica sobre la cual medir este riesgo. Al ser
un tema de marcado carácter social, supone una gran dificultad poner sobre
la mesa algún análisis de carácter cuantitativo sobre el riesgo reputacional.
Se ha optado por seguir el camino del análisis de sentimiento (también cono-
cida como minería de opinión).
Aunque el riesgo reputacional sea un tema de estudio subjetivo, no tiene
por qué ser parcial. Los distintos tipos de riesgo se relacionan entre sí. Una
mala noticia sobre inversiones puede transmitirse en riesgo de mercado (al
caer abruptamente las acciones de la entidad en cuestión), o en riesgo opera-
cional, si los clientes dejan de comprar productos al percibir que la entidad
no es fiable (riesgo reputacional). La retirada de depósitos por parte de los
clientes también puede ser otra pauta para relacionar el riesgo reputacional
con otros tipos de riesgo.
3
Aunque la opinión sea algo subjetivo, existe una motivación para intentar
tratar esta información de forma imparcial, basándonos en que las opiniones
tienen la capacidad de resultar en unas consecuencias concretas.
En esta era de la información, parece desfasado realizar un estudio del
análisis del sentimiento mediante encuestas dirigidas, con el inconveniente
de que el hecho de encuestar introduce una perturbación en la opinión del
encuestado. Por ello, se prefiera el estudio mediante redes sociales.
Se ha elegido la red social Twitter como ámbito de estudio por varios
motivos. Entre ellos, la implantación que tiene en España y la brevedad y
concisión de sus mensajes, debido a su restricción de un máximo de 140 ca-
racteres.
Debido a la infraestructura de Twitter, podemos obtener otros datos im-
portantes, como el número de seguidores que alguien tiene, el número de veces
que se difunde un mensaje por la red, o una idea de la distribución geográfica
de los tweets que recogemos. Otro detalle a destacar es que también es un
medio en el cual las instituciones financieras vuelcan sus mensajes a través
de cuentas oficiales, por lo que se puede realizar un seguimiento de estas y
de su impacto social.
4
2. Planteamiento
2.1. Definiciones
Para explicar el trabajo realizado, es necesario explicar las definiciones
que más adelante vamos a usar:
Riesgo reputación: significa el riesgo actual de pérdidas en las ganancias
de la institución o su liquidez debido a daños en la perspectiva que la
sociedad tiene de esta [1].
Polaridad: es la escala de valores (‘positivo’, ‘negativo’, ‘neutro’, . . .) que
se puede asignar a un elemento durante un análisis de sentimiento [2].
Análisis de sentimento: se trata de la determinación automatizada de la
subjetividad, polaridad y la fuerza que tenga un texto, independiente-
mente de si este está escrito con intención objetiva o subjetiva [3].
Corpus: Es el conjunto de mensajes de texto que se han escogido para hacer
análisis estadísticos y contrastar hipótesis sobre el área que estudian.
La construcción del corpus está orientada a una temática a estudiar [4].
Tweet: es un mensaje publicado en la red social Twitter. Consiste en un
texto cuya longitud tiene que ser menor o igual a 140 caracteres [5].
Además, el mensaje contiene otra información, como el usuario que lo
ha publicado y la fecha, así como puede portar otros datos como fotos,
un enlace web, una ubicación, un hashtag (etiqueta que se usa entre los
usuarios para encontrar mensajes de un tema específico), etc.
Aprendizaje automático: es una rama de la Ciencia de la Computación
que estudia el reconocimiento de patrones y explora el estudio y cons-
trucción de algoritmos que puedan aprender y realizar predicciones so-
bre los datos [6].
Aprendizaje supervisado: engloba a los métodos de aprendizaje auto-
mático que cuente con datos de entrenamiento separados por etiquetas
[7].
Aprendizaje vago: es un método de aprendizaje en el que quedan guar-
dados en memoria todo el conjunto de entrenamiento, y en lugar de
construir leyes de aprendizaje, un nuevo caso se compara con el set
de entrenamiento. Es decir, la generalización más allá de los datos de
entrenamiento es demorada hasta que se hace una pregunta al sistema
[8].
5
Aprendizaje entusiasta: es un método de aprendizaje en el que el sistema
intenta construir una función objetivo durante el periodo de entrena-
miento, a diferencia del aprendizaje vago [9].
Clasificador: Es aquel instrumento matemático que se sirve de un algorit-
mo estadístico con el fin de asignar alguna característica a una entidad,
asignando una etiqueta clasificatoria. Este instrumento se construye
mediante aprendizaje automático [10].
2.2. Presentación del problema
Por parte de la empresa NFQ Solutions S.L., se ha presentado un proyec-
to capaz de adaptarse a las futuras exigencias de la EBA, parece necesario
que las instituciones financieras tengan un método para evaluar este riesgo.
Para ello, se han estudiado los mensajes publicados en la red social Twitter
(llamados tweets).
Estos mensajes o tweets pueden portar distinto tipo de información: el
texto, el usuario que lo publica, la fecha en la que lo hace, los usuarios a los
que los envía , la ubicación desde que se publica, una enlace web a una no-
ticia, etc. Los tres primeros campos (texto, fecha y usuario que publica) son
siempre obligatorios, siempre están incluidos, y son los que más información
proporcionan.
Debido a la cantidad de usuarios que frecuenta esta red social nada más
que en español, es conveniente que este estudio se realice de forma automáti-
ca. Es por ello que nos basamos en el análisis de sentimiento. Se construirán
algoritmos de aprendizaje supervisado (tendrás las etiquetas ‘positivo’ y ‘ne-
gativo’) y entusiasta (se construirán una serie de reglas de predicción).
El sistema de trabajo es el siguiente: se parte de un conjunto de mensajes
(el texto de los tweets) que ha sido valorado manualmente, siguiendo el crite-
rio que la EBA propone. Con este set entrenamos un clasificador que consiga
puntuar los tweets en función de su texto. El Trabajo de Fin de Máster se
ha orientado en construir y probar distintos clasificadores.
2.3. Clasificadores
El método para clasificar los tweets en ‘positivos’ o ‘negativos’, desde el
punto de vista de la reputación comentado en 2.1, será el del aprendizaje
6
supervisado. Esto implica, que tenemos que preparar de manera correcta el
set de entrenamiento para que se puedan construir las reglas de clasificación.
Básicamente, se realizará un seguimiento de los mensajes públicos emitidos
en la red social Twitter.
El corpus se ha realizado manualmente, eligiendo aquellos tweets más
relevantes. Estos se han escogido con los tweets más retweeteados (republica-
dos por los usuarios) en Twitter. Así nos aseguramos que, cogiendo n tweets
únicos (no repetidos), estos tengan la máxima representatividad posible. Ade-
más, trabajamos con la hipótesis de que los tweets más compartidos versan
sobre los temas más comentados y/o relevantes.
2.4. Preparación del corpus. Entrenamiento y valida-
ción
Para generar los clasificadores es necesario escoger correctamente los tweets
para el corpus. Se han buscado los 50 tweets más republicados en la red so-
cial cada 3 días y medio (100 tweets por semana). Estos mensajes han sido
valorados a mano por empleados de NFQ Solutions, atendiendo a los criterios
que la EBA en su informe indican para el riesgo reputacional.
El criterio de seleción para escoger el corpus es realizar una búsqueda
en tiempo real de los mensajes que se publican en Twitter mencionando a
una institución financiera, y almacenarlos. De esos tweets, se escogen los que
cumplen los criterios para discernir si son ‘buenos’ o ‘malos’ según el criterio
de reputación de la EBA [1].
El principal motivo para esta división cada 3 días y medio es, primero,
que así se escogen 100 tweets por semana. El segundo motivo es que se ha
visto en la base de datos que la empresa poseía que los temas de los cuales
se hablaban en la red social, relacionados con la métrica de una institución
financiera concreta, solían durar en torno a 3 días. Bajo esta hipótesis (si una
noticia es relevante, lo será durante 3 días aproximadamente) escogemos un
intervalo de 3 días y medio para evaluar los tweets más republicados.
Esta hipótesis también indica que será necesario reentrenar el corpus cada
cierto tiempo. Esto es importante solo en las primeras etapas del proyecto,
cuando el corpus aún no es lo suficientemente grande y, por tanto, no es ca-
paz de tratar todas las temáticas que tenemos. Esta fase de entrenamiento
terminará cuando el corpus sea sufcientemente grande. La Sociedad Española
7
de Procesamiento del Lenguaje, por ejemplo cuena con corpus sobre política
de más de 60000 tweets.
Como el estudio lo hemos realizado para una institución financiera concre-
ta, de la que se han ido recopilando tweets, valorando a mano como positivos
y negativos y construyendo modelos. Finalmente, se han dividido los tweets
valorados manualmente en dos sets: uno de entrenamiento (llamado training)
y otro de test (denominado 100ac). La notación del set de test proviene de
que se ha utilizado un corpus de 200 tweets, 100 positivos y 100 negativos,
para usarlos como valoración. El set de entrenamiento contiene 4000 tweets
valorados manualmente. Este set también está en proporción 50 − 50 entre
positivos y negativos.
Entre los tweets recogido, hemos encontrados tweets que hemos seleccio-
nado para el corpus (positivos o negativos) y tweets que no sirven para la
reputación. Un ejemplo de esto son los siguientes tweets
1. @CABK_Responde ¿en Madrid mañana viernes santo abren las ofici-
nas de la caixa? el horario de semna santa en la web pone de l-v hasta
las 14.
2. Buenas @FINTONIC podéis arreglar los problemas con @infoCaixa
@CABK_Responde ? Si el problema es de La Caixa mañana mismo
cierro la cuenta.
3. ¡Buenas noticias! La Caixa y el CDTI crean un fondo de 20 millones
para startups científicas.
En estos tres ejemplos, el primero no se tendría en cuenta para el corpus
reputacional. El segundo sí, y sería considerado negativo, y el tercero también,
aunque se etiquetaría como positivo.
2.5. Teorema de Bayes
Trataremos con categorías y elementos, que pueden entrar en una cate-
goría u otra. Por eso, es interesante presentar qué es el teorema de Bayes.
El teorema de Bayes explica la relación expresa la probabilidad condi-
cional. Es decir, si tenemos distintos eventos que pueden o no ocurrir, la
probabilidad que ocurra uno si otro ya sabemos que ha ocurrido. Y esto se
realiza relacionando la probabilidad de A dado B con la probabilidad de b
8
dado A.
Formalmente, se expresa que si tenemos dos eventos, A y B, podemos
expresar la probabilidad de que ocurra A si sabemos que B ha ocurrido
P(B|A) =
P(A|B)P(B)
P(A)
(1)
P(A): Probabilidad de que ocurra el evento A.
P(B): Probabilidad de que ocurra el evento B
P(A|B): Probabilidad de que ocurra el evento A sabiendo que el evento B
ha ocurrido.
P(B|A): Probabilidad de que ocurra el evento B sabiendo que el evento A
ha ocurrido.
Usaremos este teorema cuando queramos construir las probabilidades de
positivo y negativo de un texto, basándonos en las variables predictoras (fea-
tures) en las que podamos descomponer los tweets.
9
3. Metodología de clasificación de texto
Para este Trabajo de Fin de Máster, la clasificación de un tweet en ‘posi-
tivo’ o ‘negativo’ para una entidad financiera se atendrá solo a características
de su texto, si bien es cierto podían atenerse a otros campos que el tweet con-
tenga, como el usuario que lo publica, la ubicación desde la que se publica. . .
3.1. Construcción del clasificador
Podemos construir la probabilidad de que un tweet sea positivo o nega-
tivo a partir de las probabilidades de cada variable predictora o feature en
las que podamos dividirlo. La extracción de features aparece detallada en el
subapartado 3.2. Aunque las únicas features que tengamos en cuentan pro-
vendrán del campo del texto, el desarrollo es válido si queremos escoger como
variables, por ejemplo, el número de retweets, el usuario, etc.
Utilizamos el teorema de Bayes (1) explicado en el apartado 2.5. Pero
primero tenemos que indicar cómo se define un tweet a través de sus variables
predictoras. Vamos a proponer incialmente que, dado un tweet, este queda
determinado como un vector de features [11] que, definido en conjuntos, es
una intersección de estas.
tweet = (feature1, feature2, . . . , featuren) =
i
fi ≡ features (2)
Esto significa que un tweet está únicamente determinado por sus features.
Es la construcción de los elementos a clasificar es la que se utiliza habitual-
mente en la bibliografía [12]. Podemos usar (1) y (2) de manera que podemos
estimar la categoría (positivo o negativo) en la que se clasifica un tweet.
P(pos|features) =
P(pos)P(features|pos)
P(features)
(3)
Siendo:
P(pos|features) : Probabilidad de que dado un conjunto de features en cues-
tión sea positivo.
P(pos) : Probabilidad, a priori, de que un elemento sea positivo. Es lo que
se conoce como prior positive o probabilidad a priori de positivo.
10
P(features|pos) : Probabilidad de que el features en cuestión aparezca en
el corpus positivo.
P(features|neg) : Probabilidad de que el features en cuestión aparezca en
el corpus negativo.
El prior positive está íntimamente relacionado con nuestro set de entre-
namiento. Si existen más features positivos que negativos, parece lógico que
el clasificador, sin información sobre el features a tratar (es decir, a priori)
establezca que existe una mayor probabilidad de entrar en el grupo positivo
que en el negativo.
Pero esto no siempre es una buena opción. Si queremos capturar ambos
eventos por igual, conviene preestablecer una probabilidad a priori uniforme
(con dos etiquetas, P(pos) = P(neg) = 1/2), de manera que a ninguno de
los dos corpus tenga mayor importancia.
Vamos a considerar únicamente la probabilidad de ser positivo (o sim-
plemente probabilidad de positivo) puesto que vamos a tener en cuenta dos
categorías, positivo y negativo, que además son complementarias.
Debido a esta complementariedad, se puede escribir P(features) como
features = (features∩pos) (features∩neg) = features∩pos+features∩neg
(4)
Porque la intersección es nula. Usando (4),
P(features) = P(pos)P(features|pos) + P(neg)P(features|neg) (5)
Se puede reescribir (3) usando (5)
P(pos|features) =
P(pos)P(features|pos)
P(pos)P(features|pos) + P(neg)P(features|neg)
La cuestión recae ahora en cómo expresamos esa probabilidad de las va-
riables predictoras. Vamos a suponer la hipótesis de independencia entre las
variables
P(fi ∩ fj) = P(fi|fj)P(fj) = P(fi)P(fj) ∀i,j i = j (6)
11
Con esta hipótesis, y con la regla de la cadena, podemos escribir P(features|pos)
como
P(features|pos) =
P(( i fi) ∩ pos)
P(pos)
=
P((f1, f2, . . . , fn, pos)
P(pos)
=
P((f1|f2, . . . , fn, pos) . . . P(fn|pos)
P(pos)
= i P(fi ∩ pos)
P(pos)
=
i
P(fi|pos)
Al aplicar esta hipótesis de independencia, con la construcción del tweet
sobre sus features como (2), estamos construyendo un clasificador Bayesiano
Ingenuo (Naive Bayes classifier). En nuestro caso, eso significa que el hecho
de que aparezca una features no modifica las probabilidades de que los demás
features puedan surgir en el tweet.
Es por esta hipótesis de independencia (6) por lo que se adjetiva ‘inge-
nuo’. Es realmente posible que la aparición o no de variables esté relacionadas
entre sí, pero por simplicidad del clasificador, no se considera estas relaciones
[12]. No solo aplicamos esta hipótesis por simplicidad; además, el resultado
que obtenemos, que podemos ver en el apartado 4 no es nada desdeñable.
Formalmente, esto se expresa como
P(pos|features) =
P(pos) i P(fi|pos)
P(pos) i P(fi|pos) + P(neg) i P(fi|neg)
(7)
El clasificador bayesiano ingenuo supone que la influencia que la presencia
de un feature en un texto tiene una importancia para que sea el texto sea
considerado positivo o negativo independiente del resto de features.
A partir de las probabilidades de los features, construimos la probabilidad
de que un tweet sea considerado como positivo o negativo. Esta construcción,
de abajo a arriba, suponiendo que un feature tiene una probabilidad asocia-
da, lo que le da el nombre de clasificador bayesiano ingenuo. Supone, además,
que la presencia o ausencia de features en el tweet contribuye de manera in-
dependiente a la probabilidad de ser positivo.
Usando la misma hipótesis de independencia (6), otro clasificador puede
construirse. Para ello, volvemos a la interrelación tweets features de (2).
12
Puede que no interese que un tweet quede única y exclusivamente determi-
nado por sus features. Para hacer esta definición más laxa, sustituimos la
intersección con la unión.
tweet ∼
i
fi ≡ features (8)
Es decir, que en lugar de que un tweet quede definido por sus features, el
tweets pasa a ser un ‘promedio’ de estas. A esta construcción distinta, se ha
llamado indicador reputacional, puesto que está amparada y justificada por
la elección del corpus específico reputacional. A menudo, hemos probado a
quitar y probar features para mejorar el acierto, y esto no es congruente con
una definición sólida y determinista como (2).
La probabilidad P(features|pos) se puede escribir como:
P(features|pos) =
P(( i fi) ∩ pos)
P(pos)
=
P((f1 ∪ f2 ∪ . . . ∪ fn) pos)
P(pos)
=
P( i(fi ∩ pos)
P(pos)
= i P(fi ∩ pos)
P(pos)
=
i
P(fi|pos)
La construcción del indicador reputacional I(pos|features) a partir de
las probabilidades de los features, en lugar de mediante el productorio, se
realiza mediante el promedio.
I(pos|features) =
P(pos) i P(fi|pos)
P(pos) i P(fi|pos) + P(neg) i P(fi|neg)
Multiplicando por n
n
, no modificamos nada, y puede verse esa noción de
tweets como promedio de sus features.
I(pos|features) =
P(pos)1
n i P(fi|pos)
P(pos)1
n i P(fi|pos) + P(neg)1
n i P(fi|neg)
(9)
Donde n es el número de features que se pueden formar a partir del tex-
to. Este indicador funciona como una probabilidad promedio de las features,
manteniéndose normalizada en 0 ≤ I(pos|features) ≤ 1.
13
Como se explicará en el apartado 4, el acierto del algoritmo usando (7) y
(9) son prácticamente el mismo. La ventaja que la construcción de la métrica
reputacional (9) aporta es que, cuando se puntúan casos nuevos, la proba-
bilidad de positivo no es cercana a los extremos (0 ó 1), sino que adquiere
valores intermedios, como 0,3 ó 0,7. El clasificador bayesiano ingenuo (7),
por su construcción, otorga probabilidades siempre rondando, o 0,9, o 0,1.
Es decir, claramente, se aprecia un overfitting, debido a la construcción del
bayesiano ingenuo.
Es decir, que el clasificador bayesiano ingenuo, aunque acierta lo mismo
que el clasificador por métrica reputacional, cuando designa probabilidades
para estar etiquetado como positivo o negativo.
Por ejemplo, un clasificador bayesiano ingenuo de manzanas puede cla-
sificar una fruta como tal usando la información de todas sus propiedades
físicas conjuntamente. Dirá que una fruta a clasificar es manzana si es roja,
redonda y de alrededor de 7 cm de diámetro. Es decir, la intersección de esas
features, si bien es verdad que luego supone independencia entre ellas.
Nuestro indicador, por otra parte, diría que una fruta es una manzana en
función de sus propiedades ‘ser roja’, ‘ser redonda’ y ‘alrededor de 7 cm de
diámetro’, y haría un promedio de las probabilidades obtenidas.
3.2. Extracción de features y construcción de n-gramas
Por simplicidad, en lugar de construir clasificadores para todos los fea-
tures posibles, lo que el algoritmo hará será clasificar el texto siguiendo las
frecuencias de las palabras y combinaciones de palabras que aparezcan en el
set de entrenamiento que tenga definido. Nuestras features entonces serán las
combinaciones ordenadas de palabras de los textos de los tweets.
La forma de construir esta probabilidad es la que nos otorgará la posibi-
lidad de construir unos u otros clasificadores. El tratamiento al texto pasa
por extraer las features, los elementos más importantes del texto. Nuestra
extracción de features empieza con una división en n-gramas. En general,
un n-grama es una subsecuencia de n elementos de una secuencia dada. En
nuestro caso, llamamos n-grama a una secuencia de n palabras que aparecen
consecuentemente en el texto de un mensaje. Dada las característica del len-
guaje español, hemos probado a introducir distintos n-gramas. Finalmente,
nuestro entrenamiento posee trigramas (n = 3), bigramas (n = 2) y unigra-
14
mas o monogramas (n = 1).
Posteriormente, a cada n-grama se le aplica la eliminación de stopwords.
Las stopwords no son más que un conjunto de palabras, elegido arbitraria-
mente, que hemos decidido eliminar de nuestro conjunto de entrenamiento.
Entre las stopwords podemos incluir, por ejemplo, artículos, preposiciones,
conjunciones. . . Se ha escogido como stopwords el conjunto en español que
se incluye en la librería de Python NLTK [13].
Para finalizar con este proceso de extracción de features, a los n-gramas
se le aplica un proceso de búsqueda de lexemas o stemming. La búsqueda de
lexemas es un método para reducir una palabra a su raíz (en inglés, stem, de
ahí el nombre).
La reducción de la palabra tiene el objetivo de poder comparar varias pa-
labras técnicamente distintas (comía, comeréis) pero esencialmente iguales a
una raíz, para poder compararlas. Este método podría obviarse en el trata-
miento del análisis de sentimiento, pero implicaría no sabríamos exactamente
cuántas veces aparece repitido el verbo comer en nuestro set de entrenamien-
to, pero sí cada forma verbal por separado. Cabe destacar que el stemming
no se aplica exclusivamente a los verbos, también a los plurales y a los géneros.
Por ser el idioma español omplejo, y con menos implementación en la pro-
gramación que el inglés (lenguaje general en la programación), las librerías
de búsquedas de lexemas están orientadas sobre todo al inglés. La librería
que se ha usado (NLTK) para la búsqueda de lexemas resulta agresiva (por
ejemplo, elimina todas las palabras que terminan en a u o). A pesar de esta
agresividad al tratar el texto, el resultado es igualmente válido.
3.3. De n-gramas a texto. Estimación de parámetros
Si seguimos el desarrollo del apartado anterior, lo que tenemos para tra-
bajar es un conjunto de combinaciones (ordenadas) de lexemas que poseen la
misma valoración que el texto completo del cual provienen. Es decir, no solo
extraemos las features del texto, sino que propagamos la valoración manual
que hemos asignado el texto.
El objetivo no es otro que construir el clasificador de texto en función de
las veces que se repiten determinados n-gramas. Esto significa que el proceso
anteriormente descrito para extraer la información del corpus de entrena-
15
miento se repetirá para el texto de cada tweet que queramos analizar.
Entonces, tenemos un conjunto de n-gramas valorados como positivos y
otro como negativos. Es cierto que los n-gramas no tiene ‘significado posi-
tivo’ o ‘significado negativo’ por sí mismos. Sin embargo, a partir de esta
información sí que podemos reconstruir la probabilidad de que un tweet sea
positivo o negativo.
Lo que esperamos con los n-gramas es que se repitan, y estos aparezcan en
los dos conjuntos: en el de positivo, y en el de negativo. Por tanto, podemos
asignar a cada n-grama la probabilidad de ser positivo basándonos en las
veces que se repite en uno y otro conjunto. Aplicando el teorema de Bayes,
P(pos|ngram) =
P(ngram|pos)P(pos)
P(ngram|pos)P(pos) + P(ngram|neg)P(neg)
(10)
Siendo:
P(pos|ngram): Probabilidad de que el n-grama en cuestión sea positivo.
P(pos): Probabilidad, a priori, de que un elemento sea positivo.
P(ngram|pos): Probabilidad de que el n-grama en cuestión aparezca en el
corpus positivo.
P(ngram|neg): Probabilidad de que el n-grama en cuestión aparezca en el
corpus negativo.
Como nuestro objetivo está orientado al riesgo reputacional, podría ser
contraproducente establecer que es más probable que un tweet entre en una
categoría que en otra. Un evento asociado a una institución financiera puede
mover seriamente la balanza de la reputación, con lo que establecer a prirori
una tendencia ensuciaría el resultado que queremos ver.
Volviendo a (10), podemos calcular la probabilidad de que un n-grama
sea positivo (P(pos|ngram)) sabiendo la probabilidad de que aparezca en el
conjunto positivo (P(ngram|pos)) y en el negativo (P(ngram|neg)).
Estas probabilidades se construyen en función de la frecuencia. Es decir,
la probabilidad es una función de las veces que se puede encontrar dicho n-
grama en el conjunto positivo y en el negativo.
16
Varias construcciones de la probabilidad han sido probadas. La primera,
es la probabilidad de Laplace, o de Laplace simple:
P(ngram|pos) =
d
N
(11)
Siendo:
d: Número de veces que aparece en el conjunto positivo.
N: Número de veces que aparece en los dos conjunto.
A pesar de que la probabilida de Laplace simple es sencilla y ampliamente
conocida, en nuestro caso posee principalmente dos problemas. El primero es
que, para pocas ocurrencias del n-grama en nuestro corpus, la probabilidad
surge fuertes variaciones ante la introducción de un n-grama más.
Veámoslo con un ejemplo: supongamos que tenemos el n-grama ‘muy
bueno‘, solo una vez. Aparece en el conjunto positivo, pues proviene del
texto ‘Esto me parece muy bueno‘. Entonces, por la probabilidad de Laplace
simple, ese n-grama tendría la probabilidad
P(pos|ngram) =
1
1
= 1
Es decir, con poca información, determinaría que la probabilidad que
otorga el n-grama es de P = 1. Hablamos de ‘otorgar probabilidad‘ por la
hipótesis del bayesiano ingenuo.
Ahora, añadimos al entrenamiento el tweeet ‘Esto no es muy bueno‘, con
valoración manual negativa. Este n-grama, ahora, aparece una vez en positivo
y otra en negativo. La probabilidad, ahora, baja drásticamente
P(pos|ngram) =
1
2
= 0,5
Si añadimos otra vez más ese n-grama a uno de los dos conjuntos, la pro-
babilidad vuelve a cambiar abruptamente. Este es el primer problema que
presenta.
El segundo problema consiste en que, si la frecuencia de n-gramas es baja
(hemos entrenado pocos textos donde aparecen esos n-gramas), es posible
que asigne alto valor de la probabilidad a uno de los dos conjuntos. Como
podemos sacar del caso anterior, si tenemos un n-grama repetido tres veces,
y tres veces en uno de los conjuntos, la probabilidad será 1 (ó 0) sin que
17
haya probabilidad en el otro de los conjuntos. Nos interesa un clasificador
que asigne probabilidades alejadas a los extremos (1 ó 0), porque ocurre que
nos interesa que nuestro clasificador, cuando yerre por falta de información,
falle por asignado probabilidades de positivo cercanas a 0,5 y no cercanas a
los extremos
Estudiando la información con la que tratamos, este es un caso que ocurre
en algunas ocasiones, e influye negativamente en la clasificación de los tweets.
Es por esto que se hace necesario trabajar con alguna otra probabilidad di-
ferente, pero que recoja también la información que la frecuencia recuerde.
La probabilidad que hemos probado, que solventa los problemas ante-
riormente mencionados y arroja una mejor predicción es la probabilidad de
Laplace suavizada o adición suavizada.
La construcción de esta probabilidad viene dada por una composición en-
tre la probabilidad de Laplace simple y la probabilidad uniforme. Es decir,
combina el conocimiento de las frecuencias con una cierta indeterminación
equiprobable de que la clasificación caiga en cualquiera de las posibles cate-
gorías (en nuestro caso, 2, positivo o negativo).
P(ngram|pos) =
d + α
N + ncatα
(12)
Donde:
d: Número de veces que aparece en el conjunto positivo.
N: Número de veces que aparece en los dos conjuntos.
ncat: Número de categorías.
α: Parámetro de suavizado
En nuestro caso, vamos trabajar solo con dos categorías, luego ncat = 2.
Si quisiéramos introducir otras categorías más, aumentaríamos ese número.
Comparando estas dos probabilidades para distintos textos de tweets, co-
mo explicaremos en el apartado 4, la tasa de acierto (el cociente entre las
veces que el algoritmo acierta entre el total de casos) es la misma usando
(12) que (10).
18
4. Resultados
Se ha entrenado el clasificador bayesiano ingenuo (7) y el clasificador de
indicador reputacional (9) con el test de entrenamiento de aproximadamente
4000 tweets, balanceado 50 − 50 y 38000 features. Los textos de estos, como
se ha indicado en apartados anteriores, han sido divididos en n-gramas, al-
macenando también las frecuencias para construir las probabilidades.
4.1. Ejemplos de tweets
Tenemos el texto de un tweet positivo:
‘CaixaBank pone en marcha su oficina de representación en Sudáfrica para
apoyar los proyectos empresariales’
Podemos dividirlo en unigramas, bigramas y trigramas. Aplicando el pro-
ceso de eliminación de stopwords y de stemming, los n-gramas quedan de la
siguiente forma:
‘caixabank’, ‘reconoc’, ‘compromis’, ‘conciliacion’, ‘laboral’, ‘famili’, ‘cai-
xabank reconoc’, ‘reconoc por’, ‘por su’, ‘su compromis’, ‘compromis con’,
‘con la’, ‘la conciliacion’, ‘conciliacion laboral’, ‘laboral y’, ‘y famili’, ‘caixa-
bank reconoc por’, ‘reconoc por su’, ‘por su compromis’, ‘su compromis con’,
‘compromis con la’, ‘con la conciliacion’, ‘la conciliacion laboral’, ‘concilia-
cion laboral y’, ‘laboral y famili’
Para nuestro clasificador por indicador reputacional, le otorga una proba-
bilidad de positivo de P = 0,7894, y para nuestro clasificador por bayesiano
ingenuo, P = 0,9999. Vemos otros textos diferentes:
Texto: ‘Esta semana Caixabank ha concedido una ayuda a la ONG Te toca
Actuar para la compra de materiales’
PNB = 0,9999
PI = 0,6684
Texto: ‘CaixaBank, reconocida por su compromiso con la conciliación la-
boral y familiar’
PNB = 0,3489
19
PI = 0,4977
Este tweet en particular es un ejemplo claro de por qué queremos un
clasificador que no asigne probabilidad cercana a los extremos. No es lo mismo
que se haya confundido el tweet anterior como ‘negativo’ con P 0,5 que
con P 0,35
4.2. Tasa de acierto
Se han usado los clasificadores para valorar el set set 100ac. Se ha compa-
rado los valores que los clasificadores otorgan frente a los reales (el set 100ac
ha sido valorado a mano, y se considerna estos valores como buenos).
Clasificadores/Acierto Acierto (set test) Acierto (set entrenamiento)
Bayesiano ingenuo 0.790 0.990
Métrica reputacional 0.715 0.995
Cuadro 1: Comparación de la tasa de acierto frente a los distintos clasifica-
dores
4.3. Curva ROC
La curva ROC (Receiver Operating Characteristic o Característica Ope-
rativa del Receptor) es una técnica para visualizar, organizar y seleccionar
clasificadores basados en comparación de dos características operativas (la
tasa de verdaderos positivos, TPR, y la tasa de falsos positivos) conforme el
umbral discriminante cambia [14]. El área bajo esta curva representa la pro-
babilidad de que un caso que el clasificador haya categorizado como positivo,
efectivamente, sea realmente positivo [15].
Se han construido la curva ROC usando la librería scikit-learn de Python
[16]. Los datos usados son los mismos que en el apartado anterior, sobre las
probabilidades que arrojan los dos clasificadores sobre los sets set de test y
de entrenamiento. El área bajo la curva (Area Under Curve) de los dos sets
se incluye en la leyenda.
20
Figura 1: Curva ROC del clasificador bayesiano ingenuo
Figura 2: Curva ROC del clasificador de métrica reputacional
21
5. Conclusiones
Tras los resultados expuestos en el apartado 4, para nuestro objetivo
(diseñar un clasificador de texto orientado al riesgo reputacional) es mejor
apostar por la métrica reputacional (9). Aunque basada en la hipótesis de in-
dependencia de las variables predictoras (features), su tasa de acierto y área
bajo la curva es mayor que en el clasificador bayesiano ingenuo (7), usando
el mismo set de entrenamiento.
El campo recién explorado del análisis de sentimiento en redes sociales
abre varias puertas para ser explorado. Por ejemplo, el hecho de trabajar con
variables predictoras no necesariamente se limita a tratar con n-gramas. En-
tre esas variables predictoras, por ejemplo, además de n-gramas se podrían
incluir como variables los usuarios, los hashtags, las páginas de noticias que
se tweetean, etc.
Durante la selección del corpus, se han podido discernir cuatro temáticas
en las cuales se podría dividir:
1. noticias
2. económico
3. promoción
4. social/otros
Esto podría ser motivación para probar un algoritmo de clasificación no
supervisionada, pero debido por problemas de tiempo y de tamaño del set
de entrenamiento, no se ha seguido esta línea de trabajo.
Por otra parte, es criticable usar la hipótesis de independencia (6) cuando
hablamos de texto, pues las frases tienen un orden gramatical. Sin embargo,
esta hipótesis nos permite trabajar con soltura y rapidez sin por ello conseguir
malos resultados. Se ha intentado preservar esta información del ‘orden’ a
través de los n-gramas. También se podrían tener en cuenta también otros
clasificadores que si otorgasen información sobre el orden, como los árboles
de decisión.
22
Referencias
[1] European Banking Authority. Article 107 (3) of directive 2013/36/eu
council regulation (EU) no 269/2014.
[2] Bo Pang and Lillian Lee. Seeing stars: Exploiting class relationships for
sentiment categorization with respect to rating scales. In Proceedings
of the 43rd annual meeting on association for computational linguistics,
pages 115–124. Association for Computational Linguistics, 2005.
[3] Julian Brooke, Milan Tofiloski, and Maite Taboada. Cross-linguistic
sentiment analysis: From english to spanish. In RANLP, pages 50–54,
2009.
[4] Chantal Pérez Hernández. Explotación de los córpora textuales infor-
matizados para la creación de bases de datos terminológicas basadas en
el conocimiento. Estudios de lingüística del español, (18):1, 2002.
[5] Twitter. Preguntas frecuentes para usuarios nuevos.
[6] Ron Kohavi and Foster Provost. Glossary of terms. Machine Learning,
30(2-3):271–274, 1998.
[7] Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar. Founda-
tions of machine learning. MIT press, 2012.
[8] Walter Daelemans and Antal Van den Bosch. Memory-based language
processing. Cambridge University Press, 2005.
[9] Iris Hendrickx and Antal Van Den Bosch. Hybrid algorithms with
instance-based classification. In European Conference on Machine Lear-
ning, pages 158–169. Springer, 2005.
[10] Tom M Mitchell. Machine learning. 1997. Burr Ridge, IL: McGraw Hill,
45:37, 1997.
[11] Alexander Pak and Patrick Paroubek. Twitter as a corpus for sentiment
analysis and opinion mining. In LREc, volume 10, pages 1320–1326,
2010.
[12] David J Hand and Keming Yu. Idiot’s bayes. International statistical
review, 69(3):385–398, 2001.
[13] Steven Bird. Nltk: the natural language toolkit. In Proceedings of the
COLING/ACL on Interactive presentation sessions, pages 69–72. Asso-
ciation for Computational Linguistics, 2006.
23
[14] John A Swets. Signal detection theory and ROC analysis in psychology
and diagnostics: Collected papers. Psychology Press, 2014.
[15] Andrew P Bradley. The use of the area under the roc curve in the eva-
luation of machine learning algorithms. Pattern recognition, 30(7):1145–
1159, 1997.
[16] F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Gri-
sel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, J. Vanderplas,
A. Passos, D. Cournapeau, M. Brucher, M. Perrot, and E. Duchesnay.
Scikit-learn: Machine learning in Python. Journal of Machine Learning
Research, 12:2825–2830, 2011.
24

Contenu connexe

Tendances

Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng thực t...
Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng   thực t...Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng   thực t...
Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng thực t...taothichmi
 
Credit Scores - what are they?
Credit Scores - what are they?Credit Scores - what are they?
Credit Scores - what are they?
Amanda Stevens
 
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
https://www.facebook.com/garmentspace
 
quản trị rủi ro thanh khoản ngân hàng ACB
quản trị rủi ro thanh khoản ngân hàng ACBquản trị rủi ro thanh khoản ngân hàng ACB
quản trị rủi ro thanh khoản ngân hàng ACB
ngocmylk
 
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAYĐề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docxCác Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
Nhận Viết Đề Tài Trọn Gói ZALO 0932091562
 
Phương thức thanh toán bằng lc trong thương mại quốc tế
Phương thức thanh toán bằng lc trong thương mại quốc tếPhương thức thanh toán bằng lc trong thương mại quốc tế
Phương thức thanh toán bằng lc trong thương mại quốc tế
cuocvanchuyen .vn
 
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
https://www.facebook.com/garmentspace
 
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
OnTimeVitThu
 
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAYLuận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏĐề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Khủng hoảng tài chính k hung hoảng nợ công hy lạp
Khủng hoảng tài chính k hung hoảng nợ công hy lạpKhủng hoảng tài chính k hung hoảng nợ công hy lạp
Khủng hoảng tài chính k hung hoảng nợ công hy lạp
Ce Nguyễn
 
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MBĐề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
Dịch vụ viết bài trọn gói ZALO 0917193864
 
Acb nhóm 01- marketing ngân hàng
Acb nhóm 01- marketing ngân hàngAcb nhóm 01- marketing ngân hàng
Acb nhóm 01- marketing ngân hàng
Binh Minh
 
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng VietcombankĐề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
Dịch vụ viết bài trọn gói ZALO: 0936 885 877
 
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOTLuận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
Dịch vụ viết bài trọn gói ZALO: 0909232620
 
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
https://www.facebook.com/garmentspace
 
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
https://www.facebook.com/garmentspace
 
saccr - 20150710 - final
saccr - 20150710 - finalsaccr - 20150710 - final
saccr - 20150710 - final
Patrice Touraine
 

Tendances (20)

Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng thực t...
Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng   thực t...Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng   thực t...
Một số vấn đề về thanh toán không dùng tiền mặt tại nhđt&pt cao bằng thực t...
 
Credit Scores - what are they?
Credit Scores - what are they?Credit Scores - what are they?
Credit Scores - what are they?
 
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
Hoạt động huy động vốn và hiệu quả sử dụng vốn tại ngân hàng nông nghiệp và p...
 
quản trị rủi ro thanh khoản ngân hàng ACB
quản trị rủi ro thanh khoản ngân hàng ACBquản trị rủi ro thanh khoản ngân hàng ACB
quản trị rủi ro thanh khoản ngân hàng ACB
 
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAYĐề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
Đề tài: Thực trạng rủi ro tín dụng tại Ngân hàng Sacombank, HAY
 
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docxCác Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
Các Nhân Tố Ảnh Hưởng Đến Quyết Định Vay Vốn Của Khách Hàng Cá Nhân.docx
 
Phương thức thanh toán bằng lc trong thương mại quốc tế
Phương thức thanh toán bằng lc trong thương mại quốc tếPhương thức thanh toán bằng lc trong thương mại quốc tế
Phương thức thanh toán bằng lc trong thương mại quốc tế
 
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
Bài thuyết trình chủ đề thâm hụt ngân sách ở nước ta giai đoạn hiện nay. thực...
 
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
Khóa luận: Một số biện pháp quản lý rủi ro tín dụng tại ngân hàng thương mại ...
 
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAYLuận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
Luận văn: Pháp luật về bảo lãnh của Ngân hàng tại MBBank, HAY
 
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏĐề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
Đề tài: Công tác quản trị rủi ro cho vay doanh nghiệp vừa và nhỏ
 
Khủng hoảng tài chính k hung hoảng nợ công hy lạp
Khủng hoảng tài chính k hung hoảng nợ công hy lạpKhủng hoảng tài chính k hung hoảng nợ công hy lạp
Khủng hoảng tài chính k hung hoảng nợ công hy lạp
 
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MBĐề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
Đề tài: Phát triển hoạt động môi giới tại công ty chứng khoán MB
 
Acb nhóm 01- marketing ngân hàng
Acb nhóm 01- marketing ngân hàngAcb nhóm 01- marketing ngân hàng
Acb nhóm 01- marketing ngân hàng
 
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng VietcombankĐề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
Đề tài: Bảo lãnh thực hiện hợp đồng tại Ngân hàng Vietcombank
 
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
Phân tích báo cáo tài chính ở Techcombank thực trạng và giải pháp.
 
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOTLuận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
Luận văn: Mở rộng hoạt động tín dụng tài trợ xuất nhập khẩu, HOT
 
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
Giải pháp nâng cao hiệu quả hoạt động huy động vốn tại ngân hàng thương mại c...
 
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
Phát triển hoạt động ngân hàng bán lẻ tại ngân hàng nông nghiệp và phát triển...
 
saccr - 20150710 - final
saccr - 20150710 - finalsaccr - 20150710 - final
saccr - 20150710 - final
 

Similaire à Análisis de sentimiento como indicador reputacional - TFM

UNEG-AS 2012-Inf2: El riesgo
UNEG-AS 2012-Inf2: El riesgoUNEG-AS 2012-Inf2: El riesgo
UNEG-AS 2012-Inf2: El riesgo
UNEG-AS
 
La matrizmarcologico
La matrizmarcologicoLa matrizmarcologico
Actividad 3 diseño de ovas (2)
Actividad 3 diseño de ovas (2)Actividad 3 diseño de ovas (2)
Actividad 3 diseño de ovas (2)
jairo marines
 
SEGUIR PASOS Marco Lógico.pptx
SEGUIR PASOS   Marco Lógico.pptxSEGUIR PASOS   Marco Lógico.pptx
SEGUIR PASOS Marco Lógico.pptx
FERN88
 
Elaboración de propuestas de solución de consultoría
Elaboración de propuestas de solución de consultoríaElaboración de propuestas de solución de consultoría
Elaboración de propuestas de solución de consultoría
Christian Alejandro Arroyo Cano
 
Evaluacion desempe+¦o
Evaluacion desempe+¦oEvaluacion desempe+¦o
Evaluacion desempe+¦o
Alejandro Arbelaez
 
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPTMETODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
rodrigolozanoortiz
 
Manual reactivos
Manual reactivosManual reactivos
Manual reactivos
Brenda Estrada
 
Manual reactivos
Manual reactivosManual reactivos
Manual reactivos
Yulexy Navarrete Pita
 
Coso+erm
Coso+ermCoso+erm
Coso+erm
Julio J Lopez
 
Coso erm
Coso ermCoso erm
Coso erm
hfigueroa1981
 
Coso+erm
Coso+ermCoso+erm
Modelos de evaluación pdf
Modelos de evaluación pdfModelos de evaluación pdf
Modelos de evaluación pdf
Mercedes López
 
analisis y cuantificacion del riesgo en gestion de riesgos
analisis y cuantificacion del riesgo en gestion de riesgosanalisis y cuantificacion del riesgo en gestion de riesgos
analisis y cuantificacion del riesgo en gestion de riesgos
Margoth CR
 
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
Andres ORELLANA
 
Realizar encuestas de satisfacción, people Vox
Realizar encuestas de satisfacción, people VoxRealizar encuestas de satisfacción, people Vox
Realizar encuestas de satisfacción, people Vox
Encuesta de Satisfacción
 
Manual aplicacion rubrica
Manual aplicacion rubricaManual aplicacion rubrica
Manual aplicacion rubrica
Héctor Rodolfo Campaña Reinoso
 
107063 2 paso4_
107063 2 paso4_107063 2 paso4_
107063 2 paso4_
JOSEIVANRONCANCIOGON1
 
Descripción de Instrumentos de Evaluación
Descripción de Instrumentos de EvaluaciónDescripción de Instrumentos de Evaluación
Descripción de Instrumentos de Evaluación
Horacio Rene Armas
 
T3 lc1. manual descriptivo de instrumentos de evaluación
T3 lc1. manual descriptivo de instrumentos de evaluaciónT3 lc1. manual descriptivo de instrumentos de evaluación
T3 lc1. manual descriptivo de instrumentos de evaluación
Luz Erika Bustinza
 

Similaire à Análisis de sentimiento como indicador reputacional - TFM (20)

UNEG-AS 2012-Inf2: El riesgo
UNEG-AS 2012-Inf2: El riesgoUNEG-AS 2012-Inf2: El riesgo
UNEG-AS 2012-Inf2: El riesgo
 
La matrizmarcologico
La matrizmarcologicoLa matrizmarcologico
La matrizmarcologico
 
Actividad 3 diseño de ovas (2)
Actividad 3 diseño de ovas (2)Actividad 3 diseño de ovas (2)
Actividad 3 diseño de ovas (2)
 
SEGUIR PASOS Marco Lógico.pptx
SEGUIR PASOS   Marco Lógico.pptxSEGUIR PASOS   Marco Lógico.pptx
SEGUIR PASOS Marco Lógico.pptx
 
Elaboración de propuestas de solución de consultoría
Elaboración de propuestas de solución de consultoríaElaboración de propuestas de solución de consultoría
Elaboración de propuestas de solución de consultoría
 
Evaluacion desempe+¦o
Evaluacion desempe+¦oEvaluacion desempe+¦o
Evaluacion desempe+¦o
 
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPTMETODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
METODOS ESCALA SALARIAL EN ESTRUCTURAS.PPT
 
Manual reactivos
Manual reactivosManual reactivos
Manual reactivos
 
Manual reactivos
Manual reactivosManual reactivos
Manual reactivos
 
Coso+erm
Coso+ermCoso+erm
Coso+erm
 
Coso erm
Coso ermCoso erm
Coso erm
 
Coso+erm
Coso+ermCoso+erm
Coso+erm
 
Modelos de evaluación pdf
Modelos de evaluación pdfModelos de evaluación pdf
Modelos de evaluación pdf
 
analisis y cuantificacion del riesgo en gestion de riesgos
analisis y cuantificacion del riesgo en gestion de riesgosanalisis y cuantificacion del riesgo en gestion de riesgos
analisis y cuantificacion del riesgo en gestion de riesgos
 
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
Ipebamod6planificacindelamejora 130601203409-phpapp02 p7
 
Realizar encuestas de satisfacción, people Vox
Realizar encuestas de satisfacción, people VoxRealizar encuestas de satisfacción, people Vox
Realizar encuestas de satisfacción, people Vox
 
Manual aplicacion rubrica
Manual aplicacion rubricaManual aplicacion rubrica
Manual aplicacion rubrica
 
107063 2 paso4_
107063 2 paso4_107063 2 paso4_
107063 2 paso4_
 
Descripción de Instrumentos de Evaluación
Descripción de Instrumentos de EvaluaciónDescripción de Instrumentos de Evaluación
Descripción de Instrumentos de Evaluación
 
T3 lc1. manual descriptivo de instrumentos de evaluación
T3 lc1. manual descriptivo de instrumentos de evaluaciónT3 lc1. manual descriptivo de instrumentos de evaluación
T3 lc1. manual descriptivo de instrumentos de evaluación
 

Plus de Carlos Perales

Clustering de canciones usando Fourier
Clustering de canciones usando FourierClustering de canciones usando Fourier
Clustering de canciones usando Fourier
Carlos Perales
 
A preliminary study of diversity in ELM ensembles (HAIS 2018)
A preliminary study of diversity in ELM ensembles (HAIS 2018)A preliminary study of diversity in ELM ensembles (HAIS 2018)
A preliminary study of diversity in ELM ensembles (HAIS 2018)
Carlos Perales
 
¿Podemos predecir si Twitter hundirá un banco?
¿Podemos predecir si Twitter hundirá un banco?¿Podemos predecir si Twitter hundirá un banco?
¿Podemos predecir si Twitter hundirá un banco?
Carlos Perales
 
Estudio y simulación numérica de las ecuaciones de aguas someras
Estudio y simulación numérica de las ecuaciones de aguas somerasEstudio y simulación numérica de las ecuaciones de aguas someras
Estudio y simulación numérica de las ecuaciones de aguas someras
Carlos Perales
 
Un estudio numérico sobre el número de Mach
Un estudio numérico sobre el número de MachUn estudio numérico sobre el número de Mach
Un estudio numérico sobre el número de Mach
Carlos Perales
 
Energía fotovoltaica en España y el mundo (2004-2008)
Energía fotovoltaica en España y el mundo (2004-2008)Energía fotovoltaica en España y el mundo (2004-2008)
Energía fotovoltaica en España y el mundo (2004-2008)
Carlos Perales
 
Propagación de una enfermedad en poblaciones dinámicas
Propagación de una enfermedad en poblaciones dinámicasPropagación de una enfermedad en poblaciones dinámicas
Propagación de una enfermedad en poblaciones dinámicas
Carlos Perales
 
Sobre la radiación Cherenkov (presentación)
Sobre la radiación Cherenkov (presentación)Sobre la radiación Cherenkov (presentación)
Sobre la radiación Cherenkov (presentación)
Carlos Perales
 
Sobre la radiación Cherenkov y los rayos cósmicos
Sobre la radiación Cherenkov y los rayos cósmicosSobre la radiación Cherenkov y los rayos cósmicos
Sobre la radiación Cherenkov y los rayos cósmicos
Carlos Perales
 

Plus de Carlos Perales (9)

Clustering de canciones usando Fourier
Clustering de canciones usando FourierClustering de canciones usando Fourier
Clustering de canciones usando Fourier
 
A preliminary study of diversity in ELM ensembles (HAIS 2018)
A preliminary study of diversity in ELM ensembles (HAIS 2018)A preliminary study of diversity in ELM ensembles (HAIS 2018)
A preliminary study of diversity in ELM ensembles (HAIS 2018)
 
¿Podemos predecir si Twitter hundirá un banco?
¿Podemos predecir si Twitter hundirá un banco?¿Podemos predecir si Twitter hundirá un banco?
¿Podemos predecir si Twitter hundirá un banco?
 
Estudio y simulación numérica de las ecuaciones de aguas someras
Estudio y simulación numérica de las ecuaciones de aguas somerasEstudio y simulación numérica de las ecuaciones de aguas someras
Estudio y simulación numérica de las ecuaciones de aguas someras
 
Un estudio numérico sobre el número de Mach
Un estudio numérico sobre el número de MachUn estudio numérico sobre el número de Mach
Un estudio numérico sobre el número de Mach
 
Energía fotovoltaica en España y el mundo (2004-2008)
Energía fotovoltaica en España y el mundo (2004-2008)Energía fotovoltaica en España y el mundo (2004-2008)
Energía fotovoltaica en España y el mundo (2004-2008)
 
Propagación de una enfermedad en poblaciones dinámicas
Propagación de una enfermedad en poblaciones dinámicasPropagación de una enfermedad en poblaciones dinámicas
Propagación de una enfermedad en poblaciones dinámicas
 
Sobre la radiación Cherenkov (presentación)
Sobre la radiación Cherenkov (presentación)Sobre la radiación Cherenkov (presentación)
Sobre la radiación Cherenkov (presentación)
 
Sobre la radiación Cherenkov y los rayos cósmicos
Sobre la radiación Cherenkov y los rayos cósmicosSobre la radiación Cherenkov y los rayos cósmicos
Sobre la radiación Cherenkov y los rayos cósmicos
 

Dernier

SLIDEHARE.docx..........................
SLIDEHARE.docx..........................SLIDEHARE.docx..........................
SLIDEHARE.docx..........................
azulsarase
 
Presentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptxPresentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptx
ronnyrocha223
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
yamilbailonw
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
carolina838317
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
taniarivera1015tvr
 
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
jlupo2024
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
FernandoRodrigoEscal
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
DanielaLoaeza5
 
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdfEstilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
ElisaLen4
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
FantasticVideo1
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
jemifermelgarejoaran1
 
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptxPRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
ANGELJOELSILVAPINZN
 
Propiedades Electricas de los Materiales
Propiedades Electricas de los MaterialesPropiedades Electricas de los Materiales
Propiedades Electricas de los Materiales
rogeliorodriguezt
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
Edgar Najera
 
Luces piloto y contactores Presentación fn.pptx
Luces piloto y contactores Presentación fn.pptxLuces piloto y contactores Presentación fn.pptx
Luces piloto y contactores Presentación fn.pptx
Fran115
 
Semana 12 - Ley 29973 de las personas con discapacidad.pdf
Semana 12 - Ley 29973 de las personas con discapacidad.pdfSemana 12 - Ley 29973 de las personas con discapacidad.pdf
Semana 12 - Ley 29973 de las personas con discapacidad.pdf
SandyCuenca
 
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDACURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
KruggerCossio1
 
PRINCIPALES CARACTERISTICAS DE EL PH.pptx
PRINCIPALES CARACTERISTICAS DE EL PH.pptxPRINCIPALES CARACTERISTICAS DE EL PH.pptx
PRINCIPALES CARACTERISTICAS DE EL PH.pptx
MONICADELROCIOMUNZON1
 
TIA portal Bloques PLC Siemens______.pdf
TIA portal Bloques PLC Siemens______.pdfTIA portal Bloques PLC Siemens______.pdf
TIA portal Bloques PLC Siemens______.pdf
ArmandoSarco
 
Presentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdfPresentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdf
jdcumarem02
 

Dernier (20)

SLIDEHARE.docx..........................
SLIDEHARE.docx..........................SLIDEHARE.docx..........................
SLIDEHARE.docx..........................
 
Presentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptxPresentación- de motor a combustión -diesel.pptx
Presentación- de motor a combustión -diesel.pptx
 
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptxS09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
S09 PBM-HEMORRAGIAS 2021-I Grabada 1.pptx
 
Operaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica MaizOperaciones Básicas creadora Veronica Maiz
Operaciones Básicas creadora Veronica Maiz
 
DIAGRAMA DE FLUJO DE ALGORITMO......
DIAGRAMA DE FLUJO   DE   ALGORITMO......DIAGRAMA DE FLUJO   DE   ALGORITMO......
DIAGRAMA DE FLUJO DE ALGORITMO......
 
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
1-AAP-RENAV-PyM Capacitación del Reglamento Nacional de Vehiculos.pdf
 
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptxINVENTARIO CEROO Y DINAMICAA FABRIL.pptx
INVENTARIO CEROO Y DINAMICAA FABRIL.pptx
 
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomomRinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
Rinitis alérgica-1.pdfuhycrbibxgvyvyjimomom
 
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdfEstilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
Estilo Arquitectónico Ecléctico e Histórico, Roberto de la Roche.pdf
 
Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024Sesión 03 universidad cesar vallejo 2024
Sesión 03 universidad cesar vallejo 2024
 
Cargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un PuenteCargas de Cálculos Estructurales de un Puente
Cargas de Cálculos Estructurales de un Puente
 
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptxPRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
PRACTICA 2 EDAFOLOGÍA TEXTURA DEL SUELO.pptx
 
Propiedades Electricas de los Materiales
Propiedades Electricas de los MaterialesPropiedades Electricas de los Materiales
Propiedades Electricas de los Materiales
 
Ducto Barras para instalaciones electricas
Ducto Barras para instalaciones electricasDucto Barras para instalaciones electricas
Ducto Barras para instalaciones electricas
 
Luces piloto y contactores Presentación fn.pptx
Luces piloto y contactores Presentación fn.pptxLuces piloto y contactores Presentación fn.pptx
Luces piloto y contactores Presentación fn.pptx
 
Semana 12 - Ley 29973 de las personas con discapacidad.pdf
Semana 12 - Ley 29973 de las personas con discapacidad.pdfSemana 12 - Ley 29973 de las personas con discapacidad.pdf
Semana 12 - Ley 29973 de las personas con discapacidad.pdf
 
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDACURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
CURSO FINAL CONMINUCION-CHANCADO Y MOLIENDA
 
PRINCIPALES CARACTERISTICAS DE EL PH.pptx
PRINCIPALES CARACTERISTICAS DE EL PH.pptxPRINCIPALES CARACTERISTICAS DE EL PH.pptx
PRINCIPALES CARACTERISTICAS DE EL PH.pptx
 
TIA portal Bloques PLC Siemens______.pdf
TIA portal Bloques PLC Siemens______.pdfTIA portal Bloques PLC Siemens______.pdf
TIA portal Bloques PLC Siemens______.pdf
 
Presentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdfPresentación transferencia de calor Jesus Morales.pdf
Presentación transferencia de calor Jesus Morales.pdf
 

Análisis de sentimiento como indicador reputacional - TFM

  • 1. Trabajo de Fin de Máster Análisis de sentimiento como indicador reputacional Alumno: Carlos Perales González Tutor en la empresa: Hugo Marrao Tutor en la universidad: Carlos Rivero Rodríguez Máster de Ingeniería Matemática de la UCM
  • 2. Agradecimientos A Hugo y Rogelio, que me han ayudado en lo posible y más. A Carlos Rivero, dispuesto siempre a solventar dudas. A mi familia, que a pesar de la distancia, han estado siempre ahí.
  • 3. Índice 1. Introducción y objetivos 3 2. Planteamiento 5 2.1. Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2. Presentación del problema . . . . . . . . . . . . . . . . . . . . 6 2.3. Clasificadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 2.4. Preparación del corpus. Entrenamiento y validación . . . . . . 7 2.5. Teorema de Bayes . . . . . . . . . . . . . . . . . . . . . . . . . 8 3. Metodología de clasificación de texto 10 3.1. Construcción del clasificador . . . . . . . . . . . . . . . . . . . 10 3.2. Extracción de features y construcción de n-gramas . . . . . . . 14 3.3. De n-gramas a texto. Estimación de parámetros . . . . . . . . 15 4. Resultados 19 4.1. Ejemplos de tweets . . . . . . . . . . . . . . . . . . . . . . . . 19 4.2. Tasa de acierto . . . . . . . . . . . . . . . . . . . . . . . . . . 20 4.3. Curva ROC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 5. Conclusiones 22 1
  • 4. Índice de cuadros 1. Comparación de la tasa de acierto frente a los distintos clasi- ficadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Índice de figuras 1. Curva ROC del clasificador bayesiano ingenuo . . . . . . . . . 21 2. Curva ROC del clasificador de métrica reputacional . . . . . . 21 2
  • 5. 1. Introducción y objetivos Un producto no solo es valorado por la calidad o el precio del mismo; tam- bién el consumidor tiene en cuenta, de forma más o menos presente, quién lo está vendiendo. La confianza en el vendedor es clave en la venta del producto. Esto significa que la reputación de quién vende es valorada en el proceso de compra. Esta relación entre las ganancias de una institución y su reputación está presente en el ámbito financiero actual en el que, a consecuencia de la crisis iniciada en 2008, es necesario acotar las pérdidas que se puedan producir a consecuencia de la actividad financiera en la que participan y/o están ex- puestas las entidades financieras. El riesgo reputacional, según define la Autoridad Europea de la Banca (European Banking Authority, o simplemente EBA), es el riesgo actual, o el riesgo futuro, asociado a las ganancias de la institución, sus propios fondos o su liquidez a consecuencia del daño de la reputación que la entidad pueda tener [1]. La EBA está empezando a exigir a las distintas entidades finan- cieras que operan en Europa tengan una medida de su propia reputación, a fin de que puedan prever la fortaleza de sus relaciones con otras entidades bancarias y con la sociedad misma. Es por ello necesario que las autoridades financieras posean métodos y técnicas con las que predecir pérdidas de capital. En el caso que nos ocupa, se intenta establecer un método para medir el riesgo reputacional. Supone un trabajo interesante definir una métrica sobre la cual medir este riesgo. Al ser un tema de marcado carácter social, supone una gran dificultad poner sobre la mesa algún análisis de carácter cuantitativo sobre el riesgo reputacional. Se ha optado por seguir el camino del análisis de sentimiento (también cono- cida como minería de opinión). Aunque el riesgo reputacional sea un tema de estudio subjetivo, no tiene por qué ser parcial. Los distintos tipos de riesgo se relacionan entre sí. Una mala noticia sobre inversiones puede transmitirse en riesgo de mercado (al caer abruptamente las acciones de la entidad en cuestión), o en riesgo opera- cional, si los clientes dejan de comprar productos al percibir que la entidad no es fiable (riesgo reputacional). La retirada de depósitos por parte de los clientes también puede ser otra pauta para relacionar el riesgo reputacional con otros tipos de riesgo. 3
  • 6. Aunque la opinión sea algo subjetivo, existe una motivación para intentar tratar esta información de forma imparcial, basándonos en que las opiniones tienen la capacidad de resultar en unas consecuencias concretas. En esta era de la información, parece desfasado realizar un estudio del análisis del sentimiento mediante encuestas dirigidas, con el inconveniente de que el hecho de encuestar introduce una perturbación en la opinión del encuestado. Por ello, se prefiera el estudio mediante redes sociales. Se ha elegido la red social Twitter como ámbito de estudio por varios motivos. Entre ellos, la implantación que tiene en España y la brevedad y concisión de sus mensajes, debido a su restricción de un máximo de 140 ca- racteres. Debido a la infraestructura de Twitter, podemos obtener otros datos im- portantes, como el número de seguidores que alguien tiene, el número de veces que se difunde un mensaje por la red, o una idea de la distribución geográfica de los tweets que recogemos. Otro detalle a destacar es que también es un medio en el cual las instituciones financieras vuelcan sus mensajes a través de cuentas oficiales, por lo que se puede realizar un seguimiento de estas y de su impacto social. 4
  • 7. 2. Planteamiento 2.1. Definiciones Para explicar el trabajo realizado, es necesario explicar las definiciones que más adelante vamos a usar: Riesgo reputación: significa el riesgo actual de pérdidas en las ganancias de la institución o su liquidez debido a daños en la perspectiva que la sociedad tiene de esta [1]. Polaridad: es la escala de valores (‘positivo’, ‘negativo’, ‘neutro’, . . .) que se puede asignar a un elemento durante un análisis de sentimiento [2]. Análisis de sentimento: se trata de la determinación automatizada de la subjetividad, polaridad y la fuerza que tenga un texto, independiente- mente de si este está escrito con intención objetiva o subjetiva [3]. Corpus: Es el conjunto de mensajes de texto que se han escogido para hacer análisis estadísticos y contrastar hipótesis sobre el área que estudian. La construcción del corpus está orientada a una temática a estudiar [4]. Tweet: es un mensaje publicado en la red social Twitter. Consiste en un texto cuya longitud tiene que ser menor o igual a 140 caracteres [5]. Además, el mensaje contiene otra información, como el usuario que lo ha publicado y la fecha, así como puede portar otros datos como fotos, un enlace web, una ubicación, un hashtag (etiqueta que se usa entre los usuarios para encontrar mensajes de un tema específico), etc. Aprendizaje automático: es una rama de la Ciencia de la Computación que estudia el reconocimiento de patrones y explora el estudio y cons- trucción de algoritmos que puedan aprender y realizar predicciones so- bre los datos [6]. Aprendizaje supervisado: engloba a los métodos de aprendizaje auto- mático que cuente con datos de entrenamiento separados por etiquetas [7]. Aprendizaje vago: es un método de aprendizaje en el que quedan guar- dados en memoria todo el conjunto de entrenamiento, y en lugar de construir leyes de aprendizaje, un nuevo caso se compara con el set de entrenamiento. Es decir, la generalización más allá de los datos de entrenamiento es demorada hasta que se hace una pregunta al sistema [8]. 5
  • 8. Aprendizaje entusiasta: es un método de aprendizaje en el que el sistema intenta construir una función objetivo durante el periodo de entrena- miento, a diferencia del aprendizaje vago [9]. Clasificador: Es aquel instrumento matemático que se sirve de un algorit- mo estadístico con el fin de asignar alguna característica a una entidad, asignando una etiqueta clasificatoria. Este instrumento se construye mediante aprendizaje automático [10]. 2.2. Presentación del problema Por parte de la empresa NFQ Solutions S.L., se ha presentado un proyec- to capaz de adaptarse a las futuras exigencias de la EBA, parece necesario que las instituciones financieras tengan un método para evaluar este riesgo. Para ello, se han estudiado los mensajes publicados en la red social Twitter (llamados tweets). Estos mensajes o tweets pueden portar distinto tipo de información: el texto, el usuario que lo publica, la fecha en la que lo hace, los usuarios a los que los envía , la ubicación desde que se publica, una enlace web a una no- ticia, etc. Los tres primeros campos (texto, fecha y usuario que publica) son siempre obligatorios, siempre están incluidos, y son los que más información proporcionan. Debido a la cantidad de usuarios que frecuenta esta red social nada más que en español, es conveniente que este estudio se realice de forma automáti- ca. Es por ello que nos basamos en el análisis de sentimiento. Se construirán algoritmos de aprendizaje supervisado (tendrás las etiquetas ‘positivo’ y ‘ne- gativo’) y entusiasta (se construirán una serie de reglas de predicción). El sistema de trabajo es el siguiente: se parte de un conjunto de mensajes (el texto de los tweets) que ha sido valorado manualmente, siguiendo el crite- rio que la EBA propone. Con este set entrenamos un clasificador que consiga puntuar los tweets en función de su texto. El Trabajo de Fin de Máster se ha orientado en construir y probar distintos clasificadores. 2.3. Clasificadores El método para clasificar los tweets en ‘positivos’ o ‘negativos’, desde el punto de vista de la reputación comentado en 2.1, será el del aprendizaje 6
  • 9. supervisado. Esto implica, que tenemos que preparar de manera correcta el set de entrenamiento para que se puedan construir las reglas de clasificación. Básicamente, se realizará un seguimiento de los mensajes públicos emitidos en la red social Twitter. El corpus se ha realizado manualmente, eligiendo aquellos tweets más relevantes. Estos se han escogido con los tweets más retweeteados (republica- dos por los usuarios) en Twitter. Así nos aseguramos que, cogiendo n tweets únicos (no repetidos), estos tengan la máxima representatividad posible. Ade- más, trabajamos con la hipótesis de que los tweets más compartidos versan sobre los temas más comentados y/o relevantes. 2.4. Preparación del corpus. Entrenamiento y valida- ción Para generar los clasificadores es necesario escoger correctamente los tweets para el corpus. Se han buscado los 50 tweets más republicados en la red so- cial cada 3 días y medio (100 tweets por semana). Estos mensajes han sido valorados a mano por empleados de NFQ Solutions, atendiendo a los criterios que la EBA en su informe indican para el riesgo reputacional. El criterio de seleción para escoger el corpus es realizar una búsqueda en tiempo real de los mensajes que se publican en Twitter mencionando a una institución financiera, y almacenarlos. De esos tweets, se escogen los que cumplen los criterios para discernir si son ‘buenos’ o ‘malos’ según el criterio de reputación de la EBA [1]. El principal motivo para esta división cada 3 días y medio es, primero, que así se escogen 100 tweets por semana. El segundo motivo es que se ha visto en la base de datos que la empresa poseía que los temas de los cuales se hablaban en la red social, relacionados con la métrica de una institución financiera concreta, solían durar en torno a 3 días. Bajo esta hipótesis (si una noticia es relevante, lo será durante 3 días aproximadamente) escogemos un intervalo de 3 días y medio para evaluar los tweets más republicados. Esta hipótesis también indica que será necesario reentrenar el corpus cada cierto tiempo. Esto es importante solo en las primeras etapas del proyecto, cuando el corpus aún no es lo suficientemente grande y, por tanto, no es ca- paz de tratar todas las temáticas que tenemos. Esta fase de entrenamiento terminará cuando el corpus sea sufcientemente grande. La Sociedad Española 7
  • 10. de Procesamiento del Lenguaje, por ejemplo cuena con corpus sobre política de más de 60000 tweets. Como el estudio lo hemos realizado para una institución financiera concre- ta, de la que se han ido recopilando tweets, valorando a mano como positivos y negativos y construyendo modelos. Finalmente, se han dividido los tweets valorados manualmente en dos sets: uno de entrenamiento (llamado training) y otro de test (denominado 100ac). La notación del set de test proviene de que se ha utilizado un corpus de 200 tweets, 100 positivos y 100 negativos, para usarlos como valoración. El set de entrenamiento contiene 4000 tweets valorados manualmente. Este set también está en proporción 50 − 50 entre positivos y negativos. Entre los tweets recogido, hemos encontrados tweets que hemos seleccio- nado para el corpus (positivos o negativos) y tweets que no sirven para la reputación. Un ejemplo de esto son los siguientes tweets 1. @CABK_Responde ¿en Madrid mañana viernes santo abren las ofici- nas de la caixa? el horario de semna santa en la web pone de l-v hasta las 14. 2. Buenas @FINTONIC podéis arreglar los problemas con @infoCaixa @CABK_Responde ? Si el problema es de La Caixa mañana mismo cierro la cuenta. 3. ¡Buenas noticias! La Caixa y el CDTI crean un fondo de 20 millones para startups científicas. En estos tres ejemplos, el primero no se tendría en cuenta para el corpus reputacional. El segundo sí, y sería considerado negativo, y el tercero también, aunque se etiquetaría como positivo. 2.5. Teorema de Bayes Trataremos con categorías y elementos, que pueden entrar en una cate- goría u otra. Por eso, es interesante presentar qué es el teorema de Bayes. El teorema de Bayes explica la relación expresa la probabilidad condi- cional. Es decir, si tenemos distintos eventos que pueden o no ocurrir, la probabilidad que ocurra uno si otro ya sabemos que ha ocurrido. Y esto se realiza relacionando la probabilidad de A dado B con la probabilidad de b 8
  • 11. dado A. Formalmente, se expresa que si tenemos dos eventos, A y B, podemos expresar la probabilidad de que ocurra A si sabemos que B ha ocurrido P(B|A) = P(A|B)P(B) P(A) (1) P(A): Probabilidad de que ocurra el evento A. P(B): Probabilidad de que ocurra el evento B P(A|B): Probabilidad de que ocurra el evento A sabiendo que el evento B ha ocurrido. P(B|A): Probabilidad de que ocurra el evento B sabiendo que el evento A ha ocurrido. Usaremos este teorema cuando queramos construir las probabilidades de positivo y negativo de un texto, basándonos en las variables predictoras (fea- tures) en las que podamos descomponer los tweets. 9
  • 12. 3. Metodología de clasificación de texto Para este Trabajo de Fin de Máster, la clasificación de un tweet en ‘posi- tivo’ o ‘negativo’ para una entidad financiera se atendrá solo a características de su texto, si bien es cierto podían atenerse a otros campos que el tweet con- tenga, como el usuario que lo publica, la ubicación desde la que se publica. . . 3.1. Construcción del clasificador Podemos construir la probabilidad de que un tweet sea positivo o nega- tivo a partir de las probabilidades de cada variable predictora o feature en las que podamos dividirlo. La extracción de features aparece detallada en el subapartado 3.2. Aunque las únicas features que tengamos en cuentan pro- vendrán del campo del texto, el desarrollo es válido si queremos escoger como variables, por ejemplo, el número de retweets, el usuario, etc. Utilizamos el teorema de Bayes (1) explicado en el apartado 2.5. Pero primero tenemos que indicar cómo se define un tweet a través de sus variables predictoras. Vamos a proponer incialmente que, dado un tweet, este queda determinado como un vector de features [11] que, definido en conjuntos, es una intersección de estas. tweet = (feature1, feature2, . . . , featuren) = i fi ≡ features (2) Esto significa que un tweet está únicamente determinado por sus features. Es la construcción de los elementos a clasificar es la que se utiliza habitual- mente en la bibliografía [12]. Podemos usar (1) y (2) de manera que podemos estimar la categoría (positivo o negativo) en la que se clasifica un tweet. P(pos|features) = P(pos)P(features|pos) P(features) (3) Siendo: P(pos|features) : Probabilidad de que dado un conjunto de features en cues- tión sea positivo. P(pos) : Probabilidad, a priori, de que un elemento sea positivo. Es lo que se conoce como prior positive o probabilidad a priori de positivo. 10
  • 13. P(features|pos) : Probabilidad de que el features en cuestión aparezca en el corpus positivo. P(features|neg) : Probabilidad de que el features en cuestión aparezca en el corpus negativo. El prior positive está íntimamente relacionado con nuestro set de entre- namiento. Si existen más features positivos que negativos, parece lógico que el clasificador, sin información sobre el features a tratar (es decir, a priori) establezca que existe una mayor probabilidad de entrar en el grupo positivo que en el negativo. Pero esto no siempre es una buena opción. Si queremos capturar ambos eventos por igual, conviene preestablecer una probabilidad a priori uniforme (con dos etiquetas, P(pos) = P(neg) = 1/2), de manera que a ninguno de los dos corpus tenga mayor importancia. Vamos a considerar únicamente la probabilidad de ser positivo (o sim- plemente probabilidad de positivo) puesto que vamos a tener en cuenta dos categorías, positivo y negativo, que además son complementarias. Debido a esta complementariedad, se puede escribir P(features) como features = (features∩pos) (features∩neg) = features∩pos+features∩neg (4) Porque la intersección es nula. Usando (4), P(features) = P(pos)P(features|pos) + P(neg)P(features|neg) (5) Se puede reescribir (3) usando (5) P(pos|features) = P(pos)P(features|pos) P(pos)P(features|pos) + P(neg)P(features|neg) La cuestión recae ahora en cómo expresamos esa probabilidad de las va- riables predictoras. Vamos a suponer la hipótesis de independencia entre las variables P(fi ∩ fj) = P(fi|fj)P(fj) = P(fi)P(fj) ∀i,j i = j (6) 11
  • 14. Con esta hipótesis, y con la regla de la cadena, podemos escribir P(features|pos) como P(features|pos) = P(( i fi) ∩ pos) P(pos) = P((f1, f2, . . . , fn, pos) P(pos) = P((f1|f2, . . . , fn, pos) . . . P(fn|pos) P(pos) = i P(fi ∩ pos) P(pos) = i P(fi|pos) Al aplicar esta hipótesis de independencia, con la construcción del tweet sobre sus features como (2), estamos construyendo un clasificador Bayesiano Ingenuo (Naive Bayes classifier). En nuestro caso, eso significa que el hecho de que aparezca una features no modifica las probabilidades de que los demás features puedan surgir en el tweet. Es por esta hipótesis de independencia (6) por lo que se adjetiva ‘inge- nuo’. Es realmente posible que la aparición o no de variables esté relacionadas entre sí, pero por simplicidad del clasificador, no se considera estas relaciones [12]. No solo aplicamos esta hipótesis por simplicidad; además, el resultado que obtenemos, que podemos ver en el apartado 4 no es nada desdeñable. Formalmente, esto se expresa como P(pos|features) = P(pos) i P(fi|pos) P(pos) i P(fi|pos) + P(neg) i P(fi|neg) (7) El clasificador bayesiano ingenuo supone que la influencia que la presencia de un feature en un texto tiene una importancia para que sea el texto sea considerado positivo o negativo independiente del resto de features. A partir de las probabilidades de los features, construimos la probabilidad de que un tweet sea considerado como positivo o negativo. Esta construcción, de abajo a arriba, suponiendo que un feature tiene una probabilidad asocia- da, lo que le da el nombre de clasificador bayesiano ingenuo. Supone, además, que la presencia o ausencia de features en el tweet contribuye de manera in- dependiente a la probabilidad de ser positivo. Usando la misma hipótesis de independencia (6), otro clasificador puede construirse. Para ello, volvemos a la interrelación tweets features de (2). 12
  • 15. Puede que no interese que un tweet quede única y exclusivamente determi- nado por sus features. Para hacer esta definición más laxa, sustituimos la intersección con la unión. tweet ∼ i fi ≡ features (8) Es decir, que en lugar de que un tweet quede definido por sus features, el tweets pasa a ser un ‘promedio’ de estas. A esta construcción distinta, se ha llamado indicador reputacional, puesto que está amparada y justificada por la elección del corpus específico reputacional. A menudo, hemos probado a quitar y probar features para mejorar el acierto, y esto no es congruente con una definición sólida y determinista como (2). La probabilidad P(features|pos) se puede escribir como: P(features|pos) = P(( i fi) ∩ pos) P(pos) = P((f1 ∪ f2 ∪ . . . ∪ fn) pos) P(pos) = P( i(fi ∩ pos) P(pos) = i P(fi ∩ pos) P(pos) = i P(fi|pos) La construcción del indicador reputacional I(pos|features) a partir de las probabilidades de los features, en lugar de mediante el productorio, se realiza mediante el promedio. I(pos|features) = P(pos) i P(fi|pos) P(pos) i P(fi|pos) + P(neg) i P(fi|neg) Multiplicando por n n , no modificamos nada, y puede verse esa noción de tweets como promedio de sus features. I(pos|features) = P(pos)1 n i P(fi|pos) P(pos)1 n i P(fi|pos) + P(neg)1 n i P(fi|neg) (9) Donde n es el número de features que se pueden formar a partir del tex- to. Este indicador funciona como una probabilidad promedio de las features, manteniéndose normalizada en 0 ≤ I(pos|features) ≤ 1. 13
  • 16. Como se explicará en el apartado 4, el acierto del algoritmo usando (7) y (9) son prácticamente el mismo. La ventaja que la construcción de la métrica reputacional (9) aporta es que, cuando se puntúan casos nuevos, la proba- bilidad de positivo no es cercana a los extremos (0 ó 1), sino que adquiere valores intermedios, como 0,3 ó 0,7. El clasificador bayesiano ingenuo (7), por su construcción, otorga probabilidades siempre rondando, o 0,9, o 0,1. Es decir, claramente, se aprecia un overfitting, debido a la construcción del bayesiano ingenuo. Es decir, que el clasificador bayesiano ingenuo, aunque acierta lo mismo que el clasificador por métrica reputacional, cuando designa probabilidades para estar etiquetado como positivo o negativo. Por ejemplo, un clasificador bayesiano ingenuo de manzanas puede cla- sificar una fruta como tal usando la información de todas sus propiedades físicas conjuntamente. Dirá que una fruta a clasificar es manzana si es roja, redonda y de alrededor de 7 cm de diámetro. Es decir, la intersección de esas features, si bien es verdad que luego supone independencia entre ellas. Nuestro indicador, por otra parte, diría que una fruta es una manzana en función de sus propiedades ‘ser roja’, ‘ser redonda’ y ‘alrededor de 7 cm de diámetro’, y haría un promedio de las probabilidades obtenidas. 3.2. Extracción de features y construcción de n-gramas Por simplicidad, en lugar de construir clasificadores para todos los fea- tures posibles, lo que el algoritmo hará será clasificar el texto siguiendo las frecuencias de las palabras y combinaciones de palabras que aparezcan en el set de entrenamiento que tenga definido. Nuestras features entonces serán las combinaciones ordenadas de palabras de los textos de los tweets. La forma de construir esta probabilidad es la que nos otorgará la posibi- lidad de construir unos u otros clasificadores. El tratamiento al texto pasa por extraer las features, los elementos más importantes del texto. Nuestra extracción de features empieza con una división en n-gramas. En general, un n-grama es una subsecuencia de n elementos de una secuencia dada. En nuestro caso, llamamos n-grama a una secuencia de n palabras que aparecen consecuentemente en el texto de un mensaje. Dada las característica del len- guaje español, hemos probado a introducir distintos n-gramas. Finalmente, nuestro entrenamiento posee trigramas (n = 3), bigramas (n = 2) y unigra- 14
  • 17. mas o monogramas (n = 1). Posteriormente, a cada n-grama se le aplica la eliminación de stopwords. Las stopwords no son más que un conjunto de palabras, elegido arbitraria- mente, que hemos decidido eliminar de nuestro conjunto de entrenamiento. Entre las stopwords podemos incluir, por ejemplo, artículos, preposiciones, conjunciones. . . Se ha escogido como stopwords el conjunto en español que se incluye en la librería de Python NLTK [13]. Para finalizar con este proceso de extracción de features, a los n-gramas se le aplica un proceso de búsqueda de lexemas o stemming. La búsqueda de lexemas es un método para reducir una palabra a su raíz (en inglés, stem, de ahí el nombre). La reducción de la palabra tiene el objetivo de poder comparar varias pa- labras técnicamente distintas (comía, comeréis) pero esencialmente iguales a una raíz, para poder compararlas. Este método podría obviarse en el trata- miento del análisis de sentimiento, pero implicaría no sabríamos exactamente cuántas veces aparece repitido el verbo comer en nuestro set de entrenamien- to, pero sí cada forma verbal por separado. Cabe destacar que el stemming no se aplica exclusivamente a los verbos, también a los plurales y a los géneros. Por ser el idioma español omplejo, y con menos implementación en la pro- gramación que el inglés (lenguaje general en la programación), las librerías de búsquedas de lexemas están orientadas sobre todo al inglés. La librería que se ha usado (NLTK) para la búsqueda de lexemas resulta agresiva (por ejemplo, elimina todas las palabras que terminan en a u o). A pesar de esta agresividad al tratar el texto, el resultado es igualmente válido. 3.3. De n-gramas a texto. Estimación de parámetros Si seguimos el desarrollo del apartado anterior, lo que tenemos para tra- bajar es un conjunto de combinaciones (ordenadas) de lexemas que poseen la misma valoración que el texto completo del cual provienen. Es decir, no solo extraemos las features del texto, sino que propagamos la valoración manual que hemos asignado el texto. El objetivo no es otro que construir el clasificador de texto en función de las veces que se repiten determinados n-gramas. Esto significa que el proceso anteriormente descrito para extraer la información del corpus de entrena- 15
  • 18. miento se repetirá para el texto de cada tweet que queramos analizar. Entonces, tenemos un conjunto de n-gramas valorados como positivos y otro como negativos. Es cierto que los n-gramas no tiene ‘significado posi- tivo’ o ‘significado negativo’ por sí mismos. Sin embargo, a partir de esta información sí que podemos reconstruir la probabilidad de que un tweet sea positivo o negativo. Lo que esperamos con los n-gramas es que se repitan, y estos aparezcan en los dos conjuntos: en el de positivo, y en el de negativo. Por tanto, podemos asignar a cada n-grama la probabilidad de ser positivo basándonos en las veces que se repite en uno y otro conjunto. Aplicando el teorema de Bayes, P(pos|ngram) = P(ngram|pos)P(pos) P(ngram|pos)P(pos) + P(ngram|neg)P(neg) (10) Siendo: P(pos|ngram): Probabilidad de que el n-grama en cuestión sea positivo. P(pos): Probabilidad, a priori, de que un elemento sea positivo. P(ngram|pos): Probabilidad de que el n-grama en cuestión aparezca en el corpus positivo. P(ngram|neg): Probabilidad de que el n-grama en cuestión aparezca en el corpus negativo. Como nuestro objetivo está orientado al riesgo reputacional, podría ser contraproducente establecer que es más probable que un tweet entre en una categoría que en otra. Un evento asociado a una institución financiera puede mover seriamente la balanza de la reputación, con lo que establecer a prirori una tendencia ensuciaría el resultado que queremos ver. Volviendo a (10), podemos calcular la probabilidad de que un n-grama sea positivo (P(pos|ngram)) sabiendo la probabilidad de que aparezca en el conjunto positivo (P(ngram|pos)) y en el negativo (P(ngram|neg)). Estas probabilidades se construyen en función de la frecuencia. Es decir, la probabilidad es una función de las veces que se puede encontrar dicho n- grama en el conjunto positivo y en el negativo. 16
  • 19. Varias construcciones de la probabilidad han sido probadas. La primera, es la probabilidad de Laplace, o de Laplace simple: P(ngram|pos) = d N (11) Siendo: d: Número de veces que aparece en el conjunto positivo. N: Número de veces que aparece en los dos conjunto. A pesar de que la probabilida de Laplace simple es sencilla y ampliamente conocida, en nuestro caso posee principalmente dos problemas. El primero es que, para pocas ocurrencias del n-grama en nuestro corpus, la probabilidad surge fuertes variaciones ante la introducción de un n-grama más. Veámoslo con un ejemplo: supongamos que tenemos el n-grama ‘muy bueno‘, solo una vez. Aparece en el conjunto positivo, pues proviene del texto ‘Esto me parece muy bueno‘. Entonces, por la probabilidad de Laplace simple, ese n-grama tendría la probabilidad P(pos|ngram) = 1 1 = 1 Es decir, con poca información, determinaría que la probabilidad que otorga el n-grama es de P = 1. Hablamos de ‘otorgar probabilidad‘ por la hipótesis del bayesiano ingenuo. Ahora, añadimos al entrenamiento el tweeet ‘Esto no es muy bueno‘, con valoración manual negativa. Este n-grama, ahora, aparece una vez en positivo y otra en negativo. La probabilidad, ahora, baja drásticamente P(pos|ngram) = 1 2 = 0,5 Si añadimos otra vez más ese n-grama a uno de los dos conjuntos, la pro- babilidad vuelve a cambiar abruptamente. Este es el primer problema que presenta. El segundo problema consiste en que, si la frecuencia de n-gramas es baja (hemos entrenado pocos textos donde aparecen esos n-gramas), es posible que asigne alto valor de la probabilidad a uno de los dos conjuntos. Como podemos sacar del caso anterior, si tenemos un n-grama repetido tres veces, y tres veces en uno de los conjuntos, la probabilidad será 1 (ó 0) sin que 17
  • 20. haya probabilidad en el otro de los conjuntos. Nos interesa un clasificador que asigne probabilidades alejadas a los extremos (1 ó 0), porque ocurre que nos interesa que nuestro clasificador, cuando yerre por falta de información, falle por asignado probabilidades de positivo cercanas a 0,5 y no cercanas a los extremos Estudiando la información con la que tratamos, este es un caso que ocurre en algunas ocasiones, e influye negativamente en la clasificación de los tweets. Es por esto que se hace necesario trabajar con alguna otra probabilidad di- ferente, pero que recoja también la información que la frecuencia recuerde. La probabilidad que hemos probado, que solventa los problemas ante- riormente mencionados y arroja una mejor predicción es la probabilidad de Laplace suavizada o adición suavizada. La construcción de esta probabilidad viene dada por una composición en- tre la probabilidad de Laplace simple y la probabilidad uniforme. Es decir, combina el conocimiento de las frecuencias con una cierta indeterminación equiprobable de que la clasificación caiga en cualquiera de las posibles cate- gorías (en nuestro caso, 2, positivo o negativo). P(ngram|pos) = d + α N + ncatα (12) Donde: d: Número de veces que aparece en el conjunto positivo. N: Número de veces que aparece en los dos conjuntos. ncat: Número de categorías. α: Parámetro de suavizado En nuestro caso, vamos trabajar solo con dos categorías, luego ncat = 2. Si quisiéramos introducir otras categorías más, aumentaríamos ese número. Comparando estas dos probabilidades para distintos textos de tweets, co- mo explicaremos en el apartado 4, la tasa de acierto (el cociente entre las veces que el algoritmo acierta entre el total de casos) es la misma usando (12) que (10). 18
  • 21. 4. Resultados Se ha entrenado el clasificador bayesiano ingenuo (7) y el clasificador de indicador reputacional (9) con el test de entrenamiento de aproximadamente 4000 tweets, balanceado 50 − 50 y 38000 features. Los textos de estos, como se ha indicado en apartados anteriores, han sido divididos en n-gramas, al- macenando también las frecuencias para construir las probabilidades. 4.1. Ejemplos de tweets Tenemos el texto de un tweet positivo: ‘CaixaBank pone en marcha su oficina de representación en Sudáfrica para apoyar los proyectos empresariales’ Podemos dividirlo en unigramas, bigramas y trigramas. Aplicando el pro- ceso de eliminación de stopwords y de stemming, los n-gramas quedan de la siguiente forma: ‘caixabank’, ‘reconoc’, ‘compromis’, ‘conciliacion’, ‘laboral’, ‘famili’, ‘cai- xabank reconoc’, ‘reconoc por’, ‘por su’, ‘su compromis’, ‘compromis con’, ‘con la’, ‘la conciliacion’, ‘conciliacion laboral’, ‘laboral y’, ‘y famili’, ‘caixa- bank reconoc por’, ‘reconoc por su’, ‘por su compromis’, ‘su compromis con’, ‘compromis con la’, ‘con la conciliacion’, ‘la conciliacion laboral’, ‘concilia- cion laboral y’, ‘laboral y famili’ Para nuestro clasificador por indicador reputacional, le otorga una proba- bilidad de positivo de P = 0,7894, y para nuestro clasificador por bayesiano ingenuo, P = 0,9999. Vemos otros textos diferentes: Texto: ‘Esta semana Caixabank ha concedido una ayuda a la ONG Te toca Actuar para la compra de materiales’ PNB = 0,9999 PI = 0,6684 Texto: ‘CaixaBank, reconocida por su compromiso con la conciliación la- boral y familiar’ PNB = 0,3489 19
  • 22. PI = 0,4977 Este tweet en particular es un ejemplo claro de por qué queremos un clasificador que no asigne probabilidad cercana a los extremos. No es lo mismo que se haya confundido el tweet anterior como ‘negativo’ con P 0,5 que con P 0,35 4.2. Tasa de acierto Se han usado los clasificadores para valorar el set set 100ac. Se ha compa- rado los valores que los clasificadores otorgan frente a los reales (el set 100ac ha sido valorado a mano, y se considerna estos valores como buenos). Clasificadores/Acierto Acierto (set test) Acierto (set entrenamiento) Bayesiano ingenuo 0.790 0.990 Métrica reputacional 0.715 0.995 Cuadro 1: Comparación de la tasa de acierto frente a los distintos clasifica- dores 4.3. Curva ROC La curva ROC (Receiver Operating Characteristic o Característica Ope- rativa del Receptor) es una técnica para visualizar, organizar y seleccionar clasificadores basados en comparación de dos características operativas (la tasa de verdaderos positivos, TPR, y la tasa de falsos positivos) conforme el umbral discriminante cambia [14]. El área bajo esta curva representa la pro- babilidad de que un caso que el clasificador haya categorizado como positivo, efectivamente, sea realmente positivo [15]. Se han construido la curva ROC usando la librería scikit-learn de Python [16]. Los datos usados son los mismos que en el apartado anterior, sobre las probabilidades que arrojan los dos clasificadores sobre los sets set de test y de entrenamiento. El área bajo la curva (Area Under Curve) de los dos sets se incluye en la leyenda. 20
  • 23. Figura 1: Curva ROC del clasificador bayesiano ingenuo Figura 2: Curva ROC del clasificador de métrica reputacional 21
  • 24. 5. Conclusiones Tras los resultados expuestos en el apartado 4, para nuestro objetivo (diseñar un clasificador de texto orientado al riesgo reputacional) es mejor apostar por la métrica reputacional (9). Aunque basada en la hipótesis de in- dependencia de las variables predictoras (features), su tasa de acierto y área bajo la curva es mayor que en el clasificador bayesiano ingenuo (7), usando el mismo set de entrenamiento. El campo recién explorado del análisis de sentimiento en redes sociales abre varias puertas para ser explorado. Por ejemplo, el hecho de trabajar con variables predictoras no necesariamente se limita a tratar con n-gramas. En- tre esas variables predictoras, por ejemplo, además de n-gramas se podrían incluir como variables los usuarios, los hashtags, las páginas de noticias que se tweetean, etc. Durante la selección del corpus, se han podido discernir cuatro temáticas en las cuales se podría dividir: 1. noticias 2. económico 3. promoción 4. social/otros Esto podría ser motivación para probar un algoritmo de clasificación no supervisionada, pero debido por problemas de tiempo y de tamaño del set de entrenamiento, no se ha seguido esta línea de trabajo. Por otra parte, es criticable usar la hipótesis de independencia (6) cuando hablamos de texto, pues las frases tienen un orden gramatical. Sin embargo, esta hipótesis nos permite trabajar con soltura y rapidez sin por ello conseguir malos resultados. Se ha intentado preservar esta información del ‘orden’ a través de los n-gramas. También se podrían tener en cuenta también otros clasificadores que si otorgasen información sobre el orden, como los árboles de decisión. 22
  • 25. Referencias [1] European Banking Authority. Article 107 (3) of directive 2013/36/eu council regulation (EU) no 269/2014. [2] Bo Pang and Lillian Lee. Seeing stars: Exploiting class relationships for sentiment categorization with respect to rating scales. In Proceedings of the 43rd annual meeting on association for computational linguistics, pages 115–124. Association for Computational Linguistics, 2005. [3] Julian Brooke, Milan Tofiloski, and Maite Taboada. Cross-linguistic sentiment analysis: From english to spanish. In RANLP, pages 50–54, 2009. [4] Chantal Pérez Hernández. Explotación de los córpora textuales infor- matizados para la creación de bases de datos terminológicas basadas en el conocimiento. Estudios de lingüística del español, (18):1, 2002. [5] Twitter. Preguntas frecuentes para usuarios nuevos. [6] Ron Kohavi and Foster Provost. Glossary of terms. Machine Learning, 30(2-3):271–274, 1998. [7] Mehryar Mohri, Afshin Rostamizadeh, and Ameet Talwalkar. Founda- tions of machine learning. MIT press, 2012. [8] Walter Daelemans and Antal Van den Bosch. Memory-based language processing. Cambridge University Press, 2005. [9] Iris Hendrickx and Antal Van Den Bosch. Hybrid algorithms with instance-based classification. In European Conference on Machine Lear- ning, pages 158–169. Springer, 2005. [10] Tom M Mitchell. Machine learning. 1997. Burr Ridge, IL: McGraw Hill, 45:37, 1997. [11] Alexander Pak and Patrick Paroubek. Twitter as a corpus for sentiment analysis and opinion mining. In LREc, volume 10, pages 1320–1326, 2010. [12] David J Hand and Keming Yu. Idiot’s bayes. International statistical review, 69(3):385–398, 2001. [13] Steven Bird. Nltk: the natural language toolkit. In Proceedings of the COLING/ACL on Interactive presentation sessions, pages 69–72. Asso- ciation for Computational Linguistics, 2006. 23
  • 26. [14] John A Swets. Signal detection theory and ROC analysis in psychology and diagnostics: Collected papers. Psychology Press, 2014. [15] Andrew P Bradley. The use of the area under the roc curve in the eva- luation of machine learning algorithms. Pattern recognition, 30(7):1145– 1159, 1997. [16] F. Pedregosa, G. Varoquaux, A. Gramfort, V. Michel, B. Thirion, O. Gri- sel, M. Blondel, P. Prettenhofer, R. Weiss, V. Dubourg, J. Vanderplas, A. Passos, D. Cournapeau, M. Brucher, M. Perrot, and E. Duchesnay. Scikit-learn: Machine learning in Python. Journal of Machine Learning Research, 12:2825–2830, 2011. 24