Mostrando entradas con la etiqueta redes ilegales. Mostrar todas las entradas
Mostrando entradas con la etiqueta redes ilegales. Mostrar todas las entradas

domingo, 18 de marzo de 2018

Informante revela uso de 50 millones de perfiles de Facebook para campaña electoral en USA


El CEO de Cambridge Analytica Alexander Nix habla en la Cumbre Concordia 2016 - Día 1 en Grand Hyatt New York el 19 de septiembre de 2016 en la ciudad de Nueva York. Bryan Bedder vía Getty Images

Revelado: 50 millones de perfiles de Facebook cosechados para Cambridge Analytica en violación de datos importantes

Delator describe cómo la empresa vinculada al ex asesor de Trump, Steve Bannon compiló los datos de los usuarios para apuntar a los votantes estadounidenses

• Cómo los algoritmos de Cambridge Analytica convirtieron los "me gusta" en una herramienta política

Carole Cadwalladr y Emma Graham-Harrison | The Guardian



Denunciante de Cambridge Analytica: 'Gastamos $ 1m recolectando millones de perfiles de Facebook' - video

La firma analítica de datos que trabajó con el equipo electoral de Donald Trump y la ganadora campaña Brexit recolectó millones de perfiles de Facebook de votantes estadounidenses, en una de las infracciones de datos más grandes del gigante tecnológico, y los usó para construir un poderoso programa de software para predecir e influir en las elecciones en las urnas.

Un denunciante ha revelado al observador cómo Cambridge Analytica - una empresa propiedad del multimillonario de fondos de cobertura Robert Mercer, y encabezada en ese momento por el asesor clave de Trump, Steve Bannon - usó información personal tomada sin autorización a principios de 2014 para construir un sistema que pudiera perfilarse votantes estadounidenses individuales, con el fin de dirigirlos a ellos con publicidades políticas personalizadas.


Christopher Wylie, el alcahuete de Cambridge Analytica

Christopher Wylie, que trabajó con un académico de la Universidad de Cambridge para obtener los datos, le dijo al observador: "Aprovechamos Facebook para recolectar millones de perfiles de personas. Y construyó modelos para explotar lo que sabíamos acerca de ellos y apuntar a sus demonios internos. Esa fue la base sobre la que se basó toda la compañía ".

Los documentos vistos por el Observer, y confirmados por una declaración de Facebook, muestran que a fines de 2015 la compañía había descubierto que la información se había recolectado a una escala sin precedentes. Sin embargo, en ese momento no alertó a los usuarios y tomó solo medidas limitadas para recuperar y proteger la información privada de más de 50 millones de personas.

Perfiles
Cambridge Analytica: los jugadores clave

Alexander Nix, CEO
Antiguo Etoniano de la Universidad de Manchester, Nix, de 42 años, trabajó como analista financiero en México y el Reino Unido antes de unirse a SCL, una empresa de comunicaciones estratégicas, en 2003. Desde 2007 asumió la división de elecciones de la compañía, y afirma tener trabajó en 260 campañas a nivel mundial. Estableció Cambridge Analytica para trabajar en Estados Unidos, con la inversión de Robert Mercer.
Aleksandr Kogan, minero de datos
Aleksandr Kogan nació en Moldavia y vivió en Moscú hasta la edad de siete años, luego se mudó con su familia a los Estados Unidos, donde se convirtió en ciudadano naturalizado. Estudió en la Universidad de California, Berkeley, y obtuvo su doctorado en la Universidad de Hong Kong antes de unirse a Cambridge como profesor de psicología y experto en psicometría de redes sociales. Estableció Global Science Research (GSR) para llevar a cabo la investigación de datos de CA. Mientras estuvo en Cambridge, aceptó un puesto en la Universidad Estatal de San Petersburgo y también recibió becas del gobierno ruso para investigación. Cambió su nombre a Spectre cuando se casó, pero luego volvió a Kogan.
Steve Bannon, ex miembro de la junta
Un ex banquero de inversión convertido en un svengali de medios "alt-right", Steve Bannon era el jefe del sitio web Breitbart cuando conoció a Christopher Wylie y Nix y aconsejó a Robert Mercer que invierta en investigación de datos políticos estableciendo CA. En agosto de 2016 se convirtió en el CEO de campaña de Donald Trump. Bannon alentó a la estrella de televisión a adoptar la agenda "populista, nacionalista económico" que lo llevaría a la Casa Blanca. Eso le valió a Bannon el puesto de estratega jefe del presidente y durante un tiempo fue posiblemente el segundo hombre más poderoso de Estados Unidos. Para agosto de 2017, su relación con Trump se había agriado y él estaba fuera.
Robert Mercer, inversor
Robert Mercer, de 71 años, es un informático y multimillonario de fondos de cobertura, que usó su fortuna para convertirse en uno de los hombres más influyentes en la política estadounidense como uno de los principales donantes republicanos. Un experto en inteligencia artificial, hizo una fortuna con los pioneros en comercio cuantitativo Renaissance Technologies, y luego construyó un cofre de guerra de 60 millones de dólares para respaldar causas conservadoras mediante el uso de un vehículo de inversión offshore para evitar los impuestos estadounidenses.
Rebekah Mercer, inversionista
Rebekah Mercer es matemática de Stanford y trabajó como comerciante, pero su influencia proviene principalmente de los miles de millones de su padre. El cuarenta y tantos, la segunda de las tres hijas de Mercer, encabeza la fundación familiar que canaliza el dinero a los grupos de derecha. Los mega-donantes conservadores respaldaron a Breitbart, Bannon y, más influyente, invirtieron millones en la campaña presidencial de Trump.

