Skip to content

Repository for the OpenEdu educational portal. Project developed under the deploy(impact) 2022 volunteering program organized by women++.

License

Notifications You must be signed in to change notification settings

slashlan/deploy-impact-22-openedu-e

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

OpenEdu platform (Wikimedia CH) - Deploy impact 2022



Project logo

OpenEdu.CH Program Status


📝 Table of Contents

🧐 Problem Statement

OpenEdu.ch is an open education resources (OER) platform. Its mission is to enable the sharing of OER resources and fostering collaboration between educators, OER creators and students.

IDEAL:

  • The content of the website is easy to navigate and the search functionality is intuitive and provides sufficient and organized information to the users of the portal with suggestions of other related entries.
  • Wikimedia Community and Educators can easily upload new content, the uploading process is faciliated with automatic tools and the uploading forms are comfortable to understand and navigate.
  • The Scientific Board can approve or modify the newly uploaded content quicker based on the automatic testing functions.The new relevant content is also proposed automatically based on the parametrization given by the Moderators.
  • Users can contact the other users for open collaboration.

REALITY:

  • Unrefined filters for content navigation.
  • Lack of ontology structuring the resources.
  • Only manual actions are needed for content upload and moderation.
  • Very long and complicated upload fom
  • No multilingual support and the resources are described and created in multiple languages.

CONSEQUENCES:

  • Difficulty finding relevant resources on the website and in the web. Unintuitive navigation on the website.
  • Upload of new resources is manual and complicated.
  • Fully manual moderation of the newly proposed content which hinders addition of bigger number of resources.
  • Impeded cooperation between educators due to lack of available contact information.

💡 Idea / Solution

A complete revision of the knowledge management platform as well as the uploading and moderation processes of the OpenEdu.ch platform. In a nutshell, our product includes:

  • Knowledge management system based on a new ontology that is thorough, flexible and scalable
  • User-friendly navigation of the ontology based on filters
  • Powerful multi-language search engine based on semantic similarity
  • Streamlined uploading processes for new educational materials from the OpenEdu community
  • Refined moderation system to prevent content duplications and copyright violations.

Overview

Our value proposition is AI Engine encompassing the following:

  • Versatile Ontology for Knowledge Management allowing easier browsing, searching and fostering collaboration between educators

  • Mulitlingual Ontology Support for enabling navigating materials created and described in foreign languages

  • Moderation Board Workflow designed for more efficient approval process of the new content

  • Uploading Process simplified and facilitated by organized forms and automatic functionalities

  • AI-based features facilitating the analysis of the new content and its moderation, as well as linking related materials

    • Moderation, Upload, Search, Recommendation,..
  • Semantic Search for enriched results of the content querying

  • Figma Prototype with UI/UX Design

  • Extending the available content by suggesting new relevant content with web scrapers.

Repository Structure:

The generic schema of folders created for documentation is as following:

  • src: Implementation and parametrization of the module.
  • docs: Descritpive documentation of the solution and presentation [to add].

These folders are then sub-divided into different AI Engine modules, which include (depending on the presence of the relevant files):

  • Data Architecture: it includes backend and frontend deliverables
  • Data: it includes current database content, used datasets and data scraping
  • Ontology: includes new ontology design implemented in Protégé, patterns for future expansion of the ontology and multilingual support
  • NLP: AI-based features for semantic search, recommendations.

Moreover, please note:

The detailed tree for the repo, can be found here

⛓️ Limitations

  • Data Architecture solution: The solution does not cover a database schema, webservices setup and scalability solutions. This part has been moved out of the scope of the project due to the time constraint within the 6 week program.

🚀 Future Scope

  • Data Architecture and Backend Development: Due to internal project scoping and main requirements of the stakeholders, the current architectural proposition consists of the UML diagram of a relation DB mapped to the newly proposed ontology and the result of the comparative research. The further development suggested by us, considers shifting the infrastructure to the cloud environment including a composition of microservices containing postgreSQL database and elasticsearch (a distributed search and analytics engine).

  • Ontology extensions: Recommender-based ontology design for discovery of new topics, implementing conceptualization of how to expand the ontology by including learning paths, ratings etc, and adding user-reviewing functionalities to the platform.

  • NLP: Introducing the algorithmic user-based recommendation for more targeted suggestions.

Prerequisites

Requirements of the installed packages and versions are described in the domain-specific folders.

