CitizenLab's Blog
  • Platform
  • Services
  • Resources
    • Blog
    • Guides
  • About
  • Contact
  • Schedule a demo
  • English
    • Français
    • Nederlands
    • Español
  • Home
  • >
  • 🏛️ Blog
  • >
  • Applying artificial intelligence to citizen participation: the Youth4Climate case study

Applying artificial intelligence to citizen participation: the Youth4Climate case study

By Coline Cuau Civic Engagement 07/05/2019
CitizenLab's Blog
  • Platform
  • Services
  • Resources
    • Blog
    • Guides
  • About
  • Contact
  • Schedule a demo
  • English
    • Français
    • Nederlands
    • Español

Youth for Climate used CitizenLab’s NLP technology to turn thousands of citizen contributions into concise and actionable insights. Here’s what we learned from analysing over 1,700 ideas.

On August 20, a 15 year old Swedish climate activist called Greta Thurnberg sat down in front of the Swedish government with a  sign protesting inaction against climate change. The next day, she was joined by a handful of other protesters. A few weeks later, hundreds had joined. A few months later, the movement had gone global and Youth for Climate groups took to the streets all over the world to get politics to act against climate change.

The movement was quick to reach Belgium. In early 2019 Belgian youths started protesting every Thursday, marching through Brussels and other major Belgian cities. As press attention and momentum grew, the organisers of Youth for Climate Belgium quickly decided they needed a way to channel the energy and ideas being expressed every week in the street. In January 2019, a CitizenLab platform was set up for them: Youth4Climate, where users from Belgium and beyond were invited to submit ideas on how to tackle climate change. Discussions on the platform were as lively and passionate as they were on the streets: in just under 3 months, users posted over 1,700 ideas, 2,600 comments and voted over 32,000 times for the initiatives they wanted to support.

Ideas posted on the Youth4Climate platform

As with all participation projects, this is where the challenge truly started. Collecting input was just the easy part: in order to turn these ideas into meaningful actions and recommendations, Youth forClimate needed to process thousands of ideas in a short period of time. This was a perfect use case for the automated data analysis feature of the CitizenLab platform.

As we accompanied Youth forClimate through the process of collecting and analysing the input, we were able to test our NLP technology on a wide scale, and run it on thousands of contributions written in multiple languages. Here are a few of the learnings we made along the way.  

Learning 1: human first, tech second

With an end goal of submitting a concise and actionable report to elected officials, the YouthForClimate organisers together with CitizenLab decided to organise the ideas on the platform into top priorities for climate. The topics which existed on the platform and had already been assigned to some of the ideas couldn’t be used: most themes were too vague to determine true priorities, and a large part of users had chosen not to classify their ideas, meaning that the bulk of ideas were untagged.

Automated classifying wasn’t an option either: trying to automatically tag all of the ideas would have been near impossible. Without giving the algorithms instructions on how to classify the ideas, they would have applied a classification model that was either out of context or too vast. We ran some tests, which confirmed our intuition: with such complex conversations and with such a high number of messages, the algorithms need some framing before they can get reliable results.

The solution was therefore to manually determine the main categories by reading through the ideas and using recurring topics. In order to avoid reading through 1,700 ideas, it was decided to first focus on the most “popular” ones. The top 15% of ideas (217 ideas) accounted for almost 74% of the votes, a strong sign that they were representative of ideas as a whole. The ideas which gathered over 100 votes (60 ideas in total, accounting for 43% of the total votes) gave us the top 10 priorities. The ideas which gathered between 50 and 100 votes (57 ideas, representing 15% of the votes) gave us a further 5 priorities. These 15 priorities were enough to cover the rest of the ideas: we manually read through an additional 139 ideas which had gathered between 20 and 50 votes, and all of these fit into at least one of the 15 priorities.

The 15 priorities identified on the Youth4Climate platform

Once these priorities were determined, we turned to NLP to apply them to the remaining 1,400 ideas. These ideas were tagged using the similarity method: every idea from the “untagged” pot was compared with an idea from the “manual tag” pot – comparison was done by looking at similar words and checking the context. It’s not enough that two ideas both use the word “book”: we also want to make sure the word means the same thing in both comments. The opposite is also true: if an idea mentions “a book” and another idea mentions “reading”, the algorithm recognises these as similar. Once the algorithm found the closest tagged idea, it applied the same tag to the untagged idea. Manual checking of the results showed that even when the algorithms got the tagging wrong, the tag that had been applied was still somewhat relevant to the idea.