The New York Times informa que todavía se pueden encontrar copias de los datos recopilados para Cambridge Analytica en línea; su equipo de informes había visto algunos de los datos sin procesar.

Los datos fueron recolectados a través de una aplicación llamada thisisyourdigitallife, construida por el académico Aleksandr Kogan, separada de su trabajo en la Universidad de Cambridge. A través de su empresa Global Science Research (GSR), en colaboración con Cambridge Analytica, se les pagó a cientos de miles de usuarios para que realicen una prueba de personalidad y acordaron que se recopilaran sus datos para uso académico.

Sin embargo, la aplicación también recopiló la información de los amigos de Facebook de los candidatos, lo que llevó a la acumulación de un grupo de datos de decenas de millones de personas. La "política de plataforma" de Facebook permitió solo la recopilación de datos de amigos para mejorar la experiencia del usuario en la aplicación y prohibió su venta o uso para publicidad. El descubrimiento de la recolección de datos sin precedentes, y el uso que se le dio, plantea nuevas preguntas urgentes sobre el papel de Facebook en la selección de votantes en las elecciones presidenciales de Estados Unidos. Se produce solo semanas después de las acusaciones de 13 rusos formuladas por el asesor especial Robert Mueller, que afirmaba que habían utilizado la plataforma para perpetrar una "guerra de información" contra los EE. UU.

Cambridge Analytica y Facebook son un foco de una investigación sobre datos y política realizada por la Oficina del Comisionado de Información británico. Por otro lado, la Comisión Electoral también está investigando qué papel desempeñó Cambridge Analytica en el referéndum de la UE.

"Estamos investigando las circunstancias en que los datos de Facebook pueden haber sido adquiridos y utilizados ilegalmente", dijo la comisionada de información Elizabeth Denham. "Es parte de nuestra investigación en curso sobre el uso de análisis de datos para fines políticos que se inició para considerar cómo los partidos políticos y las campañas, las empresas de análisis de datos y las plataformas de redes sociales en el Reino Unido están utilizando y analizando información personal de las personas para micro-segmentar a los votantes. "

El viernes, cuatro días después, The Observer buscó comentarios para esta historia, pero más de dos años después de que se informara la violación de datos, Facebook anunció que suspendería Cambridge Analytica y Kogan de la plataforma, a la espera de más información sobre el uso indebido de datos. Por otra parte, los abogados externos de Facebook advirtieron al observador que estaba haciendo acusaciones "falsas y difamatorias", y se reservaron la posición legal de Facebook.



Consejero clave de Trump Steve Bannon 

Las revelaciones provocaron una indignación generalizada. La fiscal general de Massachusetts, Maura Healey, anunció que el estado lanzaría una investigación. "Los residentes merecen respuestas inmediatamente de Facebook y Cambridge Analytica", dijo en Twitter.

El senador demócrata Mark Warner dijo que la recolección de datos en una escala tan amplia para la focalización política subrayó la necesidad de que el Congreso mejore los controles. Ha propuesto una Ley de anuncios honestos para regular la publicidad política en línea de la misma manera que la televisión, la radio y la prensa. "Esta historia es más evidencia de que el mercado de publicidad política en línea es esencialmente el Salvaje Oeste. Ya sea que les permita a los rusos comprar avisos políticos, o una amplia microtelevisión basada en datos de usuarios mal comprados, está claro que, si no se regula, este mercado seguirá siendo propenso al engaño y carente de transparencia ", dijo.

El mes pasado, tanto Facebook como el CEO de Cambridge Analytica, Alexander Nix, dijeron en una investigación parlamentaria sobre noticias falsas: que la compañía no tenía ni usaba datos privados de Facebook.

Simon Milner, director de políticas del Reino Unido de Facebook, cuando se le preguntó si Cambridge Analytica tenía datos de Facebook, le dijo a los parlamentarios: "Pueden tener muchos datos, pero no serán datos de usuarios de Facebook". Pueden ser datos sobre personas que están en Facebook que se han reunido, pero no son datos que hemos proporcionado ".

El director ejecutivo de Cambridge Analytica, Alexander Nix, dijo a la consulta: "No trabajamos con datos de Facebook y no tenemos datos de Facebook".

Wylie, un experto en análisis de datos canadiense que trabajó con Cambridge Analytica y Kogan para diseñar e implementar el esquema, mostró un dosier de pruebas sobre el uso indebido de datos para el Observer que parece suscitar preguntas sobre su testimonio. Lo ha pasado a la unidad de ciberdelincuencia de la Agencia Nacional de Crimen y a la Oficina del Comisionado de Información. Incluye correos electrónicos, facturas, contratos y transferencias bancarias que revelan que más de 50 millones de perfiles, en su mayoría pertenecientes a votantes estadounidenses registrados, se obtuvieron del sitio en una de las mayores violaciones de datos de Facebook. Facebook el viernes dijo que también estaba suspendiendo a Wylie de acceder a la plataforma mientras llevaba a cabo su investigación, a pesar de su papel como delator.

En el momento de la violación de los datos, Wylie era un empleado de Cambridge Analytica, pero Facebook lo describió como que trabajaba para Eunoia Technologies, una empresa que creó por su cuenta después de dejar a su antiguo empleador a finales de 2014.

La evidencia que Wylie suministró a las autoridades del Reino Unido y los EE. UU. Incluye una carta de los propios abogados de Facebook que le enviaron en agosto de 2016, pidiéndole que destruya todos los datos que tenía recogidos por GSR, la empresa creada por Kogan para recolectar los perfiles.

