Inspiration
As someone interested in pursuing graduate school, looking into research areas and the professors who do that research is something that can be a somewhat daunting task. I created Research-Search to help people find research areas and professors with a smooth graphical interface.
What it does
Research-Search will scrape the inputted URL to a website listing university professors and find the bios of any listed faculty. From there, we utilize PCA and K-Means clustering to create a visual of the professors and how they relate to each other.
How we built it
The web app was created utilizing a dockerized FastAPI backend that uses BeautifulSoup to scrape an inputted university URL. The visualizations are done using d3.js with the data from the K-Means clustering to display the graphics on the frontend. The backend utilizes a Redis database for caching results.
Challenges we ran into
I had many issues trying to figure out how to display the graphical representation on the frontend. I eventually found something I was happy with after lots of trial and error.
Accomplishments that we're proud of
I was very proud to create a visually enticing frontend that allows the user to see how closely certain professors' research areas relate to each other.
What we learned
I learned about various unsupervised machine learning techniques (PCA and K-Means) and how to implement them within a scalable web system.
What's next for Research-Search
I would like to improve the visualization to include more than just the people listed on the website, but also people who have worked alongside these professors (e.g. common co-authors at other institutions). Additionally, I would like to add more detailed information about the clustering, perhaps using topic modeling techniques.
Built With
- docker
- fastapi
- python
- redis
- scikit-learn
- tailwind
Log in or sign up for Devpost to join the conversation.