Links concerning the Internet

  • Building a data culture: „self-service learning program to facilitate fun, creative introductions for the non-technical folks in your organization“
  • verwandt dazu: Data Playbook: „The Data Playbook (Beta) builds on social learning and modularized activities already developed to promote data literacy via workshops“
  • A manifesto for the Internet Age:

  • Immer wieder das gleiche Problem: Wer selbstlernende Algorithmen braucht, muss vorher Daten in guter Qualität haben. Bei der Gesichtserkennung heißt das: Viele, viele, viele Fotos mit Angaben zu Hautfarbe, Alter, Geschlecht und einer Menge anderer Eigenschaften. Und woher bekommen Firmen und Forscherinnen diese Bilder? Zum Beispiel durch Scrapen oder Bulk-Dateien der ehemaligen Foto-Plattform Flickr. Das hat zwei Probleme: Erstens ein Einbruch in die Privatssphäre. Zweitens können die Bilder dafür verwendet werden, Überwachungssoftware zu trainieren. Mehr: Facial recognition’s ‚dirty little secret‘: Millions of online photos scraped without consent

Die Zukunft suchen und nicht finden

Vorhersagen auf Basis von Berechnungen sind ein Spiel mit der Zeit.

Die Polizei ist auf einer Art Zeitreise. Sie will Verdächtige schon möglichst früh ausmachen – und das nicht nur im Flugverkehr. „Vor die Lage kommen“, nannte das der ehemalige BKA-Chef Jörg Ziercke.

Morgen ein Mörder

Und außerdem: Das Problem mit den Falsch-Positiven (SZ). Bei Prognose-Algorithmen kommt es nicht nur darauf an, welche Personen richtig erkannt werden, sondern auch darauf, welche Personen zu unrecht verdächtigt werden. Mathematisch nennt man diesen Fehler bei binären Entscheidungen (ja – nein, verdächtig, unverdächtig) die false-positve rate.

Bei der Gesichtserkennung am Berliner Bahnhof Südkreuz gibt die Polizei eine Falschtrefferrate von 0,1 Prozent an. Klingt wenig, die Zahl kleiner 1 führt aber in die Irre. In Wahrheit ist das ein unglaublich hoher, ein zu hoher Wert. Vanessa Wormer und Christian Endt rechnen das in der SZ vor:

  • Etwa 12 Millionen Bahnfahrer pro Tag
  • eine Falschpositivrate von 0,1 Prozent ergibt 12 000 unschuldig Verdächtige

Das ist das Problem an derartigen Systemen, die auf anlassloser Massenüberwachung fußen: Selbst bei sehr geringen Fehlerraten geraten ungleich viele Personen fälschlicherweise ins Visier der Fahnder.

Viele Daten, nix dahinter

Also, dieses Maschinelle Lernen ist ja überall. Aber ist es auch überall notwendig? Oder sind die Ergebnisse oftmals, nun ja, erwartbar. Und mit ein bisschen nachdenken und präzisen Algorithmen nicht mindestens genauso zu erreichen?

This is, by the way, the dirty secret of the machine learning movement: almost everything produced by ML could have been produced, more cheaply, using a very dumb heuristic you coded up by hand, because mostly the ML is trained by feeding it examples of what humans did while following a very dumb heuristic. There’s no magic here. If you use ML to teach a computer how to sort through resumes, it will recommend you interview people with male, white-sounding names, because it turns out that’s what your HR department already does. If you ask it what video a person like you wants to see next, it will recommend some political propaganda crap, because 50% of the time 90% of the people do watch that next, because they can’t help themselves, and that’s a pretty good success rate.

Das Zitat stammt aus einem Blogpost der Gattung „schöne Mischung aus Rant und Analyse“ und hat die These: Für Empfehlungsalgorithmen braucht’s jetzt dieses viele Daten sammeln eigentlich wirklich nicht.

Mehr aus Forget privacy: you’re terrible at targeting anyway:

Probably what it does is infer my gender, age, income level, and marital status. After that, it sells me cars and gadgets if I’m a guy, and fashion if I’m a woman. Not because all guys like cars and gadgets, but because some very uncreative human got into the loop and said „please sell my car mostly to men“ and „please sell my fashion items mostly to women.“ Maybe the AI infers the wrong demographic information (I know Google has mine wrong) but it doesn’t really matter, because it’s usually mostly right, which is better than 0% right, and advertisers get some mostly demographically targeted ads, which is better than 0% targeted ads.


You know this is how it works, right? It has to be. You can infer it from how bad the ads are. Anyone can, in a few seconds, think of some stuff they really want to buy which The Algorithm has failed to offer them, all while Outbrain makes zillions of dollars sending links about car insurance to non-car-owning Manhattanites. It might as well be a 1990s late-night TV infomercial, where all they knew for sure about my demographic profile is that I was still awake.

KI, ML, etc.: Es dauert noch und das ist ganz normal so

