Big Idea 5.4: Crowd-sourcing
What is Crowd-sourcing?
Crowd-sourcing is a way of getting help, ideas, or contributions from a large group of people, often through the internet. Instead of relying on a few experts or individuals, crowd-sourcing taps into the collective knowledge, skills, and efforts of a diverse crowd to solve problems, gather information, or create content. This is one way of preventing Computer Bias.
Types of Crowd-sourcing
There are several different types of crowd-sourcing:
- Idea Crowdsourcing: Idea crowdsourcing is a collaborative approach to generating creative solutions or innovations by soliciting ideas from a large group of individuals. ex. Companies might host idea competitions where employees or the public submit ideas for new products or process improvements. Online suggestion boxes allow users to contribute ideas and feedback for website improvements or feature enhancements.
- Data Crowdsourcing: Data crowdsourcing involves harnessing the power of a crowd to collect, process, or validate large sets of data. ex. Image labeling projects, where contributors tag and describe images to train machine learning models. Crowdsourced mapping platforms like OpenStreetMap, where volunteers contribute to creating and updating maps.
- Microtask Crowdsourcing: Microtask crowdsourcing breaks down complex tasks into small, manageable units and distributes them among contributors to achieve rapid results. ex. Amazon Mechanical Turk, where workers perform small tasks like data entry, image recognition, or sentiment analysis for a fee.Captcha solving, where users help decipher distorted text to prove they are human, indirectly contributing to digitizing books.
- Knowledge Crowdsourcing: Knowledge crowdsourcing involves tapping into the collective intelligence of a group to answer questions, solve problems, or provide expertise. ex. Online forums like Stack Exchange or Reddit, where users ask questions and receive answers from a community of experts.Collaborative wikis like Wikipedia, where contributors collectively create and edit content on a wide range of topics.
- Open Source Development: Open source development refers to the collaborative creation and improvement of software, with the source code being made freely available to the public. ex. GitHub is a platform where developers contribute to open-source projects by submitting code, reporting issues, and collaborating with others. The Linux operating system is a notable example of a successful open-source project with contributions from a global community. We will be mainly focusing on Data Crowd-sourcing and Open Source Development
Popcorn Hack
Can you think of other uses for the different types of crowd-sourcing?
Data Crowdsourcing:
Data crowdsourcing is a collaborative approach that outsources the collection, processing, or validation of data to a large and diverse group of contributors. This method is particularly advantageous when tasks require substantial data processing within a short timeframe.
- Image Labeling Projects: Contributors annotate images with relevant labels, aiding in the training and improvement of machine learning models.
- Mapping and Geospatial Data: Projects like OpenStreetMap leverage global contributors to create and update detailed maps.
- Sentiment Analysis Tasks: Contributors label text data with positive, negative, or neutral sentiments, providing valuable insights for sentiment analysis models.
- Data Verification: Tasks involve contributors checking and correcting information, ensuring the accuracy and reliability of datasets.
The scale, speed, and cost-effectiveness of data crowdsourcing make it a powerful tool, with the diversity of contributors enhancing the richness of the collected data. However, challenges include maintaining quality control, designing clear tasks, and addressing privacy concerns when handling sensitive information.
Open Source Development:
Open source development is a collaborative software development approach where the source code is made freely available to the public, allowing contributors worldwide to modify, enhance, and distribute the software. GitHub serves as a prominent platform for hosting and collaborating on open-source projects, enabling developers to contribute through code submissions, issue reporting, and discussions.
Examples of Successful Open-Source Projects:
- Linux Operating System, Developed and maintained by a global community of contributors.
- Apache HTTP Server: A foundational web server on the internet.
- WordPress:A widely used content management system.
The benefits of open source development include fostering community collaboration, rapid innovation through contributions, and promoting transparency as users can inspect, modify, and distribute the source code. Challenges include coordinating contributions from a diverse community, addressing maintainer burnout, and ensuring compliance with project licensing terms. Despite these challenges, open source development remains a powerful model for creating and maintaining software that is both innovative and openly accessible.
Public Data Sets:
Public data sets are raw data that governments, academic institutions, and other organizations make freely available to the public. By providing open access to massive stores of data, public data sets power innovation through crowdsourcing. Essentially, they present an opportunity for crowd wisdom to uncover insights and solutions that large organizations cannot achieve alone.
For example, Google Public Datasets offers the public access to high-value data sets on Google Cloud. This includes data covering genetics, weather patterns, demographics, economics, and more. By enabling any developer or analyst to access and experiment with the same rich data sources, Google crowdsources new discoveries across industries. Public competitions on platforms like Kaggle further demonstrate the model of giving crowds access to key data to drive breakthroughs. Kaggle hosts public competitions where data scientists compete to uncover the best predictive models and data visualizations for real-world problems posed by organizations. They also offer courses in visualizations, tensor flow AI (google’s platform for AI), machine learning, and more. By providing universal access to raw data, public datasets create the essential information for crowdsourced innovation.
Distributed Computing:
Distributed computing platforms allow the public to donate their spare computing power to advance scientific research through crowdsourcing. An example is Folding@Home, created by Stanford University, which focuses on simulating protein folding to better understand diseases like cancer. The project sends out small computational protein folding simulations to volunteers’ personal devices. Results get sent back to contribute toward a massive aggregated analysis. At its peak, Folding@Home even utilized PlayStation 3 consoles toward this goal. A similar initiative is BOINC, coordinated by UC Berkeley, which crowdsources simulations for projects ranging from math to astrophysics. For example, BOINC’s Minecraft@Home sends out Minecraft world seeds to volunteers, who develop simulated versions of those worlds on their computers to send back data. While more of an experimental endeavor, Minecraft@Home demonstrates how crowdsourced computing can be leveraged creatively. By using collective resources, these platforms enable complex problems to be tackled that would not be feasible by any single system.
Innovations:
Crowdsourcing, with its power to gather different perspectives and resources, has fueled innovative new products and services. For example, Spotify taps into collective intelligence to improve music recommendations through user-curated collaborative playlists. By allowing groups to jointly create playlists, such as at a party, Spotify crowdsources data on music preferences. It analyzes patterns in what audiences stream and like to share new song suggestions personalized to each listener’s taste. Spotify also crowdsources descriptive metadata about songs through user-submitted information that undergoes a consensus-based review. Crowdfunding platforms like Kickstarter utilize the power of crowdsourcing to turn creative ideas into reality. By allowing entrepreneurs to pitch ideas to an enormous audience, promising innovations can get democratically funded by many small supporters rather than relying on a few large investors. This facilitates inventors and creators accessing the capital they need to initiate projects that may otherwise never materialize without public support. In short, crowdsourcing mechanisms enable innovations like algorithm-personalized music libraries and creator-owned projects that can uniquely serve user needs
Popcorn Hacks
Can you think of any drawbacks of crowdsourcing?
Homework:
Please answer in complete sentences and explain in detail.
- Explain the role of data crowdsourcing in machine learning projects. Provide an example of an application where image labeling by a crowd contributes to the improvement of machine learning models.
Crowdsourcing in machine learning projects allows more data to be collected for the machine to train on, data that is usually not available online easily to collect is also achieved through crowdsourcing. A machine that is training on say user specific data that is not found in online surveys or private to a specific company is likely more subject to crowdsourcing.
- Compare and contrast the benefits and challenges of data crowdsourcing with regard to tasks like sentiment analysis and data verification. How does the diversity of contributors enhance the overall quality of the collected data?
The diversity of contributors means that the resulting data is more diverse than other existing data and covers a wide range of groups. It, however, is still subject to bias as older generations are less likely to use the internet, as well as other groups of people. The data provided by others also needs to be verified and combed through, since some people may lie about their data.
- Choose an open-source project mentioned in the examples, such as the Linux operating system or WordPress. Discuss the significance of global collaboration in the development of open-source software. Highlight one specific advantage and one challenge faced by open-source projects.
Open source software CMS, such as Wordpress, Joomla, or MediaWiki are easy tools that allow for the easy creation of a website. The ability to view the source by anybody allows for better documentation as well as more eyes on potential security issues in these softwares. They however, may also be subject to more attacks from people who may wish to harmfully edit code, but this is easily prevented by cross checking and extra eyes.
- In microtask crowdsourcing, tasks are broken down into small units for contributors to complete. Explain how platforms like Amazon Mechanical Turk utilize microtask crowdsourcing. Discuss one advantage and one challenge associated with the microtask approach.
Microtask crowdsourcing allows many tasks to be completed quicker, as many people are willing to contribute to these small tasks, which would be faster than one company or person doing them all. However, this crowdsourcing creates the potential for bad tasks and errors, as well as decrease familiarity with other areas, which means that more cross checking is needed.
- Explore Kaggle and find a database that would be useful for a CPT Project idea you have. Briefly discuss its potential purpose in your project.
Our current CPT project ideas don’t involve datasets but many databases on Kaggle provided things that aren’t particularly easy to find datasets on elsewhere, which is definitely helpful for anyone looking for data.