Hace 6 años | Por Calipodelimon a m.genbeta.com
Publicado hace 6 años por Calipodelimon a m.genbeta.com

Un algoritmo desarrollado en la Universidad de Cardiff previene revueltas sociales mucho más rápidamente que la policía.

Comentarios

D

#1 y Hannah Fry su nueva valedora:


#0 todo se lo debemos a esta ilustre doctora en mates

Capitan_Centollo

#1 Bueno, yo me pregunto: Si Twitter predice las revueltas y así se evita que estas se produzcan ¿Cómo sabemos que ha sido efectivamente Twitter lo que ha impedido que se produzca la revuelta? ¿Cómo medimos objetiva y empíricamente algo que nunca ha pasado?

Kalikrates

#26 Buena pregunta.
Imposible.

D

¿por cómo arde?

BodyOfCrime

#2 Ya sabes no hay fuego sin humo

D

#15 Y que por el humo se sabe donde esta el fuego

D

#16 Y que a quien madruga, buena sombra le cobija.

D

#24 Noooo!!
Y que del humo del cariño nacen los celos.
¡Ujum!

D

#12 Muy fino el hilao ese pero positivo lol

ﻞαʋιҽɾαẞ

También sirve para producir incendios.

D

El símbolo de twitter no debería ser un pajarito sino un borreguito...

D

#6 Loro, cacatura, soplón (cordero?) 8/

m

¿Previene o predice?

Penetrator

Tampoco hace falta ser muy listo para prevenir cosas más rápido que la policía.

D

Pues la de Rusia en 1917 no la vio venir.

MoneyTalks

Algunas medidas del gobierno, corrupción, rescates, paraísos fiscales, eléctricas, etc también sirve para predecir movimientos sociales.

D

No sé di predecirá revueltas, pero en comentar las columnas de Marías no le gana nadie.

fperez

El plugin perfecto para la ley mordaza.

D

Dodge this ! 😤


puto matrix

valoj

A mi no deja de sorprenderme la capacidad de la computación actual. A pesar de ello, os recuerdo que la enorme pregunta en computación sigue sin responderse y, si pudiera responderse, tendría enormes (de verdad, enormes) consecuencias. Es uno de los mayores problemas actuales: ¿P = NP?

Para los que no sepan de lo que hablo, trataré de explicarlo, tomándome varias licencias (aquellos que sepáis, no me crucifiqueis, no hablaré de subconjuntos, por ejemplo) para hacerlo más entendible:

¿Cualquier problema puede resolverse mediante computación? Pormenorizemos esta pregunta: Existen problemas que pueden resolverse en un tiempo Polinomial (de ahí la P), lo que es en definitva, un tiempo razonable en base a las variables presentes, pero hay otros que hoy en dia se consideran:

- Problemas indecidibles: son aquellos que, de acuerdo al conociemiento actual, no pueden alcanzar una solución jamás, dado que su complejidad supera a los algoritmos. Su solución, es inalcanzable por estos métodos.

- problemas intratables: aquellos cuya complejidad no los hace indecidibles, y por tanto tienen solución. Su problema es que el tiempo que se tardaría en alcanzar dicha solución es prohibitivo (podemos llegar a hablar incluso de millones de años). Se sabe que tienen solución, pero no existe computadora ni algoritmo que permita resolverlos en un tiempo "razonable".

Con esto presente, todos aquellos problemas que pueden resolverse en un tiempo razonable (Polinomial), se agrupan en la clase P. Aquellos problemas considerados intratables, no se pueden resolver en un tiempo polinomial (No Polinomial, de ahí NP).

La cuestión aquí, es que nadie ha podido demostrar que no exista un algoritmo Polinomial (resoluble, por tanto, en un tiempo polinomial), que pueda resolver un problema del tipo NP, según se considera hoy en dia. Si existiera, cosa que no se sabe, significaria que al final, incluso los problemas No Polinomiales, serían de hecho, Polinomiales. Luego P = NP.

