El miércoles 26 de octubre de 2011 recogí en Madrid en el Aula Magna de la Universidad Pontificia Comillas el Premio al mejor artículo publicado en 2010 en la revista Novática por mi artículo «AVBOT: Detección y corrección de vandalismos en Wikipedia». ¡Muchas gracias a todos! En la foto aparecen, de izquierda a derecha: Joaquín Ayuso de Paúl (fundador de Tuenti.com); Mariano Ventosa Rodríguez (Director de la Escuela de Ingeniería ICAI-Comillas); Emilio José Rodriguez Posada (ganador de la V Edición del Premio Novática); Rafael Fernández Calvo (Presidente del Consejo Editorial de Novática); Llorenç Pagés Casas (Director de Novática). Puedes leer el artículo aquí |
El blog de AVBOT
No podemos erradicar el vandalismo, tan sólo podemos revertirlo
miércoles, 2 de noviembre de 2011
Premio al mejor artículo publicado en 2010 en la revista Novática
sábado, 8 de mayo de 2010
La poca creatividad de los vándalos
En este periodo, AVBOT intervino 29157 veces. Las 560 expresiones regulares que aparecen se dispararon al menos una vez en ese intervalo, y en total se activaron 39435 veces.
La más frecuente es p+[^a-z0-9]{,3}u+[^a-z0-9]{,3}t+[^a-z0-9]{,3}[ao]+[^a-z0-9]{,3}s* (puta y derivados) con un 8,2%. El 50% de los vandalismos revertidos por AVBOT queda cubierto con las 19 primeras expresiones regulares. El 75% con las 56 primeras. El 90% con las 149 primeras. El 95% con las 224 primeras. Y el 99% con las 375 primeras.
Como podeis comprobar, los vándalos no se caracterizan por tener una gran creatividad, de ahí que se dediquen a destruir en vez de a mejorar lo existente.
sábado, 3 de abril de 2010
Optimización y expansión a otros proyectos
Además, AVBOT está siendo probado en la versión inglesa de Wikipedia, y hay un usuario interesado en llevarlo a Wikipedia en portugués. Por todo ello, estoy haciendo algunos avances en cuanto a la versatilidad del código. Pero aun no está internacionalizado, ¡eso será más adelante!
Más información sobre todo esto en sucesivas entradas.
jueves, 11 de marzo de 2010
AVBOT in English
domingo, 14 de febrero de 2010
AVBOT ha alcanzado las 500.000 ediciones
Me gustaría incorporarle algunas mejoras, pero eso será cuando disponga de algo más de tiempo.
Actualización: Para ser justos, diré que ayer calculé el número exacto de intervenciones de AVBOT (reversiones de vandalismos, blanqueos y ediciones de prueba) y salió 197.000. Así que no llega a los 250.000 como dije, pero va de camino ;).
Actualización 2: Hoy, 18 de marzo de 2010, AVBOT ha superado a CEM-bot (ver diff), el bot de correcciones ortográficas, colocándose en el segundo puesto, sólo por detrás de "Muro Bot".
lunes, 11 de mayo de 2009
Premio Nacional al "Mejor proyecto comunitario"
La relación completa de premiados ha sido la siguiente:
- Mejor proyecto de innovación
- Primer premio: eOPSOA de David Castellanos Serrano de la Universidad de Castilla la Mancha
- Finalista: Cool Imaging de Luis Antonio González Jaime y Ricardo Juan Palma Durán de la Universidad de Granada
- Mejor proyecto de ocio y educación
- Mejor proyecto comunitario
- Primer premio: AVBOT de Emilio José Rodríguez Posada de la Universidad de Cádiz
- Finalista: The Digital Coach de Andoni Morales Alastruey de la Universidad Politécnica de Madrid
Además de los premios en metálico, los premiados se llevan una subscripción a la revista Linux Magazine y a la revista Novática.
Quisiera agradecer a la organización, participantes y patrocinadores, todo el esfuerzo llevado a cabo para sacar adelante esta nueva edición del concurso.
¡Muchas gracias a todos!
viernes, 24 de abril de 2009
Buscando nuevos patrones
Un ejemplo de estas listas es: Usuario:AVBOT/Reversiones humanas/2009/04/23
domingo, 19 de abril de 2009
Clones de AVBOT
Esto conduce a realizar una serie de mejoras, pues la ejecución a la par de varios clones puede llevar a errores (avisos duplicados por ejemplo), aunque este extremo ya parece estar solucionado con los últimos parches que he aplicado.
Ahora queda realizar algunas pequeñas mejoras más para que los clones no se entorpezcan, y Wikipedia en español sea una barrera infranqueable para los vándalos. ¡Que ya lo es!
lunes, 13 de abril de 2009
AVBOT en los medios de comunicación
- Un robot para corregir vandalismos en Wikipedia gana (la fase local del) Concurso Universitario de Software Libre (UCA.es)
- Un estudiante de la UCA crea un robot para corregir vandalismos en Wikipedia (La voz digital)
- Un estudiante de la UCA crea un robot que corrige vandalismos en la Wikipedia (La voz digital)
- Un gaditano crea un robot policía para la Wikipedia (Viva Cádiz)
- Premio para un estudiante de la UCA (ADN.es/Cádiz)
Tras ganar la fase nacional del III Concurso Universitario de Software Libre en la categoría de "Mejor proyecto de Comunidad", se hicieron eco en:
miércoles, 8 de abril de 2009
La sociología del vandalismo
Entre las gráficas más expresivas que he generado se encuentra la siguiente:
En ella se observan los vandalismos que se realizaron durante casi todo el año 2008. Se observan dos grandes caidas. La primera entorno a los meses de junio-julio-agosto, y la segunda ocupa diciembre de 2008 y enero de 2009.
No cuesta imaginar el motivo de los descensos. En junio-julio-agosto la gente del hemisferio norte se va a la playa (en el hemisterio sur es invierno y coincide con algún mes de vacaciones de colegio) y deja de vandalizar, a finales de año todo el mundo está más ocupado con las fiestas y las vacaciones de Navidad.
Las constantes subidas y bajadas son las semanas. Los valles son los fines de semana (en los que la gente también deja en paz a Wikipedia), y los picos son los miércoles, que debe ser cuando están más aburridos en el trabajo, supongo.
Tengo algunas gráficas más. Las iré poniendo más adelante.
lunes, 6 de abril de 2009
IRC vs API
La solución pasa por implementar la opción de capturar los cambios recientes a través de la API de MediaWiki. Esto me mantendrá ocupado los próximos días.
miércoles, 1 de abril de 2009
Microsoft cerrará Encarta antes de fin de año
Una parte del aviso deja entrever que es imposible competir contra otras formas de generar conocimiento que han conseguido gran popularidad en la red en los últimos años:
Why are these Encarta Web sites and software products being discontinued?
Encarta has been a popular product around the world for many years. However, the category of traditional encyclopedias and reference material has changed. People today seek and consume information in considerably different ways than in years past. As part of Microsoft’s goal to deliver the most effective and engaging resources for today’s consumer, it has made the decision to exit the Encarta business.
No son pocas las voces que proclaman a Wikipedia como victoriosa en esta batalla tácita por la difusión del conocimiento que se viene produciendo entre le enciclopedia libre y las enciclopedias de toda la vida. Por ejemplo, El País publica el siguiente titular "Microsoft se rinde ante la Wikipedia y cierra Encarta tras 16 años".
En la lista de correo de la Fundación Wikimedia han comentado la idea de solicitar la liberación de algunos contenidos de Encarta, para poder incorporarlos a Wikipedia.
Recordar que recientemente Google sacó un proyecto de generación de conocimiento llamado Knol, y que tampoco ha tenido mucho impacto.
miércoles, 18 de marzo de 2009
Fase local
viernes, 6 de marzo de 2009
Logros alcanzados
- Más de 5000 horas de trabajo.
- Funcionamiento ininterrumpido comprobado durante más de 7 días (del 26 de noviembre al 2 de diciembre). Lo que dice mucho de su estabilidad.
- Más de 200 mil ediciones hasta la fecha. En torno a la mitad de ellas han sido reparaciones a páginas, el resto avisos a usuarios.
- Tasa de acierto del 99,5% según datos de diciembre de 2008. Primero fue mejorado con las puntuaciones, posteriormente con los contrapesos.
- Ningún bloqueo por malfuncionamiento.
Dificultades superadas
Otro aspecto relevante es el precompilado de expresiones. Cada vez que era analizada una edición, había que pasar la lista de expresiones (varios cientos de ellas) sobre un texto que en algunas ocasiones era bastante extenso. Este proceso requería los siguientes pasos:
- Leer la expresión regular.
- Compilar la expresión regular.
- Pasar la expresión regular compilada al texto objetivo.
- Volver al paso 1 con la siguiente expresión.
miércoles, 4 de marzo de 2009
Proyecto Fin de Carrera
- Documentación: Memoria, Doxygen, manual de instalación, manual de usuario, diapositivas.
- Código fuente: Rediris, Google Code.
domingo, 22 de febrero de 2009
Alcance
Esto conlleva una serie de ventajas y desventajas. Por un lado el potencial de producción crece exponencialmente, ya que cualquier persona con un navegador web puede modicar los contenidos y mejorarlos. Por otro lado la cantidad de errores bienintencionados o de mala fe también crece.
Estas aportaciones no deseadas son, la mayoría de las veces, detectables fácilmente para un humano o un ordenador, ya que lo modicado resalta sobre lo demás por contener expresiones malsonantes o texto sin sentido. En otras ocasiones esta tarea se hace más compleja para un computador por no poder ser descrito mediante un patrón sencillo.
Existen muchas personas comprometidas con Wikipedia, y la mayoría de ellos controlan de manera altruista y voluntaria que nadie destruya los contenidos de la enciclopedia. Este esfuerzo podría dedicarse a la mejora o creación de nuevos artículos, en vez de a vigilar constantemente si los cambios producidos por usuarios nuevos o anónimos son malintencionados. Esto sería un gran benecio para la comunidad. Para ello puede desarrollarse un programa que haga esta tarea, al menos con las ediciones claramente destructivas.
El producto de este proyecto tiene por nombre AVBOT. Es el acrónimo de "AntiVandal BOT" (en español: "BOT AntiVándalos"). Este programa analizará las ediciones que se realicen en Wikipedia en español para buscar contribuciones maliciosas y las revertirá. AVBOT no podrá sustituir nunca a una persona, pues la capacidad de comprensión humana a la hora de leer un texto sobrepasa con creces la que pueda tener un programa de ordenador, aunque sí será de gran ayuda para revertir esos vandalismos repetitivos y monótonos.
domingo, 15 de febrero de 2009
Objetivos
- Lectura de los cambios que se producen en los artículos en tiempo real.
- Análisis y valoración de cada uno de los cambios capturados en el "objetivo 1".
- Tomar las acciones oportunas: actuar si el cambio es malicioso o dejarlo pasar si no supone peligro.
- Mantener un log de las acciones realizadas para su depuración en caso de error.
martes, 10 de febrero de 2009
Manual de instalación y usuario
viernes, 30 de enero de 2009
Actividad durante 2008 y AVBOT
¿No deberia AVBOT hacer todo el trabajo? ¿Es que el robot no es eficiente? Por desgracia no todas las ediciones inservibles son fácilmente indentificables por un robot. Muchísimas de las reversiones que realizan los usuarios registrados (línea amarilla) o los bibliotecarios (línea azul marino) son reparaciones a ediciones que contienen frases fuera de contexto, no neutrales, vandalismos muy especializados, errores de novatos, etc, las cuales no pueden ser ponderadas por un programa. Tratar que el bot repare esos casos llevaría a muchos falsos positivos y sería contraproducente.
Con anterioridad a marzo existía un programa (BOTpolicia) que hacía la misma función que AVBOT pero era menos eficiente (a penas alcanza las 200 reversiones/día). A partir de marzo y hasta fin de año se ve que AVBOT ha hecho casi 600 reversiones/día de media en los puntos más altos, aunque normalmente hace 300-400. Durante el periodo estival el número de vándalos desciende, por lo que el robot tiene menos trabajo. A mediados de agosto y a finales de octubre el robot estuvo parado por mantenimiento de ahí que caiga hasta cero (se observa que la línea amarilla crece vertiginosamente para paliar la ausencia del robot).
Las constantes subidas y bajadas (dientes de sierra) corresponden a la diferencia de actividad durante la semana (los miércoles son los máximos y los fines de semana los mínimos).
lunes, 22 de diciembre de 2008
Documentación con Doxygen
Es muy fácil de usar, en el caso de Python, se incluyen comentarios debajo de cada clase o método, y Doxygen recoge todos esos datos y genera unos ficheros HTML con toda la información. También es posible exportarlo a Latex.
En los próximos días seguiré documentando el código, y optimizándolo en la medida de mis posibilidades.
lunes, 15 de diciembre de 2008
Lista de exclusiones
El robot toma la lista de exclusiones instantes después de que alguien la modifique, ya que la mantiene bajo su control.
De esta forma se reducen los errores de actuación del programa, y no interfiere en páginas que no le atañen explícitamente.
miércoles, 26 de noviembre de 2008
Contestación de informes de error
¿Cómo es esto posible? Cuando una persona edita un artículo y el bot le revierte, hay dos posibilidades:
- La persona ha vandalizado el artículo y el bot está actuando correctamente revirtiéndole.
- La persona ha hecho una aportación legítima y el bot se ha equivocado al revertirle.
De vez en cuando la gente hace clic y me pone al corriente. No es muy frecuente pues el bot tiene un alto porcentaje de acierto, pero de vez cuando AVBOT falla, como todo en este mundo. La página donde se envian estos informes es Usuario:AVBOT/Errores.
Justo ahora estaba revisando los informes de los últimos días. A grosso modo me llegan entre 2 y 4 informes al día, y muchos de ellos son falsos, pues los vándalos no tienen bastante con destrozar el artículo, sino que luego se permiten el lujo de decir que el bot está funcionando mal, ¡cuando es incierto!
En fin, hay gente para todo.
sábado, 15 de noviembre de 2008
Cambio en el formato del "RSS"
Ya he arreglado la expresión regular que dejó de funcionar por el cambio inesperado, y AVBOT vuelve a comportarse con normalidad.
Expresión regular antes:
(?i)\[\[(?P<pageTitle>.*?)\]\] +(?P<nm>.*?) +http\://es\.wikipedia\.org/w/index\.php\?title\=.*?diff\=(?P<diff>\d+)\&oldid\=(?P<oldid>\d+) +\* +(?P<author>.*?) +\* +\(.*?\) +(?P<resume>.*)
Expresión regular después:
(?i)\[\[(?P<pageTitle>.*?)\]\] +(?P<nm>.*?) +http\://es\.wikipedia\.org/w/index\.php\?diff\=(?P<diff>\d+)\&oldid\=(?P<oldid>\d+) +\* +(?P<author>.*?) +\* +\(.*?\) +(?P<resume>.*)
Lo que sobraba está en rojo.
De todo esto me di cuenta porque hoy sólo estaba poniendo carteles de semiprotección, algo bastante extraño.
Debería avisar de alguna forma, no es la primera vez que cambian el formato del que se nutren no sólo mi bot, sino los de muchos otros programadores.