Intern Match: A Collective Intelligence Recommendation System

Author:

By Arinze Ezirim, Fidelis Zumah, George Tetteh, Isaac BOAKYE ASIRIFI and Bid Oscar Hountondji

Affiliations: Africa Collective Intelligence Lab(ACILAB)

We will have the honour of presenting this work at the conference ‘Collective Intelligence: forms, functions and evolution across species, societies, and industries’, a scientific discussion meeting organised by the at the , Rabat, Morocco from 15 to 17 May 2024, 09:00 - 17:00.

1. Introduction/Goal

1.1 Problem Statement

In today's rapidly evolving job market, internships have become an integral part of students' academic and professional journey (Zopiatis, et al., 2021). These valuable opportunities provide students with hands-on experience, exposure to real-world challenges, and a chance to apply their theoretical knowledge in practical settings. However, the process of matching students with suitable internship positions can be challenging, especially when considering their individual preferences and the specific needs of companies offering internships (Adeosun et al., 2022).

At UM6P, we currently lack a robust recommendation system that takes into account students' preferences and feedback when matching them with internship positions. As a result, the current placement process may not fully optimize the potential for students to secure internships that align with their interests and career goals. Additionally, companies may struggle to find interns who possess the specific skills and qualities they seek, leading to suboptimal outcomes for both parties involved.

1.2 Importance of the Project

The implementation of an effective internship recommendation system holds significant importance for UM6P and its students. Internships serve as a bridge between academia and industry, allowing students to acquire practical skills, build professional networks, and explore potential career paths. By facilitating successful internships that align with students' preferences, UM6P can greatly enhance the professional development and employability of its students.

Furthermore, an efficient recommendation system has the potential to strengthen UM6P's reputation and foster fruitful partnerships with companies. When students are well-matched with internships that suit their interests and skills, they are more likely to perform exceptionally well during their internships (Cappelli, 2012). This not only benefits the students themselves but also enhances the reputation of UM6P as a provider of high-quality education and talented graduates. As a result, UM6P can attract new partnerships with companies that are aligned with students' preferences and contribute to the overall growth and success of the institution.

1.3 Goal of the Project

The primary goal of this project is to develop a Collective Intelligence Internship Recommendation System that addresses the existing challenges in the internship placement process at UM6P. By leveraging the power of advanced technologies, such as OpenAI's DaVinci and Ada Models, the system aims to intelligently match students' preferences with companies' internship opportunities.

Specifically, the project seeks to accomplish the following objectives:

  • Develop a user-friendly web-based platform that allows students and companies to input their preferences and requirements for internships.
  • Utilize OpenAI's DaVinci and Ada Models to analyze and process textual data, extracting relevant information to understand students' preferences and companies' needs.
  • Implement cosine similarity techniques to determine the compatibility between students' preferences and internship positions, thereby generating personalized and accurate recommendations.
  • Incorporate a feedback mechanism that enables students and companies to provide ratings, reviews, and feedback on their internship experiences. This feedback will be used to continuously improve the recommendation algorithm and enhance the overall matching process.
  • Evaluate the effectiveness of the recommendation system by measuring student and company satisfaction levels, tracking the accuracy of matches between preferences and internships, and assessing the professional insertion rate of students into industry.

By achieving these goals, the Collective Intelligence Internship Recommendation System aims to optimize the internship placement process, improve students' internship experiences, and foster fruitful collaborations between UM6P and industry partners.

2. Approach

The Collective Intelligence Internship Recommendation System was designed as a web-based platform that allows students to interact and provide their preferences in the form of job roles, work culture, and location of companies they wish to do internship with. The approach was developed in three stages, namely:

  • Platform Architecture
  • Similarity Computation
  • Collective Intelligence Application

2.1 Platform Architecture

The architecture consists of a frontend user interface, a backend server, and a database for storing and retrieving relevant information.

2.1.1 Utilizing OpenAI Tools (DaVinci, Ada Models)

To enhance the recommendation system's capabilities, we leveraged OpenAI tools, specifically the DaVinci (text completion) and Ada (embedding generation) Models. These powerful large language models enabled the platform to analyze and process textual data efficiently, extract relevant information from students' preferences and companies' needs, and generate embedding for both the user's input and the backend datastore, which was now used in the second stage of the process.

2.1.2 Utilizing Geopy

Geopy is a Python library that provides various geocoding and geolocation functionalities. It allows developers to easily retrieve geographical information such as coordinates, addresses, and distances between locations. This was used in the Collective Intelligence Internship Recommendation System to convert the users input location into coordinates (latitude and longitude), which permitted the computation of distance between the users preferred location for internship and that of the companies.