Si P no fuera igual a NP, poco cambiaría. Pero si se demostara que efectivamente P = NP, eso tendria unas consecuencias a la altura de la invención de la electricidad, como poco. De entrada, la capacidad computacional aumentaría magnitudes y haria que, por ejemplo, ninguna cuenta bancaria fuera segura. Por otra parte, se produciría una eclosión de la computación que haria avanzar nuestra ciencia de golpe, y mucho.

D

#25 NP (for nondeterministic polynomial time) https://en.wikipedia.org/wiki/NP_(complexity)

Aparte: no venía a cuento.

D

#25 NP (for nondeterministic polynomial time) https://en.wikipedia.org/wiki/NP_(complexity)

Aparte: tu comentario no viene a cuento. Y contiene varios malentendidos.

valoj

#30 Cierto, esa no es mi área y seguro que tiene incongruencias y errores de bulto, como el que tu apuntas (no lo sabía). Te agradezco la respuesta.

Creo que viene a cuento, o almenos por eso lo he dicho aquí, porque no hay forma de que se sepa eso con Twitter sin computación. Y la computación, si ese problema se resolviera, seria capaz de muchas más cosas más allá de Twitter.

leumasmg

Bueno, da la casualidad de que este es mi campo de investigación. El método propuesto es considerablemente sencillo pero interesante (http://dl.acm.org/citation.cfm?id=2996183 del link dentro del artículo). Os resumo la parte técnica de lo que hacen por si tenéis curiosidad. Estoy seguro de que aquí más de uno y más de dos serían capaces de montar un sistema similar sin demasiado esfuerzo:

Primero se clasifican los tweets dividiéndolos en "pertinenetes para el estudio" y "no pertinentes". Separan la paja (chats personales, comentarios insustanciales) del grano (tweets que hablen de temas relacionados con protestas/disturbios). Para ello utilizan un clasificador tipo Naive Bayes, el más sencillo: http://scikit-learn.org/stable/modules/generated/sklearn.naive_bayes.MultinomialNB.html#sklearn.naive_bayes.MultinomialNB

Luego definen un conjunto de features de los tweets que les han parecido relevantes para el estudio, de manera que cada tweet queda caracterizado por un vector cada una de cuyas entradas es una feature que toma un valor particular para cada tweet (p.ej: coordenadas del tweet, número de menciones que recibe, número de hashtags, contenido del tweet...). Estos vectores sirven para agrupar los tweets por similitud mediante una medida que se llama cosine similarity: http://scikit-learn.org/stable/modules/generated/sklearn.metrics.pairwise.cosine_similarity.html

Una vez agrupados los tweets en varios grupos en función de sus vectores de características, se utiliza otro método para extraer las palabras más relevantes de cada grupo. Este método se basa en la medida tf-idf: http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.TfidfTransformer.html#sklearn.feature_extraction.text.TfidfTransformer

Ahora la parte más dudosa del asunto: para decidir si hay o no hay posibilidad de disturbios lo único que hacen es leer el resumen de las palabras más relevantes generado por el método anterior. Tienen una tabla en la que dicen "detectar" los disturbios antes que la policía porque los términos asociados a tal o cual evento les aparecerían en su sistema X tiempo antes de que la policía tuviese constancia del evento en si.

En resumen: usan un clasificador sencillo (https://es.wikipedia.org/wiki/Clasificador_bayesiano_ingenuo), una técnica más o menos novedosa para agrupar los tweets por tema basada en una medida de distancia muy conocida (https://es.wikipedia.org/wiki/Similitud_coseno) y extraen términos relevantes de cada grupo de tweets por medio de otra medida basada en una métrica también bastante conocida (https://es.wikipedia.org/wiki/Tf-idf). Luego leen los términos relevantes de cada grupo de tweets y deciden si hay posibilidad de revueltas.

D

En cuanto twiter prediga lo de las guillotinas y las plazas. Estamos perdidos!ç
@GuillotinasEnCadaPlazaYA

editado:
VARIAS!!! MUCHAS!!!

D

Malditos algoritmos primos hermanos del grafeno y la cura del Cancer semanal. Todas las semanas nos visitan.

c

Evitar amenazas? Revueltas ciudadanas? No thanks!

Karniv

Esto ya lo sabía, y me da igual... porqueYO no hago revueltas, que soy una persona DECENTE, y vivo (YO) muy tranquilo