AI hier, AI da. Aber wer setzt es wirklich ein? MIT Technology Review macht den Realitätscheck und bestätigt vieles derjenigen, die sich praktisch damit befassen.

It’s one thing to see breakthroughs in artificial intelligence that can outplay grandmasters of Go, or even to have devices that turn on music at your command. It’s another thing to use AI to make more than incremental changes in businesses that aren’t inherently digital.

Denn Google, Amazon, Facebook, Netflix und die anderen großen Firmen haben extrem viele Mitarbeiter, die sich nur damit befassen und das Geschäftsmodell ist inheränt auf Daten ausgelegt. In anderen Branchen ist das nicht so.

Data scientists at IBM and Fluor didn’t need long to mock up algorithms the system would use, says Leslie Lindgren, Fluor’s vice president of information management. What took much more time was refining the technology with the close participation of Fluor employees who would use the system. In order for them to trust its judgments, they needed to have input into how it would work, and they had to carefully validate its results, Lindgren says.


To develop a system like this, “you have to bring your domain experts from the business—I mean your best people,” she says. “That means you have to pull them off other things.” Using top people was essential, she adds, because building the AI engine was “too important, too long, and too expensive” for them to do otherwise.

Es wird also, so das Fazit, noch etwas dauern, bis Künstliche Intelliganz und Maschinelles Lernen auch in nicht-Tech-Branchen in der Breite ankommt. Ungewönlich ist das nicht:

What (…) economists confirmed, is that the spread of technologies is shaped less by the intrinsic qualities of the innovations than by the economic situations of the users. The users’ key question is not, as it is for technologists, “What can the technology do?” but “How much will we benefit from investing in it?”

Links:

The illusion of the Cloud

  • „[The] “cloud” is a massive interconnected physical infrastructure which exists across the world.“
  • By using cloud services from Amazon, Google, Microsoft one can outsource one’s own infrastructure setup with all it’s challenges
  • now: Infrastructure-as-a-Service
  • super-cheap hosting with a price that depends on usage and is scalable
  • „The actual infrastructure at the heart of AWS’ infrastructure-as-a-service isn’t the thing that makes it important to developers; it’s the services and APIs built on top of that infrastructure.“ (Ingrid Burrington)

Links:

Pros and Cons of a Social Index

Heather Krause writes one of my favorite newsletter. She works at Datassist, a company working with NGOs and data journalists.

Recently, she wrote about social indices:

