In this post Jason Chao, PhD candidate at the University of Siegen, introduces Memespector-GUI, a tool for doing research with and about data from computer vision APIs.
In recent years, tech companies started to offer computer vision capabilities through Application Programming Interfaces (APIs). Big names in the cloud industry have integrated computer vision services in their artificial intelligence (AI) products. These computer vision APIs are designed for software developers to integrate into their products and services. Indeed, your images may have been processed by these APIs unbeknownst to you. The operations and outputs of computer vision APIs are not usually presented directly to end-users.
The open-source Memespector-GUI tool aims to support investigations both with and about computer vision APIs by enabling users to repurpose, incorporate, audit and/or critically examine their outputs in the context of social and cultural research.
What kinds of outputs do these computer vision APIs produce? The specifications and the affordances of these APIs vary from platform to platform. As an example here is a quick walkthrough of some of the features of Google Vision API…
Label, object and text detection
Google Vision API aims to label, identify objects and recognise text in images. “Labels” are descriptions that may apply to the whole image. “Objects” are objects found in the image. “Text” is any printed or handwritten text recognised in the image.
Image sample 1
Labels: • Sky • Building • Crowd
Objects: • Building • Person • Footwear
Text: • DON’T SHOOT OUR KIDS
Google Vision API also detects faces and recognises their expressions. Google Vision API currently detects four emotions: joy, sorrow, anger and surprise. The likelihood of each emotion is presented on a scale of 5 (very unlikely, unlikely, possible, likely, very likely).
Image sample 2
Face • Joy: Very likely • Sorrow: Very unlikely • Anger: Very unlikely • Surprise: Very unlikely • Exposed: Very unlikely • Blurred: Very unlikely • Headwear: Very unlikely
Google Vision API attempts to provide contextual information about an image. “Web entities” are the names of individuals and events associated with an image. “Matching images” are the URLs of images that are visually similar, fully matching or partially matching with the analysed image. In particular, the domain names of the URLs may be repurposed to study how one image is circulated on the web.
Image sample 3
Web entities: • Secretary of State for Health and Social Care of the United Kingdom • Kiss • Closed-circuit television • Matt Hancock • Gina Coladangelo • Girlfriend …
Full matching image URL: • thetimes.co.uk/…
Pages with full matching image: • dailymail.co.uk/… • theaustralian.com.au/… • mirror.co.uk/… …
Google Vision API is used for content moderation work. There are five flags for the safety of an image: Adult, Spoof, Medical, Violence and Racy. The likelihood of each flag is presented on a scale of 5 (very unlikely, unlikely, possible, likely, very likely).
Image sample 4
Safety: • Adult: Very likely • Spoof: Unlikely • Medical: Unlikely • Violence: Unlikely • Racy: Very likely
Misrecognition, mislabelling, misclassification
As we know from recent research and investigations into into AI and algorithm, these machine-learning based processes of labelling, detection and classification can often go wrong, sometimes with troubling or discriminatory consequences. The following example shows that the facial expression of a man in sorrow is misrecognised as “joy”.
How to repurpose computer vision APIs?
The computer vision APIs do not have official user interfaces since they are not intended to interface with humans directly. Google Vision API has an official drag-and-drop demo to demonstrate its detection capability, but the demo’s features are very limited.
Memespector-GUI is a digital methods tool that helps researchers use and repurpose data from computer vision APIs – whether to facilitate analysis of image collections, to understand the circulation and social lives of images online or to compare and critique the operations of computer vision platforms and services. This tool currently enables users to gather image data from Google Vision API, Microsoft Azure Cognitive Services, Clarifai and other services.
Are they free?
Memespector-GUI is free and open-source. However, the use of commercial APIs is not necessarily free of charge. Yet, it does not mean that you have to pay. When you open an account with Google Cloud and Microsoft Azure, you will usually receive free credits, which may be enough to process thousands of images.
The following resources will guide you open accounts and get free credits (if applicable) with commercial vision APIs.
We’ve recently been experimenting with the use of ObservableHQ notebooks for gathering and transforming data in the context of digital research. This post walks through a few recent examples of notebooks from recent Public Data Lab projects.
Code notebooks are a third option that lies somewhere in between these options. Designed for programmers, notebooks allow for iterative manipulation and experimentation with code whilst keeping track of creative processes by commenting on the thinking behind each step.
Notebooks allow us to both write and run custom scripts as well as creating simple interfaces for those who may not code. Thus we can use them to help researchers, students and external collaborators to collect data, making it easier to call APIs, setting parameters, or perform manipulations.
ObservableHQ is one solution for writing programming notebooks, it runs in the browser and is oriented towards data and visualisations (“We believe thinking with data is an essential skill for the future”). Hence, we thought it could be a good starting point for what we wanted to do.
The first notebook that we produced allows researchers to call CrowdTangle APIs in a simplified way: it exposes calls parameters and, contextually, it provides explanations and warnings about how to set them. For instance, it transforms the selection of platforms into checkboxes or the interval between calls into a slider (with a warning about rate-limits). The insertion of dates and other parameters can also be facilitated.
Data can be browsed in tabular form or downloaded as a CSV or JSON.
However, there are also many advantages. Notebooks are very flexible and easy to be transform and adjust: we can start gathering and exploring data and, after a couple of iterations, we can decide how best to structure it. We can add and remove parts of the interface almost instantly and we can embed functions (“cells”) from other notebooks, such as an emoji loading bar. The possibility to reuse or modify an entire notebook, or just a part of it, is very useful to build on the work done by other researchers and quickly bootstrap new tools as we need them.
Notebooks are particularly useful as part of exploratory research approaches where you are iteratively refining and adjusting research questions and seeing what is possible as you adjust various settings (e.g. the structure of the data, the parameters of the APIs).
As per the working principles of the Public Data Lab, all of these notebooks are open-source (MIT license) and you are most welcome to use, transform and adjust them to your own work. If you use them for a project of piece of research, or if you’re also using code notebooks for we’d love to hear from you!
Here’s a full list of the notebooks mentioned in this post:
This will take place on 10-14th January 2022 at the University of Amsterdam.
More details and registration links are available here and an excerpt on this year’s theme and the format is copied below.
The Digital Methods Initiative (DMI), Amsterdam, is holding its annual Winter School on ‘Social media data critique’. The format is that of a (social media and web) data sprint, with tutorials as well as hands-on work for telling stories with data. There is also a programme of keynote speakers. It is intended for advanced Master’s students, PhD candidates and motivated scholars who would like to work on (and complete) a digital methods project in an intensive workshop setting. For a preview of what the event is like, you can view short video clips from previous editions of the School.
Data critique and platform dependencies: How to study social media data?
Source criticism is the scholarly activity traditionally concerned with provenance and reliability. When considering the state of social media data provision such criticism would be aimed at what platforms allow researchers to do (such as accessing an API) and not to do (scrape). It also would consider whether the data returned from querying is ‘good’, meaning complete or representative. How do social media platforms fare when considering these principles? How to audit or otherwise scrutinise social media platforms’ data supply?
Recently Facebook has come under renewed criticism for its data supply through the publication of its ‘transparency’ report, Widely Viewed Content. It is a list of web URLs and Facebook posts that receive the greatest ‘reach’ on the platform when appearing on users’ News Feeds. Its publication comes on the heels of Facebook’s well catalogued ‘fake news problem’, first reported in 2016 as well as a well publicised Twitter feed that lists the most-engaged with posts on Facebook (using Crowdtangle data). In both instances those contributions, together with additional scholarly work, have shown that dubious information and extreme right-wing content are disproportionately interacted with. Facebook’s transparency report, which has been called ‘transparency theater’, demonstrates that it is not the case. How to check the data? For now, “all anybody has is the company’s word for it.”
For Facebook as well as a variety of other platforms there are no public archives. Facebook’s data sharing model is one of an industry-academic ‘partnership’. The Social Science One project, launched when Facebook ended access to its Pages API, offers big data — “57 million URLs, more than 1.7 trillion rows, and nearly 40 trillion cell values, describing URLs shared more than 100 times publicly on Facebook (between 1/1/2017 and 2/28/2021).” To obtain the data (if one can handle it) requires writing a research proposal and if accepted compliance with Facebook’s ‘onboarding’, a non-negotiable research data agreement. Ultimately, the data is accessed (not downloaded) in a Facebook research environment, “the Facebook Open Research Tool (FORT) … behind a VPN that does not have access to the Internet”. There are also “regular meetings Facebook holds with researchers”. A data access ethnography project, not so unlike to one written about trying to work with Twitter’s archive at the Library of Congress, may be a worthwhile undertaking.
Other projects would evaluate ‘repurposing’ marketing data, as Robert Putnam’s ‘Bowling Alone’ project did and as is a more general digital methods approach. Comparing multiple marketing data outputs may be of interest, and crossing those with CrowdTangle ‘s outputs. Facepager, one of the last pieces of software (after Netvizz and Netlytic) to still have access to Facebook’s graph API reports that “access permissions are under heavy reconstruction”. Its usage requires further scrutiny. There is also a difference between the user view and the developer view (and between ethnographic and computational approaches), which is also worth exploring. ‘Interface methods‘ may be useful here. These and other considerations for developing social media data criticism are topics of interest for this year’s Winter School theme.
At the Winter School there are the usual social media tool tutorials (and the occasional tool requiem), but also continued attention to thinking through and proposing how to work with social media data. There are also empirical and conceptual projects that participants work on. Projects from the past Summer and Winter Schools include: Detecting Conspiratorial Hermeneutics via Words & Images, Mapping the Dutchophone Fringe on Telegram, Greenwashing, in_authenticity & protest, Searching constructive/authentic posts in media comment sections: NU.nl/The Guardian, Mapping deepfakes with digital methods and visual analytics, “Go back to plebbit”: Mapping the platform antagonism between 4chan and Reddit, Profiling Bolsobots Networks, Infodemic everywhere, Post-Trump Information Ecology, Streams of Conspirational Folklore, and FIlterTube: Investigating echo chambers, filter bubbles and polarization on YouTube.
Organisers: Lucia Bainotti, Richard Rogers and Guillen Torres, Media Studies, University of Amsterdam. Application information at https://www.digitalmethods.net.
While in an image-saturated society, methods for visual analysis gain urgency, this special issue explores visual ways to study online images. The proposition we make is to stay as close to the material as possible. How to approach the visual with the visual? What type of images may one design to make sense of, reshape, and reanimate online image collections? The special issue also touches upon the role that algorithmic tools, including machine vision, can play in such research efforts. Which kinds of collaborations between humans and machines can we envision to better grasp and critically interrogate the dynamics of today’s digital visual culture?
The articles (available both in English and in Spanish) touch on the diversity of formats and uses of online images, focusing on collection and visual interpretation methods. Other themes touched by this issue are image machine co-creation processes and their ethics, participatory actions for image production and analysis, and feminist approaches to digital visual work.
Further information about the issue can be found in our introduction. Following is the complete list of contributions (with links) and authors (some from the Public Data Lab).
With the launch of the new PDL website, we thought it was the perfect opportunity to freshen up the identity of the laboratory to highlight its craft and convey the spirit that is behind it. We designed the new identity to be flexible and approachable, while maintaining a simple coherence that is reflected in the new colored version of the Public Data Lab logo.
A flexible approach
The core principle of the new aesthetics of the website is to highlight the uniqueness of projects and endeavours and their call to gather different disciplines, approaches and people to explore specific areas of research.
Each project can be represented with a specific color, that belong to a family of warm and rich color palette that is inspired by historical japanese and western prints. These colors come together in the new logo, that showcases three of them along the new “mango yellow” that ties all the colors in the palette together.
All the projects come together in the network that showcases the interconnections between projects, people and affiliations that make the Public Data Lab. In the network, each project retains its color, making it recognizable also from this bird’s eye view.
The same approach is applied also outside of the Public Data Lab website to mini-website related to other activities, like “Infodemic“, a blog that gathers research insights about the current misinformation “infodemic”. The Github template can be used in any PDL project that requires a small website to document collateral research. You can find documentation and a guide on how to use this theme directly on Github.
The new logo
The new Public Data Lab logo builds on the original logo of the laboratory that is already used in many projects. It is consistent in sizing and spacing, but it introduces a new font family designed to be clear and legible: the Inter font superfamily.
Inter is an open source font “specially designed for user interfaces with focus on high legibility of small-to-medium sized text on computer screens” and it is currently an active project on Github.
The book provides a wide-ranging collection of perspectives on how data journalism is done around the world. It is published a decade after the first edition (available in 14 languages) began life as a collaborative draft at the Mozilla Festival 2011 in London.
The new edition, with 54 chapters from 74 leading researchers and practitioners of data journalism, gives a “behind the scenes” look at the social lives of datasets, data infrastructures, and data stories in newsrooms, media organizations, startups, civil society organizations and beyond.
The book includes chapters by leading researchers around the world and from practitioners at organisations including Al Jazeera, BBC, BuzzFeed News, Der Spiegel, eldiario.es, The Engine Room, Global Witness, Google News Lab, Guardian, the International Consortium of Investigative Journalists (ICIJ), La Nacion, NOS, OjoPúblico, Rappler, United Nations Development Programme and the Washington Post.
An online preview of various chapters from book was launched in collaboration with the European Journalism Centre and the Google News Initiative and can be found here.
Further background about the book can be found in our introduction. Following is the full table of contents and some quotes about the book. We’ll be organising various activities around the book in coming months, which you can follow with the #ddjbook hashtag on Twitter.
? In order to enable more people to post more easily about various projects and activities, we’re now using WordPress as the backend for the site (along with static site templates and materials for use by different lab projects).
??? We have added a people page so we can highlight a much wider group of people, groups and collaborators who we work with at the Public Data Lab.
? We’ve added an updated projects page which includes more of what we’ve been up to than had been on the previous site, along with a little updating network diagram to show who has been working on what and the different clusters of our activities 🙂
? We’ll be using the blog to post short notes and updates on our various projects and activities across the Public Data Lab and its associated research centres, communities and institutions.
? We have lightly revised our mission statement to better reflect what we do (in light of activities over the past few years)
As always you can follow our activities on Twitter at @PublicDataLab and also get in touch if you’re interested in contributing to or collaborating with the lab.