¿Qué son los archivos de Cambridge Analytica?
Al trabajar con un informante que ayudó a configurar Cambridge Analytica, el Observer y Guardian han visto documentos y recopilado informes de testigos que levantan la tapa de la empresa de análisis de datos que ayudó a Donald Trump a la victoria. La compañía está siendo investigada en ambos lados del Atlántico. Es un tema clave en dos investigaciones en el Reino Unido - por la Comisión Electoral, sobre el posible papel de la empresa en el referéndum de la UE y la Oficina del Comisionado de Información, en análisis de datos con fines políticos - y uno en los EE. UU., Como parte de un abogado especial La investigación de Robert Mueller sobre la colusión entre Trump y Rusia.

Esa carta legal fue enviada varios meses después de que The Guardian informara por primera vez de la violación y días antes de que se anunciara oficialmente que Bannon estaba asumiendo el control como jefe de campaña de Trump y trayendo Cambridge Analytica con él.

"Debido a que estos datos se obtuvieron y usaron sin permiso, y debido a que GSR no estaba autorizado a compartirlos o venderlos, no se pueden usar legítimamente en el futuro y deben eliminarse inmediatamente", decía la carta.

Facebook no solicitó una respuesta cuando la carta inicialmente no recibió respuesta durante semanas porque Wylie estaba de viaje, y tampoco siguió con controles forenses en sus computadoras o almacenamiento, dijo.

"Eso para mí fue lo más sorprendente". Esperaron dos años y no hicieron absolutamente nada para verificar que los datos se borraron. Todo lo que me pidieron que hiciera fue marcar una casilla en un formulario y publicarlo nuevamente ".

Paul-Olivier Dehaye, especialista en protección de datos, quien encabezó los esfuerzos de investigación en el gigante tecnológico, dijo: "Facebook ha negado, negado y negado esto. Ha engañado a los parlamentarios y a los investigadores del Congreso y ha fallado en sus deberes de respetar la ley.

"Tiene la obligación legal de informar a reguladores e individuos sobre esta violación de datos, y no es así. Una y otra vez ha fallado ser abierto y transparente ".

Aprovechamos Facebook para cosechar millones de perfiles. Y construir modelos para explotar eso y apuntar a sus demonios internos
Christopher Wylie
La mayoría de los estados estadounidenses tienen leyes que requieren notificación en algunos casos de violación de datos, incluyendo California, donde se basa Facebook.

Facebook niega que la recolección de decenas de millones de perfiles por parte de GSR y Cambridge Analytica haya sido una violación de datos. Dijo en un comunicado que Kogan "obtuvo acceso a esta información de manera legítima y a través de los canales adecuados", pero "no acató nuestras reglas" porque transmitió la información a terceros.

Facebook dijo que retiró la aplicación en 2015 y exigió la certificación de todos los que tenían copias de que los datos habían sido destruidos, aunque la carta a Wylie no llegó hasta la segunda mitad de 2016. "Nos comprometemos a aplicar enérgicamente nuestras políticas para proteger la información de las personas . Tomaremos todos los pasos necesarios para garantizar que esto ocurra ", dijo en un comunicado Paul Grewal, vicepresidente de Facebook. La compañía ahora está investigando informes de que no se han eliminado todos los datos.

Kogan, que anteriormente no informó enlaces a una universidad rusa y tomó subvenciones rusas para investigación, tenía una licencia de Facebook para recopilar datos de perfil, pero solo para fines de investigación. Entonces cuando buscó información para la empresa comercial, estaba violando los términos de la compañía. Kogan sostiene que todo lo que hizo era legal, y dice que tenía una "relación de trabajo cercana" con Facebook, que le había otorgado permiso para sus aplicaciones.

Cómo se desarrolló la historia

The Observer ha visto un contrato con fecha del 4 de junio de 2014, que confirma que SCL, una filial de Cambridge Analytica, celebró un acuerdo comercial con GSR, totalmente basado en la recolección y el procesamiento de datos de Facebook. Cambridge Analytica gastó casi $ 1 millón en la recopilación de datos, lo que arrojó más de 50 millones de perfiles individuales que podrían combinarse con las listas electorales. A continuación, utilizó los resultados de las pruebas y los datos de Facebook para construir un algoritmo que podría analizar perfiles de Facebook individuales y determinar los rasgos de personalidad relacionados con el comportamiento electoral.

El algoritmo y la base de datos juntos constituyeron una poderosa herramienta política. Permitió una campaña para identificar posibles votantes indecisos y crear mensajes con más probabilidades de resonar.

"El producto final del conjunto de capacitación es la creación de un 'estándar de oro' para comprender la personalidad desde la información de perfil de Facebook", especifica el contrato. Promete crear una base de datos de 2 millones de perfiles "coincidentes", identificables y vinculados a los registros electorales, en 11 estados, pero con espacio para expandirse mucho más.

viernes, 23 de febrero de 2018

Usando métricas para detectar fraudes

Detección de fraude utilizando aprendizaje profundo (deep learning) en incrustaciones de grafos y métricas de topología

Graham Ganssle, Ph.D., P.G. || Expero

¿No estás usando grafos todavía? Si no, obviamente no has leído mis otras publicaciones en el blog. Ve a hacer eso, luego instala algo de bondad gráfica, luego regresa aquí. Te veo pronto.