A social index is a summary of a complex issue (or issues). Generally, social indexes take a large number of variables related to a specific topic or situation and combine them to get one number. It’s often a single number, but can also be a rank (#1 country out of 180) or a category (“high performing”).

Heather Krause

Pros of social indices:

  • attract public interest
  • allow comparisons over time
  • provide a big picture
  • „reduce vast amounts of information to a manageable size“

Cons:

  • „disguise a massive amount of inequality in the data“
  • simplistic interpretations
  • hide emerging problems of some variables

So, should we use them?

Krause says, „yes“, but …

If we’re using an index to understand a trend or situation, we also need to look at the individual elements that make up that index.

Datassist published a list with various indicators here.

Zuboff und das Zeitalter des Überwachungskapitalismus

Shoshanna Zuboff beobachtet und interpretiert die Digitalisierung seit 40 Jahren. Die Professorin an der Harvard Business School hat ein Buch geschrieben, das der Guardian in eine Reihe mit Adam Smith, Karl Marx, Max Weber, Karl Polanyi und Thomas Piketty stellt. Es heißt The Age of Surveillance Capital und es sollte bald in meinem Buchregal stehen, wie ich finde.

Ein Auszug aus einem Interview mit dem Guardian:

In my early fieldwork in the computerising offices and factories of the late 1970s and 80s, I discovered the duality of information technology: its capacity to automate but also to “informate”, which I use to mean to translate things, processes, behaviours, and so forth into information. This duality set information technology apart from earlier generations of technology: information technology produces new knowledge territories by virtue of its informating capability, always turning the world into information. The result is that these new knowledge territories become the subject of political conflict. The first conflict is over the distribution of knowledge: “Who knows?” The second is about authority: “Who decides who knows?” The third is about power: “Who decides who decides who knows?”

(…)

Surveillance capitalists were the first movers in this new world. They declared their right to know, to decide who knows, and to decide who decides. In this way they have come to dominate what I call “the division of learning in society”, which is now the central organising principle of the 21st-century social order, just as the division of labour was the key organising principle of society in the industrial age.

Shoshanna Zuboff

Ein paar Links

Year Five at Stamen: Some interessting projects and short overviews from the mapmakers of stamen

Podcast: Let’s Talk About Natural Language Processing (Data Skeptic)

Ein Rädchen in einer unendlichen Maschinerie von Checks and Balances: Finanzierungen über Kleinbeträge ist immer noch wichtig, auch wenn Blendle etc nicht so wirklich zünden. Denn Mikro-Finanzierungen sind was für kleine Medien in der Nische.

Es gibt nicht nur eine Zukunft, sondern viele Zukünfte. Sie sehen aus wie ein Trichter, je ferner, desto mehr mögliche Szenarien gibt es. Zukünfte gestalten

Pen Plotter Artwork | Gunther Kleinert

„Spinne ich, wenn ich denke, dass sie ausschließlich meine Arbeit genutzt haben?“ – SZ: Angenommen, jemand nutzt Open-Source-Code, erstellt damit Kunst – wer ist dann Urheber? Die Person, die den Code geschrieben hat? Oder die, die ihn ausgeführt hat?

Sorry, auch Datenanalysen sind nicht der Heilige Gral der Objektivität

Datenanalysen sind nicht neutral: Jede Entscheidung über Variablen oder Methodik ist schlussendlich auch eine inhaltliche Entscheidung. Das zeigt anschaulich eine Studie, über die das Spektrum Magazin schreibt:

Bekommen schwarze Fußballspieler häufiger rote Karten als Nicht-Schwarze? Das war die Frage, auf die Forscherinnen und Forscher 29 verschiedene Antworten gaben. Die Ergebnisse unterscheiden sich zum Teil deutlich und widersprachen sich auch. Und das, obwohl alle den exakt gleichen Datensatz zur Verfügung hatten.

Die Unterschiede ergeben sich zum Beispiel aus folgenden Punkten:

  • Was sind die Annahmen über die Verteilung der Daten?
  • Können sich Schiedsrichter und Spieler beeinflussen?
  • Sind rote Karten voneinander unabhängig?
  • Werden alle Variablen in die Analyse miteinbezogen? „Gut zwei Drittel der Teams hatten beispielsweise die Position des Spielers auf dem Platz berücksichtigt, aber nur drei Prozent die Gesamtzahl der Platzverweise, die ein Schiedsrichter verhängte.“

Und was folgt daraus? Sind Analysen nicht mehr zu trauen? Natürlich nicht, aber wie so oft hilft ein Bewusstsein, dass auch Datenanalysen keine in Stein gemeisselten Ergebnisse produzieren. Wie im Journalismus gilt auch hier: Transparenz erhöht die Glaubwürdigkeit.

The best defense against subjectivity in science is to expose it. Transparency in data, methods, and process gives the rest of the community opportunity to see the decisions, question them, offer alternatives, and test these alternatives in further research.

Studie „Many Analysts, One Data Set“

Hat eine schwarze Hautfarbe nun Einfluss auf Platzverweise? Zwei Drittel der Analysen sagen „ja“, ein Drittel „nein“.

via WZB Data Science Blog

How to Export Your Mozilla Firefox History as a Dataframe in R

The goal of this post is to export a Mozilla Firefox Browser history and import in R as a dataframe.

Browser history data

Firefox saves your browsing history in a file called places.sqlite. This file contains several tables, like bookmarks, favicons or the history.

To get a dataframe with visited websites, you need two tables from the sqlite file:

  1. moz_historyvisits: it contains all websites you visited with time and date. All websites have an id instead of a readable URL.
  2. moz_places: it contains the translation of the websites id and its actual URL.

More on the database schema:

Import the data into R

sqlite files can be imported with the package RSQLite.

First, find the places.sqlite on your computer. You can get the path, by visiting about:support in Firefox and looking for the Profiles directory.

library(RSQLite)
library(purrr)
library(here)

# connect to database
con <- dbConnect(drv = RSQLite::SQLite(), 
                 dbname = "path/to/places.sqlite",
                 bigint="character")

# get all tables
tables <- dbListTables(con)

# remove internal tables
tables <- tables[tables != "sqlite_sequence"]
# create a list of dataframes
list_of_df <- purrr::map(tables, ~{
  dbGetQuery(conn = con, statement=paste0("SELECT * FROM '", .x, "'"))
})
# get the list of dataframes some names
names(list_of_df) <- tables

Extract browser history

Next, we extract the two tables with the information we need, join them and keep only the visited url, the time and the URL id.

There are two caveats:

  1. The timestamps are saved in the PRTime format, which is basically an unix timestamp and you have to convert it in a human-readable format
  2. Extract the domain of a URL using the urltools package, e.g. getting twitter.com instead of twitter.com/cutterkom
library(urltools)
# get the two dataframes 
history <- list_of_df[["moz_historyvisits"]]
urls <- list_of_df[["moz_places"]]

df <- left_join(history, urls, by = c("place_id" = "id")) %>% 
  select(place_id, url, visit_date) %>% 
  # convert the unix timestamp
  mutate(date = as.POSIXct(as.numeric(visit_date)/1000000, origin = '1970-01-01', tz = 'GMT'),
  # extract the domains from the URL, e.g. `twitter.com` instead of `twitter.com/cutterkom`
         domain = str_remove(urltools::domain(url), "www\\."))