Hi all,
Recently I've been working on recommendations, specially related to social networks. One of my tasks is to investigate, create and analyze a recommendation engine capable of generating suggestions of friends, study groups, videos and related content to a registered user in a social network.
The social network that I am working on is called AtePassar, a brazilian social network for people who wants apply for positions at brazilian civil (government) services. One of the great features of this social network is because people can share their interests about studies and meet people all around Brazil with same interests or someone that will apply for the same exam as him. Can you imagine the possibilities ?
It is a social network for students into a virtual space where there are several relations of friendship, studies and even exam partners.
Since we believe in interaction between people and discovering of relevant content a real need for users inside a social network, specially finding tasted-like users which indicate the similarity of their needs and opinions, we decided to build a recommender system capable of recommending new users based on similar interests such as common friends, common videos both have watched or study groups where both have joined in, etc. We also have developed a study group recommender, which suggests relevant study groups based on the friends' study groups that they are participating and the active user is not. Finally, we also have developed a video recommender, providing suggestions for classes (on-line video classes) relevant for the users based on what his friends has already watched.
As you may have noticed that we focus on more in the collaborative filtering process, where we are more interested on finding similar users and bring unknown items closer to the active user's historical preferences as possible recommendations.
One of our priorities in this recommendation process is to always explain to the users the reason of the recommendation is presented to them. We believe it is really important for the user to know the relevance of the recommendation and even for us to improve the level of acceptance of the recommendation. If you receive a recommendation and that recommendation is joined with extra information that 4 friends of you also liked that item, it can be more meaningful than only receiving the recommendation without knowing the reasons.
Another priority for us is to provide recommendation to all users, even new users who has started using the AtePassar network and don't have sufficient information in his profile (friends, studygroups, etc) to bring relevant recommendation. I've developed a simple algorithm that it is a solution for this common problem in recommendations called 'cold start'. Cold Start happens specially for new users, where there is not enough user and item information and therefore it's hard for the recommendation system to produce recommendations. We decided to bring the most accepted recommendations from users in our social network (the most popular) and populate them as possible suggestions for new users. We know this is not the best solution, because it is not personalized, but it can bring recommendations out-of-the box in cases where we are newbies in the social network.
We are doing a poll to know from Atepassar users to know more about whether they are liking the suggestions our system is providing. More than 60% of the ones who have answered the poll said that they like most of suggestions provided. We are working harder to even improve this recommendation process bringing more content to be recommended and the utility by considering extra information in the user's profile.
Here a brief introduction (video) to the social recommender engine running at AtePassar Social Network.
In the next posts I will bring more information in a detailed view of development and explain more about recommender engines, the area I am working on also in my master thesis. I've been using also a open-source recommendation engine in this work, it is beginning but we are improving in small steps bringing new releases every month. Until now, our framework called Crab is only working for Collaborative-filtering recommendations (written in Python) and we are planning for the next releases bring Content-based ones and distributed algorithms using map-reduce features, etc.
If you want to take a look at our recommendation engine, please check it out here in this link (It is hosted in my personal GitHub repository). In a previous post in my blog I introduced the framework and I am planning to write a series of posts to deep into recommendation engines, explaining on how to use it, evaluations, etc.
I also wrote an introduction for recommendation engines if you're starting now in this machine learning field. You can check it out here.
I hope you enjoyed,
Marcel Caraciolo
AtePassar Social Network |
Since we believe in interaction between people and discovering of relevant content a real need for users inside a social network, specially finding tasted-like users which indicate the similarity of their needs and opinions, we decided to build a recommender system capable of recommending new users based on similar interests such as common friends, common videos both have watched or study groups where both have joined in, etc. We also have developed a study group recommender, which suggests relevant study groups based on the friends' study groups that they are participating and the active user is not. Finally, we also have developed a video recommender, providing suggestions for classes (on-line video classes) relevant for the users based on what his friends has already watched.
As you may have noticed that we focus on more in the collaborative filtering process, where we are more interested on finding similar users and bring unknown items closer to the active user's historical preferences as possible recommendations.
![]() |
Recommendations SideBar |
One of our priorities in this recommendation process is to always explain to the users the reason of the recommendation is presented to them. We believe it is really important for the user to know the relevance of the recommendation and even for us to improve the level of acceptance of the recommendation. If you receive a recommendation and that recommendation is joined with extra information that 4 friends of you also liked that item, it can be more meaningful than only receiving the recommendation without knowing the reasons.
Another priority for us is to provide recommendation to all users, even new users who has started using the AtePassar network and don't have sufficient information in his profile (friends, studygroups, etc) to bring relevant recommendation. I've developed a simple algorithm that it is a solution for this common problem in recommendations called 'cold start'. Cold Start happens specially for new users, where there is not enough user and item information and therefore it's hard for the recommendation system to produce recommendations. We decided to bring the most accepted recommendations from users in our social network (the most popular) and populate them as possible suggestions for new users. We know this is not the best solution, because it is not personalized, but it can bring recommendations out-of-the box in cases where we are newbies in the social network.
We are doing a poll to know from Atepassar users to know more about whether they are liking the suggestions our system is providing. More than 60% of the ones who have answered the poll said that they like most of suggestions provided. We are working harder to even improve this recommendation process bringing more content to be recommended and the utility by considering extra information in the user's profile.
Here a brief introduction (video) to the social recommender engine running at AtePassar Social Network.
In the next posts I will bring more information in a detailed view of development and explain more about recommender engines, the area I am working on also in my master thesis. I've been using also a open-source recommendation engine in this work, it is beginning but we are improving in small steps bringing new releases every month. Until now, our framework called Crab is only working for Collaborative-filtering recommendations (written in Python) and we are planning for the next releases bring Content-based ones and distributed algorithms using map-reduce features, etc.
If you want to take a look at our recommendation engine, please check it out here in this link (It is hosted in my personal GitHub repository). In a previous post in my blog I introduced the framework and I am planning to write a series of posts to deep into recommendation engines, explaining on how to use it, evaluations, etc.
I also wrote an introduction for recommendation engines if you're starting now in this machine learning field. You can check it out here.
I hope you enjoyed,
Marcel Caraciolo
Thanks for sharing such a great information for Python Training.Python programming language is using the the most f the company.Python Course very useful for you job.
ReplyDeletePython Classes in Chennai
Welcome to Wiztech Automation - Embedded System Training in Chennai. We have knowledgeable Team for Embedded Courses handling and we also are after Job Placements offer provide once your Successful Completion of Course. We are Providing on Microcontrollers such as 8051, PIC, AVR, ARM7, ARM9, ARM11 and RTOS. Free Accommodation, Individual Focus, Best Lab facilities, 100% Practical Training and Job opportunities.
ReplyDelete✔ Embedded System Training in chennai
✔ Embedded System Training Institute in chennai
✔ Embedded Training in chennai
✔ Embedded Course in chennai
✔ Best Embedded System Training in chennai
✔ Best Embedded System Training Institute in chennai
✔ Best Embedded System Training Institutes in chennai
✔ Embedded Training Institute in chennai
✔ Embedded System Course in chennai
✔ Best Embedded System Training in chennai
Embedded system training: Wiztech Automation Provides Excellent training in embedded system training in Chennai - IEEE Projects - Mechanical projects in Chennai. Wiztech provide 100% practical training, Individual focus, Free Accommodation, Placement for top companies. The study also includes standard microcontrollers such as Intel 8051, PIC, AVR, ARM, ARMCotex, Arduino, etc.
ReplyDeleteEmbedded system training in chennai
Embedded Course training in chennai
Matlab training in chennai
Android training in chennai
LabVIEW training in chennai
Robotics training in chennai
Oracle training in chennai
Final year projects in chennai
Mechanical projects in chennai
ece projects in chennai
Excellent post!!!.
ReplyDeletelenovo thinkpad service centers
lenovo ideapad service center
Excellent post!!!.
ReplyDeletejava real time projects
be project in chennai
for preparing bank exam and group exam , we are offering an online test model questions papers
ReplyDeleteBank Exam Questions and Answers
Group Exam Questions and Answers
Keep on posting these types of articles. I like your blog design as well. Cheers!
ReplyDeleteBest B.Tech College in Noida
Big Data and Hadoop is an ecosystem of open source components that fundamentally changes the way enterprises store, process, and analyze data.
ReplyDeletepython training in bangalore
aws training in bangalore
artificial intelligence training in bangalore
data science training in bangalore
machine learning training in bangalore
hadoop training in bangalore
devops training in bangalore
corporate training companies
ReplyDeletecorporate training companies in mumbai
corporate training companies in pune
corporate training companies in delhi
corporate training companies in chennai
corporate training companies in hyderabad
corporate training companies in bangalore
Gaining Python certifications will validate your skills and advance your career.
ReplyDeletepython certification
Amazing content.
ReplyDeleteData Mining Service Providers in Bangalore
Thanks for sharingData Mining software service providers
ReplyDeletepython training in bangalore | python online taining
ReplyDeleteaws training in bangalore | aws online training
artificial intelligence training in bangalore | artificial intelligence online training
machine learning training in bangalore | machine learning online training
data science training in bangalore | data science online training
Great Article
ReplyDeleteArtificial Intelligence Projects
Project Center in Chennai
JavaScript Training in Chennai
JavaScript Training in Chennai
This professional hacker is absolutely reliable and I strongly recommend him for any type of hack you require. I know this because I have hired him severally for various hacks and he has never disappointed me nor any of my friends who have hired him too, he can help you with any of the following hacks:
ReplyDelete-Phone hacks (remotely)
-Credit repair
-Bitcoin recovery (any cryptocurrency)
-Make money from home (USA only)
-Social media hacks
-Website hacks
-Erase criminal records (USA & Canada only)
-Grade change
-funds recovery
Email: onlineghosthacker247@ gmail .com
Studyprovider has experts team are giving the homework help, assignment help, report, thesis, research writing services and management assignment help available 24/7 seven days a week contact now.
ReplyDelete