MLH Quizzet

This is a smart Quiz Generator that generates a dynamic quiz from any uploaded text/PDF document using NLP. This can be used for self-analysis, question paper generation, and evaluation, thus reducing human effort.

Forks Stars Watchers PRs Issues License Maintenance Open Source? Yes!

Features

  • implements automatic question generation (AQG) techniques > Automatic question generation (AQG) is concerned with the construction of algorithms for producing questions from knowledge sources, which can be either structured (e.g. knowledge bases (KBs) or unstructured (e.g. text))
  • helps in resource saving(time, money, and human effort)
  • enables the enrichment of the teaching process, adapt learning to student knowledge and needs, as well as drill and practice exercises
  • presents an automatic mechanism to assemble exams or to adaptively select questions from a question bank

WorkFlow

workflow

Input

  • Input in the form of a text/PDF file that consists of English text data
  • The English text must preferably be over a single broad topic with multiple smaller subtopics
  • The helps in generating a good quiz for the user to practice on

Text Pre-processing

  • Text is pre-processed so it can be in a format as expected by the natural-language models
  • non-alphanumeric characters(except full stops) are dropped
  • This also helps improve the output of the natural language model

Named Entity Recognition + Entity Ranking

  • Spacy’s NER model is used to find the named entities from the given text. These consist of people’s names, dates, places, quantities, etc.
  • These entities are good candidate questions and are ranked based on their TF-IDF score ( a metric used to weigh a word across multiple documents )

Incorrect Option Generation

  • A Word2Vec model implemented in gensim is used to find the top 10 similar entities for a given entity. We then pick the least 4 entities as alternate options.
  • We can also pick words from the given text itself if the entity is not present in the model vocabulary

Technology Stack:

  • Frontend: HTML, CSS, Vanilla JS
  • Backend: Flask
  • IDE: VS Code
  • Design: Canva
  • Version Control: Git and GitHub
  • Database: Sqllite3

Browser Support

  • Firefox: version 4 and up
  • Chrome: any version
  • Safari: version 5.2 and up
  • Internet Explorer/Edge: version 8 and up
  • Opera: version 9 and up > Note: Support for modern mobile browsers is experimental. The website is not responsive in mobile devices until now.

MLH Fellowship( Fall 2020)

This is a hackathon project made by MLH Fellows(Fall 2020) - Pod 1.0.0 i.e. Fantastic Falcons

MLH Fellowship

Team:

"Alone we can do so little; together we can do so much."

S.No. Name Role GitHub Username:octocat:
1. Pragati Verma Frontend Developer @PragatiVerma18
2. Kshitij Kotasthane Backend Developer @kshitij86
3. Vignesh S ML @telescopic



Fantastic Falcons

Contributors ✨

Thanks goes to these wonderful people (emoji key):


Pragati Verma

💻

Kshitij Kotasthane

💻

Vignesh S

💻

This project follows the all-contributors specification. Contributions of any kind welcome!

ForTheBadge uses-git ForTheBadge uses-html ForTheBadge uses-css ForTheBadge uses-js

forthebadge made-with-python ForTheBadge built-by-developers ForTheBadge built-with-love


Share this project:

Updates