2.2 Similarity Computation

Cosine similarity is a technique that measures the similarity between two vectors based on the angle between them. In the context of the internship recommendation system, cosine similarity was computed to assess the compatibility between a student's preferences vector and the vector of internship positions available in the server's datastore. By calculating the cosine similarity score, the platform was able to determine the degree of similarity and prioritize relevant company recommendations and this was saved to a user's matrix. The similarity computation was done using the metrics pairwise module of sklearn.

2.3 Collective Intelligence Tools and Application

The system leverages collective intelligence techniques in order to improve its accuracy and effectiveness. The description below is how collective intelligence was used to continuously refine the recommendation algorithm, based on the wisdom of the crowd to generate more accurate recommendations.

2.3.1 Pareto Front Analysis

The method of Pareto Front Analysis was used on the user’s matrix to identify the optimal solutions (a short list of companies displayed as recommendation) from the entire companies dataset. This was done by identifying the companies that are not dominated with regard to the criteria (role description, work culture and location).

A company A is said to be dominated if there exists one other company B that:

  • Performs better than company A in at least one criterion
  • Performs at least as well as company A in all other criteria

2.3.2 Feedback Mechanism and Platform Rating

The system has a feedback mechanism that helps users to review their experiences. A rating feature is also implemented, allowing users to rate the overall performance and usefulness of the system. By collecting feedback and ratings, the system can learn from past experiences and make better recommendations in the future. This is where an iterative development can become very useful given that the development team can address any issues or concerns raised by users.

2.3.3 Iterative Improvement

Iterative improvement is a fundamental aspect of our project. The goal is to enhance the recommendation system continuously. The feedback mechanism, added to the platform, helps to collect reviews and ratings from users. This is to identify areas for improvement. The analysis of these feedback will provide insights that can be used to:

  • Refine the recommendation algorithm,
  • Update preferences (by removing or adding some new criteria),
  • Optimize the matching process,
  • Update companies’ dataset.

This iterative development approach ensures that the system evolves and becomes more accurate over time.

3. Evaluation

To evaluate our recommendation system, we piloted the prototype with thirty (30) students. This allowed us to gather feedback from these users in order to improve the tool as a whole, following the process described in the "approach" section. Analyzing the collected feedback provided us with new company recommendations that we can add to our database. Additionally, several other suggestions were also made.

Regarding our algorithm, it was suggested to give more weight to the job role compared to the company culture and location. This suggestion seems relevant because the primary factor that influences the decision to join a company is typically the role one will hold. It means ensuring that a similar job role to what the user desires exists within the company, before now focusing specifically on the company's culture and location.

Several comments were made regarding the displayed output. Apart from the suggestion to add more companies, it was also suggested to consider other institutions that are not necessarily mainstream businesses. This could include educational institutions such as universities or other research facilities like laboratories. The relevance of this recommendation lies in the fact that not all students may want to work in companies. It is important, therefore, to consider these different perspectives.

Another suggestion worth mentioning is to include the links to the proposed companies in the displayed output, along with a description of the business they operate.

Finally, 62% of users gave our platform a rating of 4 out of 5, while 23% rated it 3 out of 5. Furthermore, 8% even gave it the highest rating of 5. There are no ratings below 3, which indicates that the platform is somewhat satisfactory, although improvements are necessary.

4. Lessons Learnt

This project was quite specific as it highlighted a number of key lessons for crowd computing and CI tool development.

  • Leverage crowd wisdom and user feedback: Receiving feedback on the platform from users has enabled us to identify a number of areas for improvement. This proves that the "many eyes" technique is very useful in CI.
  • Introduction of mathematical concepts in CI: This project enabled us to apply two mathematical concepts: cosine similarity and Pareto Front Analysis. This reveals the role of crowd computing in collective intelligence.
  • Incorporation of OpenAI models: The implementation of this project has also enabled us to understand that Artificial Intelligence can also be useful in Collective Intelligence. In fact, our system uses two OpenAI models (DaVinci and Ada), which are CI-based Large Language models that we leveraged to develop this Collective Intelligence Internship Recommendation System.

References

  1. Adeosun, O. T., Shittu, A. I., & Owolabi, T. J. (2022). University internship systems and preparation of young people for the world of work in the 4th industrial revolution. Rajagiri Management Journal, 16(2), 164-179.
  2. Cappelli, P. (2012). Why good people can't get jobs: The skills gap and what companies can do about it. University of Pennsylvania Press.
  3. Zopiatis, A., Papadopoulos, C., & Theofanous, Y. (2021). A systematic review of literature on hospitality internships. Journal of Hospitality, Leisure, Sport & Tourism Education, 28, 100309.