Learning 2: anticipate bias

In terms of number of ideas and comments, YouthForClimate has been one of the biggest platforms we’ve worked with. It has therefore been an opportunity for us to train our algorithm on datasets that are bigger than the ones we usually see on other platforms. In doing so, we have been able to learn and to fine-tune our approach.

We are aware of the limitations that come with manually assigning ideas, and we know there is always a form of human bias that comes with selecting or summarising main ideas. Being aware of this possible bias means we can try to overlook it and stay as neutral as possible.

We made the decision that the most popular ideas were also the most relevant ones, but it could of course be that some ideas which did not get voted for also suggested valid priorities. Moreover, the platform showed popular ideas first, therefore reinforcing dominant propositions. In order to avoid this on future platforms, we’ve now randomized the order of ideas on project pages.

Finally, a positive learning has been that multi-linguism is not necessarily a barrier to citizen participation projects. Machine translations ensured that users who spoke different languages could read, comment and vote for ideas in different languages, thus eliminating the language bias. During the analysis phase, we were able to work with the 3 languages on the platform (French, Dutch and English) by translating the ideas into a single language and working from there. Manual checks showed that idea grouping was then able to work and group together ideas which were translated from different languages.

Learning 3: transparency, transparency, transparency!

Analysing contributions isn’t everything: in order for the project to come full circle, it’s also necessary to share the results with the participants. In the spirit of co-construction and transparency, Youth4Climate organisers were intent on keeping the whole process as open as possible.

Once the 15 priorities were determined, the results were posted on the platform along with an explanation of how the ideas had been processed. The results and methodology were also shared by email to all the users who had created an account on the platform, regardless of whether they had submitted an idea. This approach helped increase trust in the process, and kept users interested long after they’d interacted with the platform. It also helped get users back on the platform for the next phase of the project.

Project timeline on the Youth4Climate platform

The 15 citizen priorities have been translated as new ‘ideas’ on the platform. Every one of these priorities comes with a short description, and features links to the most popular related ideas posted by citizens in the first phase. Citizens have been invited to vote for the topics they think matter the most. Once the prioritisation is finalised and votes are counted, the Youth4Climate organisers will share the proposals with elected officials and bring them to an expert panel they are in close contact with. These upcoming phases have been explained on the platform, making it clear to users where the project is going and why their vote matters.

Being part of this project has been a great learning experience for CitizenLab. It has allowed us to work alongside a civil society group for a topic we’re passionate about. Throughout the process, we’ve also been able to gather valuable learnings which we will be able to implement on future platforms. If you want to know more about how we use artificial intelligence at CitizenLab, head this way!

So, what’s next for climate? Head to the Youth4Climate platform and check out the status of the ideas!

More on this topic

  • Natural Language Processing at CitizenLab: how machine learning can transform citizen engagement projects.
  • The Human Factor: helping governments tap into collective intelligence
  • 8 Civic-Tech newsletters to keep up with
  • CitizenLab’s case-studies

You May Also Like

CitizenLab Team USA
Civic Engagement 16/06/2022
Introducing CitizenLab’s Team USA
AI for community engagement
Civic Engagement 15/06/2022
How to leverage AI in community engagement
Creative community engagement
Civic Engagement 14/06/2022
6 examples of creative ways to engage your community
Culture of engagement
Civic Engagement 24/05/2022
5 steps to build a culture of engagement in your city
Case Studies, Civic Engagement 11/05/2022
Developing the Dominican Republic’s 2030 Digital Agenda through community engagement
Written By
Coline Cuau

Head of Marketing during the day - Civic Tech enthusiast, data champion, and museum nerd during the night.

Solutions
  • All solutions
  • Strategy & Budgeting
  • Planning & Public Spaces
  • Environment & Sustainability
  • Mobility & Infrastructure
  • Neighborhoods & Community Development
Platform
  • Platform features
  • Services
  • Plans
  • Schedule a demo
