Domain name registered under domain.com for the Best Domain Challenge: http://expertlecture.online/

Inspiration

We were inspired by the lack of interaction that students have with their online lectures. We inspire to provide students the ability to reinforce their learning and knowledge of the material presented in their online lectures.

What it does

Expert Lecture takes an uploaded video or audio file of a lecture and uses natural language processing to determine the salience of the words. Once it recognizes the most important word(s) in the lecture, it generates questions that the student can answer that pertain to that lecture.

How we built it

We built Expert Lecture with python, speech recognition, and natural language processing on the backend and used flask and react on the front end.

Challenges we ran into

Being able to code and implement the speech recognition and the natural language processing was a challenge as it was a new undertaking for our group. Initially, we struggled with using Google's Speech-to-Text API so alternatively, we used Python's Speech Recognition library for performing speech recognition, with support for several engines and APIs, online and offline including CMU Sphinx (works offline), Google Speech Recognition, Google Cloud Speech API, Wit.ai, Microsoft Bing Voice Recognition, Houndify API, IBM Speech to Text, and Snowboy Hotword Detection (works offline).

Struggled to set up Flask server due to time constraints.

Accomplishments that we're proud of

Not only are we proud of our that we successfully implemented the speech recognition and natural language processing, but also our ability to work cohesively as a team.

What we learned

We learned how to successfully implement speech recognition and natural language processing in Python

What's next for Expert Lecture

We would like to expand on Expert Lecture's capacity to produce questions that are engaging and helpful by allowing the student to specify the difficulty level of the question the student is presented with such as 'Easy', 'Intermediate', 'Difficult'. From there, if the student needs more assistance, we can link websites about that topic along with the questions.

Share this project:

Updates