De acuerdo, ahora que eres un experto en grafos, podemos continuar hablando sobre el título de este artículo. Como Andrew Ng señala en su conferencia sobre la aplicación de una función de pérdida de triplete, es común en la literatura de aprendizaje profundo que los títulos sean <dominio de interés> insertados en cualquiera de las secuencias "______ Net" o "Deep ______". En ese espíritu, iba a nombrar este papel Fraude neto o Fraude profundo, pero luego me di cuenta de que la publicación de una publicación de blog de la compañía sobre Fraude profundo probablemente no es la mejor comunicación.

Estoy divagando. Hablemos de detección de fraude.


Figura 1: Un grafo que incluye transacciones financieras corporativas regulares y transacciones financieras fraudulentas.

Lo que realmente queremos es predicción de fraude (y desde allí prevención de fraude), ¿verdad? Sí, pero eso está en una próxima publicación de blog. Hoy hablaremos de atribuir cierto comportamiento a priori a un objetivo de clase binaria, a saber, un objetivo de fraude / notfraud. Veremos dos formas de determinar si una determinada entidad ha realizado o no una actividad fraudulenta, primero utilizando incrustaciones de un grafo y, en segundo lugar, usando varias métricas de topología de un grafo.

Sé lo que estás pensando: si el fraude ya ha sido cometido, ¿a quién le importa? Según este artículo, a todos debería importarles. En 2015, afirma el autor, el costo del etiquetado de fraude falso positivo fue de 118 mil millones de dólares. Eso es mil millones. Con una "b". El costo de los casos reales de fraude fue de solo $ 9 mil millones. No me malinterpreten, nueve mil millones de smackeroos son bastantes, pero es solo el siete por ciento del total de dinero perdido. Etiquetar incorrectamente las transacciones como fraudulento vale tanto como construir una nueva estación espacial internacional. Todos los años. Entonces, sin más digresiones, permítanme mostrarles cómo ahorrar $ 118,000,000,000. (De nada)

Uso de incrustaciones de grafos: Fraude individual

Escenario número uno: desea aumentar la precisión de su herramienta de análisis de fraude de tarjetas de crédito. Primero organizaría sus datos en un grafo, creando instancias de nodos como clientes individuales y comerciantes con propiedades de nodo sobre sus historiales financieros. Construiría enlaces que representen transacciones financieras entre estas entidades con propiedades de nodo, como la marca de tiempo de la transacción y el importe pagado.

Ahora debe incrustar el grafo en un espacio dimensional inferior para que pueda usar un modelo simple para analizarlo. ¿Por qué no insertas directamente tu grafo en tu modelo? Porque las geometrías no son compatibles. Si te interesa la teoría de grafos o la geometría diferencial, léelo para comprender la última oración sobre geometrías. Para aquellos de nosotros que no están dentro de las teorías de graph thingys o different whosits, consideremos como un axioma que tenemos que insertar nuestro grafo.

Aquí hay un grafo con una seria necesidad de incrustación. Como se describió anteriormente, los nodos representan a las personas con tarjetas de crédito y a los comerciantes a quienes les cuelgan el plástico. Tenga en cuenta la compleja estructura tridimensional y la gran cantidad de enlaces, que representan las transacciones financieras.


Figura 2: un grafo antes de la incrustación. Los nodos son titulares de tarjetas de crédito y comerciantes. Los enlaces son transacciones financieras.

Las estrategias de inclusión abundan; algunos son más populares que otros por razones fuera del alcance de este artículo. Mostraré dos más comunes en la imagen siguiente, reducción de dimensionalidad por análisis de componente principal e incrustación espectral por descomposición de valores propios.


Figura 3: la incrustación bidimensional del grafo en la Figura 2. El algoritmo naranja fue PCA, el azul fue incrustación espectral.

Finalmente, estamos listos para construir un modelo. La codificación del grafo incrustado para modelar es tan simple como crear vectores de características a partir de los nodos ahora aplanados. Incluimos las propiedades de nodo (entidad) y enlace (transacción), pero también concatenamos la información de coordenadas incorporada de la imagen anterior. Luego construimos un vector objetivo (o matriz para un régimen objetivo de clase múltiple) de nuestras etiquetas conocidas, activamos nuestra GPU y lo vemos comer.


Uso de métricas de topología: fraude organizacional

Escenario número dos: desea descubrir las organizaciones de lavado de dinero de su base de datos de registros transaccionales. Este problema es un orden de magnitud más interesante que analizar registros transaccionales individuales; en lugar de buscar muestras discretas, estamos interesados ​​en analizar los anillos de interacción financiera. Este es el paradigma en el cual el grafo realmente brilla.

Echa un vistazo a la imagen a continuación. Es un conjunto de empresas que interactúan financieramente. Los colores son representativos de su "comunidad", determinada por un algoritmo de aprendizaje no supervisado. Esta discusión se está acercando peligrosamente al territorio de salsa secreta, así que lo dejo así. La pregunta es, ¿las empresas amarillas están haciendo negocios como de costumbre, o es esta comunidad amarilla realmente un anillo de lavado de dinero?


Figura 4: un grafo de empresas coloreadas por comunidad. ¿Las empresas amarillas en la parte inferior derecha son realmente frentes para un anillo de lavado de dinero?

Paso uno: Combine sus datos en la misma estructura de grafos definida en la sección anterior.

Paso dos: cree un algoritmo inteligente que extraiga subgrafos de interés (las comunidades de color en la imagen anterior) y calcule las métricas de topología para cada comunidad. "Métrica de topología" es un nombre elegante para las descripciones de la geometría del subgrafo en cuestión. Por ejemplo, una métrica de topología popular es number-of-edges; en el subgrafo amarillo tenemos 23 bordes. Existen muchas de estas métricas de topología, y calculamos varias docenas para cada subgrafo.