Academy
  • Resources
  • Blog
Company
  • About
  • Jobs
  • Partners
Get in touch
  • +44 79 2676 4670
  • +1 530 270 3403
  • Contact form
Blog
How Wichita used public participation to address affordable housing issues
Introducing CitizenLab’s Team USA
How to leverage AI in community engagement
© 2022 CitizenLab: Community Engagement Platform. All rights reserved.
By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts.
Cookie SettingsAccept
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. These cookies ensure basic functionalities and security features of the website, anonymously.
CookieDurationDescription
_ga2 yearsThe _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognize unique visitors.
_gid1 dayInstalled by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously.
cookielawinfo-checkbox-advertisement1 yearSet by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category .
cookielawinfo-checkbox-analytics11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics".
cookielawinfo-checkbox-functional11 monthsThe cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional".
cookielawinfo-checkbox-necessary11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary".
cookielawinfo-checkbox-others11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other.
cookielawinfo-checkbox-performance11 monthsThis cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance".
CookieLawInfoConsent1 yearRecords the default button state of the corresponding category & the status of CCPA. It works only in coordination with the primary cookie.
geot_rocket_citysessionNo description available.
geot_rocket_countrysessionNo description available.
geot_rocket_statesessionNo description available.
PHPSESSIDsessionThis cookie is native to PHP applications. The cookie is used to store and identify a users' unique session ID for the purpose of managing user session on the website. The cookie is a session cookies and is deleted when all the browser windows are closed.
STYXKEY_geot_countrysessionNo description
viewed_cookie_policy11 monthsThe cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data.
Functional
Functional cookies help to perform certain functionalities like sharing the content of the website on social media platforms, collect feedbacks, and other third-party features.
CookieDurationDescription
bcookie2 yearsLinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognize browser ID.
langsessionLinkedIn sets this cookie to remember a user's language setting.
lidc1 dayLinkedIn sets the lidc cookie to facilitate data center selection.
Analytics
Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics the number of visitors, bounce rate, traffic source, etc.
CookieDurationDescription
_gat_gtag_UA_65562281_11 minuteSet by Google to distinguish users.
_gcl_au3 monthsProvided by Google Tag Manager to experiment advertisement efficiency of websites using their services.
CONSENT2 yearsYouTube sets this cookie via embedded youtube-videos and registers anonymous statistical data.
undefinedneverWistia sets this cookie to collect data on visitor interaction with the website's video-content, to make the website's video-content more relevant for the visitor.
Advertisement
Advertisement cookies are used to provide visitors with relevant ads and marketing campaigns. These cookies track visitors across websites and collect information to provide customized ads.
CookieDurationDescription
_fbp3 monthsThis cookie is set by Facebook to display advertisements when either on Facebook or on a digital platform powered by Facebook advertising, after visiting the website.
VISITOR_INFO1_LIVE5 months 27 daysA cookie set by YouTube to measure bandwidth that determines whether the user gets the new or old player interface.
YSCsessionYSC cookie is set by Youtube and is used to track the views of embedded videos on Youtube pages.
yt-remote-connected-devicesneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt-remote-device-idneverYouTube sets this cookie to store the video preferences of the user using embedded YouTube video.
yt.innertube::nextIdneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
yt.innertube::requestsneverThis cookie, set by YouTube, registers a unique ID to store data on what videos from YouTube the user has seen.
Others
Other uncategorized cookies are those that are being analyzed and have not been classified into a category as yet.
CookieDurationDescription
intercom-id-p4lr69wg8 months 26 days 1 hourNo description
intercom-session-p4lr69wg7 daysNo description
loglevelneverNo description available.
trx_addons_is_retina1 yearThis cookie is used for checking if the user has a retina display.
wp-wpml_current_languagesessionNo description available.
Performance
Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.
CookieDurationDescription
AMP_TOKEN1 hourThis cookie is set by Google Analytics and contains a token that can be used to retrieve a Client ID from AMP Client ID service. Other possible values indicate opt-out, inflight request or an error retrieving a Client ID from AMP Client ID service.
SAVE & ACCEPT
Powered by CookieYes Logo

Please share your location to continue.

Check our help guide for more info.

share your location