⛏️ Built With

Languages

  • Python 3.8
  • OWL 2 Web Ontology Language
  • RDF (Resource Description Framework)

✍️ Authors

Resources

Link to our presentation

Link to our Miro board

Link to our google drive

Link to our Figma prototype

Recognition

deploy
womenplusplus

Repository tree

```bash

$ tree
.
|-- LICENSE
|-- README.md
|-- docs
|   |-- Further Technologies
|   |-- UniFire on Fire OpenEduE.pdf
|   |-- Visual_OpenEdu_E.png
|   `-- Work Documentation
|       |-- Architecture
|       |   |-- Discover Django!.pdf
|       |   |-- Figma.pdf
|       |   `-- UI_UX Plan.pdf
|       |-- Data
|       |   `-- Databases_-_SQL_or_NoSQL.pdf
|       |-- NLP Pipeline
|       |   `-- Moderation
|       |       `-- Wiki Duplicates info.pdf
|       `-- Ontology
|           |-- OER_suggestions - Arkusz1.pdf
|           `-- Ontology articles and references.pdf
|-- src
|   |-- Architecture
|   |   |-- Backend
|   |   |   `-- ontology_mapping_to_RDB_database_schema_UML_diagram.png
|   |   `-- UI Design
|   |       |-- README.md
|   |       `-- images
|   |           |-- ...
|   |           |-- 1_Main Page.png
|   |           `-- test.MD
|   |-- Data
|   |   |-- Database
|   |   |   `-- openedu_db_dump.txt
|   |   |-- Datasets
|   |   |   |-- Wikimedia & Education Database - Database.csv
|   |   |   `-- openedu_metadata_schema.xlsx
|   |   |-- Scraped Data
|   |   |   |-- ResearchGate
|   |   |   `-- Wiki Projects
|   |   `-- Scraped Metadata
|   |-- Installation
|   |   |-- linux
|   |   `-- windows
|   |-- NLP
|   |   |-- Content Analysis
|   |   |   |-- Analysis Apps
|   |   |   |-- Language_detection.ipynb
|   |   |   `-- Topics Modeling
|   |   |       |-- OpenEdu
|   |   |       |   |-- Experiments Tracking
|   |   |       |   `-- OpenEdu_pycaret.ipynb
|   |   |       |-- Wikimedia
|   |   |       |   `-- Wikimedia_pycaret.ipynb
|   |   |       `-- Wikipedia
|   |   |           `-- Wikipedia_pycaret.ipynb
|   |   |-- Content Moderation
|   |   |   |-- Duplicates Discovery
|   |   |   |-- Euphemism Detection and Identification
|   |   |   `-- content_moderator.py
|   |   |-- Content Recommendation
|   |   |   |-- Existing OpenEdu Contents
|   |   |   |   `-- Similarity Search
|   |   |   |       `-- openedu_recommender_by_similarity.ipynb
|   |   |   `-- External Contents
|   |   |-- Content Search
|   |   |   `-- Demo App
|   |   |-- Content Translation
|   |   |-- Content Upload
|   |   |   |-- AI-Autofill
|   |   |   |   |-- AI assistant.ipynb
|   |   |   |   |-- Data
|   |-- Ontology
|   |   |-- Access
|   |   |   |-- Exploring the ontology using OWLready2.ipynb
|   |   |-- Design
|   |   |   |-- Multilingual Support
|   |   |   |-- Patterns
|   |   |   |   |-- Conceptual Map of Ontology Patterns.jpg
|   |   |   |-- VOWL viuslization.png
|   |   |   |-- final ontology design.excalidraw
|   |   |   |-- final ontology designX3.png
|   |   |   |-- openedu_metadata_schema.xlsx
|   |   |   |-- taxonomy.png
|   |   |   |-- test_resource4.png
|   |   |   `-- unifire-openedu.owl
|   |   |-- Multilingual Support
|   |   |   `-- files
|   |   |       |-- forms
|   |   |       `-- settings.py
|   `-- UniFire AI Engine.PNG
`-- test
    |-- Ontology
    |   |-- Access
    |   `-- Evaluation

120 directories, 396 files

```

About

Repository for the OpenEdu educational portal. Project developed under the deploy(impact) 2022 volunteering program organized by women++.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 97.6%
  • Jupyter Notebook 2.2%
  • Other 0.2%