Paso tres: cree un vector de características de estas métricas de topología para cada subgrafo. Concatenar las propiedades del nodo en otro tipo de forma secreta. Una implementación de ejemplo de esto sería calcular las propiedades de nodo promedio de todos los nodos en el subgrafo.

Paso cuatro: construya un vector objetivo (o matriz para un régimen objetivo de clase múltiple) de nuestras etiquetas conocidas, active nuestra GPU y deje que se horneen.

Envuélvelo ya

Estas técnicas dependen en gran medida de qué tipos de datos están disponibles y la estructura de las entidades que describen estos datos. La implementación debe ser personalizada (o al menos apropiada para el pedido) para cada banco / agencia / investigador interesado en realizar este trabajo. Es probable que el uso de una solución estándar empeore el problema, pero cuando se diseñan e implementan correctamente, estas técnicas pueden ahorrar miles de millones de dólares por año.

PD Sintonícese la próxima semana para obtener una versión más sofisticada de este análisis utilizando una metodología kernelizado llamada Graph graph convolutional network.

P.P.S. La detección de fraude es un problema manejable sin grafo. ¿Desea encontrar estafadores sin volver a manipular su base de datos 100 PB en otro formato? No hay problema. Nosotros hacemos eso, también.

lunes, 26 de septiembre de 2016

ARS 101: Redes de narcos en Gephi

"Venta de drogas": Análisis de Redes con Gephi (Tutorial)

Ouseful,.info

A través de un vínculo de referencia Check Yo Self: 5 Things You Should Know About Data Science (Author Note) al criticar mapeo de tweets sin más análisis ( "Si estás haciendo grafos en Gephi de tweets, es probable que estés haciendo más análisis de marketing que análisis de ciencia de datos y corténla!. por favor. no lo puedo aguantar más. ... de qué sirve a alguien tener grafos de tweets y no hacerle análisis a ellos? "), me encontré con el blog [sin curso] Analytics Made Skeezy de John Foreman:

Analytics Made Skeezy es un blog falso. Cada post es parte de una narrativa más grande diseñada para enseñar una variedad de temas de análisis mientras se mantiene interesante. El uso de una sola narrativa me permite contrastar diferentes enfoques dentro del mismo mundo falso. Y en última instancia, eso es lo que este blog es acerca de: enseñar al lector cuándo usar ciertas herramientas analíticas.

Rebotando a través de ejemplos descritos en algunos de los puestos hasta la fecha, Even Wholesale Drug Dealers Can Use a Little Retargeting: Graphing, Clustering & Community Detection in Excel and Gephi no es sorprendente que me haya llamado la atención. Ese puesto se describe, en forma narrativa, cómo utilizar Excel para preparar y dar forma a un conjunto de datos para que pueda ser importado en Gephi como un archivo CSV de imitación y luego ejecutar a través de estadística de la modularidad de Gephi; el conjunto de datos aumentada clase modularidad puede ser exportado de los datos de laboratorio Gephi y re-presentado en Excel, con lo cual el uso juicioso de la columna de clasificación y formato condicional se usa para tratar de generar algún tipo de conocimiento acerca de los racimos / grupos descubiertos en los datos - al parecer, "Gephi puede aspirar un poco por darnos ese tipo de visión a veces. Depende del grafo y lo que estamos tratando de hacer ". Y además:

Si usted tenía un gran conjunto de datos que se preparó en un grafo de vecinos más cercanos recortado, tener en cuenta que visualizándolo en Gephi es sólo por diversión. No es necesario para la penetración real, independientemente de lo que los montones de presentaciones de tweets-extensión-como se visualiza-en-Gephi podrían decirle (amordáceme). Sólo tiene que hacer la pieza de detección de la comunidad. Se puede utilizar para ese Gephi o las bibliotecas que utiliza. R y Python ambos tienen un paquete llamado igraph que hace estas cosas también. Lo que usted utiliza, sólo tiene que obtener las tareas de la comunidad de su gran base de datos para que pueda funcionar cosas como el análisis agregado sobre ellos a la inteligencia brotan de cada grupo.

No estoy necesariamente de acuerdo con la implicación de que a menudo necesitamos hacer algo más que mirar a cuadros bonitos en Gephi para dar sentido a un conjunto de datos; pero sí creo que también podemos utilizar Gephi de una manera activa para mantener una conversación con los datos, generando algún tipo de ideas preliminares a cabo sobre el conjunto de datos que entonces podemos explorar más a fondo el uso de otras técnicas analíticas. Entonces, ¿qué voy a tratar de hacer en el resto de este post es ofrecer algunas sugerencias acerca de una o dos maneras en las que podríamos utilizar Gephi para comenzar a conversar con el mismo conjunto de datos descrito en el puesto Narcotraficante Cambio de destino. Antes de hacerlo, sin embargo, le sugiero que lea el post original y tratar de llegar a algunas de sus propias conclusiones acerca de lo que los datos podrían estar diciéndonos ...

...

¿Listo? En resumen, el conjunto de datos original ( "Inventario") es una lista de "ofertas", con columnas relativas a los dos tipos de cosas: 1) cualidad de un acuerdo; 2) una columna por un distribuidor que señala si ellos tomaron ese trato. entonces se genera una matriz de cliente / cliente y el coseno similitud entre cada cliente calculado (nota: otras métricas de distancia están disponibles ...) indicando la medida en la que participó en acuerdos similares. La selección de los tres vecinos más similares a los de cada cliente crea un "grafo de vecinos más próximos recortado", que se munged en un formato de datos CSV-parecida a la Gephi puede importar. Gephi se utiliza entonces para hacer un análisis visual muy rápida / superficial (y con descuento), y ejecutar el algoritmo de detección de la modularidad / agrupación.

Entonces, ¿cómo iba yo he atacado este conjunto de datos (Nota: IANADS (no soy un científico de datos ;-)

Una forma sería tratarlo desde el principio como definir un grafo en el que los distribuidores están conectados a los oficios. Utilizando una versión ligeramente ordenado de la ficha de inventario 'del conjunto de datos original en el que me quita la primera filas (metadatos) y la última (totales), y ajustado uno de los nombres de columna para eliminar los corchetes (no creo que le gusta Gephi soportes en los nombres de atributo?), he utilizado la siguiente secuencia de comandos para generar una versión GraphML con formato de sólo un grafo de este tipo.

.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#Python script to generate GraphML file
import csv
#We're going to use the really handy networkx graph library: easy_install networkx
import networkx as nx
import urllib
#Create a directed graph object
DG=nx.DiGraph()
#Open data file in universal newline mode
reader=csv.DictReader(open("inventory.csv","rU"))
#Define a variable to act as a deal node ID counter
dcid=0
#The graph is a bimodal/bipartite graph containing two sorts of node - deals and customers
#An identifier is minted for each row, identifying the deal
#Deal attributes are used to annotate deal nodes
#Identify columns used to annotate nodes taking string values
nodeColsStr=['Offer date', 'Product', 'Origin', 'Ready for use']
#Identify columns used to annotate nodes taking numeric values
nodeColsInt=['Minimum Qty kg', 'Discount']
#The customers are treated as nodes in their own right, rather than as deal attributes
#Identify columns used to identify customers - each of these will define a customer node
customerCols=['Smith', 'Johnson', 'Williams', 'Brown', 'Jones', 'Miller', 'Davis', 'Garcia', 'Rodriguez', 'Wilson', 'Martinez', 'Anderson', 'Taylor', 'Thomas', 'Hernandez', 'Moore', 'Martin', 'Jackson', 'Thompson', 'White' ,'Lopez', 'Lee', 'Gonzalez','Harris', 'Clark', 'Lewis', 'Robinson', 'Walker', 'Perez', 'Hall', 'Young', 'Allen', 'Sanchez', 'Wright', 'King', 'Scott','Green','Baker', 'Adams', 'Nelson','Hill', 'Ramirez', 'Campbell', 'Mitchell', 'Roberts', 'Carter', 'Phillips', 'Evans', 'Turner', 'Torres', 'Parker', 'Collins', 'Edwards', 'Stewart', 'Flores', 'Morris', 'Nguyen', 'Murphy', 'Rivera', 'Cook', 'Rogers', 'Morgan', 'Peterson', 'Cooper', 'Reed', 'Bailey', 'Bell', 'Gomez', 'Kelly', 'Howard', 'Ward', 'Cox', 'Diaz', 'Richardson', 'Wood', 'Watson', 'Brooks', 'Bennett', 'Gray', 'James', 'Reyes', 'Cruz', 'Hughes', 'Price', 'Myers', 'Long', 'Foster', 'Sanders', 'Ross', 'Morales', 'Powell', 'Sullivan', 'Russell', 'Ortiz', 'Jenkins', 'Gutierrez', 'Perry', 'Butler', 'Barnes', 'Fisher']
#Create a node for each customer, and classify it as a 'customer' node type
for customer in customerCols:
    DG.add_node(customer,typ="customer")
#Each row defines a deal
for row in reader:
    #Mint an ID for the deal
    dealID='deal'+str(dcid)
    #Add a node for the deal, and classify it as a 'deal' node type
    DG.add_node(dealID,typ='deal')
    #Annotate the deal node with string based deal attributes
    for deal in nodeColsStr:
        DG.node[dealID][deal]=row[deal]
    #Annotate the deal node with numeric based deal attributes
    for deal in nodeColsInt:
        DG.node[dealID][deal]=int(row[deal])
    #If the cell in a customer column is set to 1,
    ## draw an edge between that customer and the corresponding deal
    for customer in customerCols:
        if str(row[customer])=='1':
            DG.add_edge(dealID,customer)
    #Increment the node ID counter
    dcid=dcid+1
#write graph
nx.write_graphml(DG,"inventory.graphml")

El grafo que estamos generando (descarga .graphml) tiene una estructura básica que se ve algo como lo siguiente:



Lo que quiere decir, en este ejemplo cliente C1 efectúe un único acuerdo, D1; el cliente C2 participó en cada trato, D1, D2 y D3; y el cliente C3 participó de ofertas D2 y D3.

Al abrir el archivo grafo en Gephi como un grafo dirigido, se obtiene un recuento del número de operaciones reales existían a partir del recuento de enlaces:



Si se corre la estadística media de grado, podemos ver que hay algunos nodos que no están conectados a otros nodos (es decir, que son o bien se ocupa de ningún comprador o clientes que nunca han participado en un trato):



Podemos ver estos nodos utilizando un filtro:



También podemos utilizar el filtro para otro lado, para excluir las ofertas no aceptadas, y luego crear un nuevo espacio de trabajo que contiene sólo las ofertas que fueron tomados, y los clientes que compraron en ellos:



El selector de espacio de trabajo es en la parte inferior de la ventana, en el lado derecho:



(Hmmm ... por alguna razón, el grafo no filtrado se exporta para mí ... todo el grafo era. Un error? Toqueteando con filtro de Componente Gigante, a continuación, exportar, a continuación, ejecutar el filtro de componentes gigante en el grafo exportado y cancelación parecía fijar cosas ... pero algo no está funcionando bien?)

Ahora podemos empezar a probar algunos análisis visual interactiva. En primer lugar, vamos a exponer los nodos utilizando un algoritmo de diseño fuerza dirigida (ForceAtlas2) que trata de situar los nodos de manera que los nodos que están conectados están situados cerca uno del otro, y los nodos que no están conectados se mantienen separados (imaginar cada nodo como tratando de repeler a los otros nodos, con los enlaces tratando de tirar de ellos juntos).



Nuestra percepción visual es muy bueno para la identificación de las agrupaciones espaciales (véase, por ejemplo, los principios de la Gestalt, que conducen a muchos un truco de diseño y un cubo de pistas sobre cómo se burlan de datos, con exclusión de una manera visualmente significativa ...), pero ¿son realmente significativo ?

En este punto de la conversación que estamos teniendo con los datos, probablemente me llamo en una estadística que trata de colocar grupos de nodos conectados en grupos separados de modo que pudiera colorear los nodos en función de su pertenencia a un grupo: la estadística de modularidad:



La estadística de la modularidad es un algoritmo aleatorio, por lo que puede obtener diferentes (aunque muy similares) resulta cada vez que lo ejecute. En este caso, se descubrió seis agrupaciones o grupos de nodos interconectados posibles (a menudo, un grupo es una miscelánea ...). Podemos ver qué grupo cada nodo era lugar en aplicando una coloración de reparto



Vemos cómo las agrupaciones modularidad ampliamente mapa en que las agrupaciones visuales revelados por el algoritmo de diseño ForceAtlas2. Pero los grupos se refieren a algo significativo? ¿Qué pasa si nos volvemos las etiquetas de?



El grupo verde parece referirse a operaciones de malezas, los rojos son X, metanfetamina y ketamina ofertas, y amarillo para las cabezas de coque. Así que las ofertas no parecen agruparse en torno a diferentes tipos de trato.

Entonces, ¿qué más podríamos ser capaces de aprender? ¿La dimensión de manera operacional en un acuerdo por separado a cabo en todos los nodos (nulos en esta dimensión se relaciona con los clientes)?



Tendríamos que saber un poco más acerca de cuáles podrían ser las consecuencias de "listo para el uso", pero a simple vista nos dan una sensación al del cluster en el extremo izquierdo está dominado por las operaciones con un gran número de clientes (hay un montón de blancos nodos / cliente) y el cluster relacionados Coca-Cola de la derecha tiene un buen número de oficios (los nodos verdes) que no están listos para su uso. (Una pregunta que viene a la mente mirando esa área es: ¿existen clientes que parecen ir a por no listo para su uso oficios, y lo que podría decirnos esto sobre ellos si es así?)

Otra cosa que podríamos mirar a es el tamaño de las operaciones, así como cualquier descuento asociados. Coloreemos los nodos utilizando la herramienta de partición de acuerdo con el tipo de nodo (nombre de atributo es "típico" - nodos son ofertas (rojo) o clientes (aqua)) y luego el tamaño de los nodos de acuerdo para hacer frente a tamaño utilizando la pantalla de clasificación:



Las ofertas "fritas" pequeñas en el grupo de la mano izquierda. Mirando de nuevo a la agrupación de Coca-Cola, donde hay una mezcla de ofertas de pequeñas y grandes, otra pregunta que podríamos presentar distancia se encuentra "son los clientes que optan por allí, ya sea para los comercios grandes o pequeños?"

Volvamos al color original (a través de la partición La modularidad de color, tenga en cuenta que la asignación aleatoria de colores podría cambiar a partir del conjunto color original; botón derecho del ratón que permite volver a asignar al azar a los colores; al hacer clic en un cuadrado de color le permite color Seleccione por mano) y el tamaño de los nodos de grado de salida (es decir, la suma total de los enlaces salientes de un nodo - recuerde, el grafo se describió como un grafo dirigido, con los enlaces que van desde las transas a los clientes):



entonces he dimensionado las etiquetas para que sean proporcionales al tamaño de los nodos:






El tamaño nodo / etiqueta muestra que se ocupa tenían un montón de compradores. De calibrado por el grado de salida muestra el número de ofertas de cada cliente participó en:



Esta es una visión bastante desordenado ... volviendo al panel Diseño, podemos usar el diseño de expansión para estirarse todo el diseño, así como la Etiqueta ajusta la herramienta para sacudir nodos de modo que las etiquetas no se superponen. Observe que también puede hacer clic en un nodo para arrastrarlo por, o un grupo de nodos mediante el aumento de la "campo de visión" del cursor del ratón:



Así es como me rearmé el diseño mediante la ampliación de la disposición después ajustando las etiquetas ...:



(Una de las cosas que podría estar tentado a hacer es filtrar los usuarios que sólo participan en uno o dos o ofertas, tal vez como un wau de la identificación de los clientes habituales, por supuesto, un usuario sólo puede participar en una sola, pero muy grande trato, así que tendríamos que pensar cuidadosamente acerca de lo que eran en realidad la pregunta pidiendo a la hora de hacer una elección. por ejemplo, también puede estar interesado en la búsqueda de clientes que realizan grandes operaciones poco frecuentes, lo que requeriría una estrategia de análisis diferente.)

En la medida en que va, esto no es realmente muy interesante - lo que podría ser más convincente sería datos en relación con quien trataba con quién, pero que no está disponible inmediatamente. Lo que debemos ser capaces de hacer, sin embargo, es ver lo que los clientes están relacionados en virtud de participar de las mismas ofertas, y ver qué ofertas están relacionados en virtud de haber tratado a los mismos clientes. Podemos quizá chico nosotros mismos pensando que podemos ver en el grafo cliente-acuerdo, pero podemos ser un poco más riguroso de dos en la construcción de dos nuevos grafos: uno que muestra enlaces entre ofertas que comparten uno o más clientes comunes; y uno que muestra enlaces entre clientes que comparten una o más de las mismas ofertas.



Recordando la grafo /bipartito / "bimodal" arriba:



Eso significa que debemos ser capaces de generar grafos unimodales a lo largo de las siguientes líneas:



D1 está conectado a través de D2 y D3 C2 cliente (es decir, existe un enlace entre D1 y D2, y otro enlace entre D1 y D3). D2 y D3 se unen entre sí a través de dos rutas, C2 y C3. Así podemos ponderar el enlace entre D2 y D3 de ser más pesado, o más importante, que el enlace entre ambos D1 y D2, D1 y D3 o.

¿Y para los clientes?



C1 está conectado a través de C2 acuerdo D1. C2 y C3 están conectados por un enlace ponderada más pesado que refleja el hecho de que ambos participaron en ofertas D2 y D3.

Usted se espera que sea capaz de imaginar cómo más complejos grafos de cliente-acuerdo podría colapsar en grafos al cliente en el cliente o el acuerdo de reparto donde hay grupos de clientes (u ofertas) basado en el hecho de que múltiples, desconectado (o sólo muy débilmente conectada) hay conjuntos de ofertas que no comparten ningún clientes comunes en absoluto, por ejemplo. (A modo de ejercicio, trate de dar con algunos grafos cliente-acuerdos y luego "colapso" a los grafos del cliente del cliente o contrato de acuerdo, que estén desconectados componentes.)

Entonces, ¿podemos generar grafos de este tipo utilizando Gephi? Bueno, da la casualidad que podamos, con la función de proyección multimodo Networks. Para empezar vamos a generar un par de espacios de trabajo que contienen el grafo original, menos las ofertas que no tenían clientes. Al seleccionar uno de estos espacios de trabajo, que ahora puede generar el grafo de acuerdo de reparto (vía común de los clientes) :



Cuando corremos la proyección, el grafo se proyecta sobre un grafo de oferta-oferta:



El espesor de los enlaces describe el número de clientes dos ofertas compartidos.

Si se corre la estadística de la modularidad sobre el grafo de acuerdos -acuerdos y el color del grafo por la partición de la modularidad, podemos ver cómo las ofertas se agrupan en virtud de tener clientes compartidos:



Si a continuación, vamos a filtrar el grafo de espesor en el enlace de manera que sólo se muestran los enlaces con un grosor de tres o más (tres clientes compartidos) podemos ver algunos cómo algunos de los tipos de trato mirada como si se agrupan en torno a determinadas comunidades sociales (es decir, se suministran a la misma serie de personas):



Si ahora vamos a la otra área de trabajo que hemos creado que contiene el grafo original (menos ofertas insatisfechas), podemos generar la proyección cliente-cliente:



Ejecutar la estadística de la modularidad y recolour:



Si bien hay mucho que decir para el mantenimiento de la disposición espacial de manera que podamos comparar las diferentes parcelas, podríamos tener la tentación de volver a ejecutar el algoritmo de diseño para ver si el que se destacan las asociaciones estructurales más claramente? En este caso, no hay mucha diferencia:



Si corremos el diámetro de la herramienta de red, podemos generar algunas estadísticas de red a través de esta red cliente-cliente:



Si ahora por tamaño los nodos de centralidad de intermediación, el tamaño de las etiquetas de los nodos proporcionales, y el uso de las herramientas de expandir / etiqueta de diseño de solapamiento de ajustar la pantalla, esto es lo que obtenemos:



Thompson parece ser un personaje interesante, que abarca los diversos grupos ... pero lo que en realidad está ofertas participando en? Si volvemos al grafo del cliente-acuerdo orignal, podemos utilizar un filtro para ver el ego:



Para buscar grupos sociales reales, podemos filtrar la red basada en el peso de enlace, por ejemplo, para mostrar sólo los enlaces por encima de un determinado peso (es decir, el número de ofertas compartidos), y luego dejar caer este conjunto en un nuevo espacio de trabajo. Si corremos el estadístico de Grado Medio, se puede calcular el grado de los nodos en este grafo, y el tamaño de los nodos en consecuencia. La retransmisión del grafo nos muestra algunas redes sociales corse basado en un número significativo de operaciones compartidas:



Esperemos que ahora que está empezando a "ver" cómo podemos empezar a tener una conversación visual con los datos, preguntas diferentes de la misma en base a cosas que estamos aprendiendo sobre él. Si bien es posible que tenga que mirar realmente a los números (y pestaña Laboratorio de Datos de Gephi nos permite hacer eso), me parece que la exploración visual puede proporcionar una forma rápida de orientación (orientador?) Usted mismo con respecto a un determinado conjunto de datos, y conseguir una sentir por el tipo de preguntas que pueden formularse de la misma, preguntas que bien podría implicar una consideración detallada de los mismos números reales. Pero para empezar, el recorrido visual a menudo funciona para mí ...

PS Hay un enlace al archivo de grafo de aquí, así que si quieres probar explorar por sí mismo, puede hacerlo :-)