<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Mohammed Favas</title>
    <description>The latest articles on DEV Community by Mohammed Favas (@favasmhd).</description>
    <link>https://dev.to/favasmhd</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2963872%2F1b541f47-156a-430f-a9cc-20fa8ad1a538.png</url>
      <title>DEV Community: Mohammed Favas</title>
      <link>https://dev.to/favasmhd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/favasmhd"/>
    <language>en</language>
    <item>
      <title>Struggling with Presenting My Graph-Based Recommendation System</title>
      <dc:creator>Mohammed Favas</dc:creator>
      <pubDate>Fri, 21 Mar 2025 16:26:15 +0000</pubDate>
      <link>https://dev.to/favasmhd/struggling-with-presenting-my-graph-based-recommendation-system-4m9l</link>
      <guid>https://dev.to/favasmhd/struggling-with-presenting-my-graph-based-recommendation-system-4m9l</guid>
      <description>&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I'm working on a graph-based video recommendation system, inspired by a research paper. Unlike traditional Collaborative Filtering (CF) or Content-Based Filtering (CBF), my approach models user interactions as a graph, allowing for a more structured and scalable way to determine recommendations.&lt;/p&gt;

&lt;p&gt;However, when presenting my project, I faced skepticism. People questioned my claims about scalability and effectiveness, and I realized that just stating it's better isn’t enough—I need stronger data-backed arguments.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;How My Recommendation System Works&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The system operates in five main steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Building a User-Video Graph:&lt;br&gt;
Users are connected to the videos they've watched, forming a bipartite graph.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Building a Video Similarity Graph:&lt;br&gt;
Videos are connected based on shared audience patterns, forming a weighted similarity network.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clustering the Videos:&lt;br&gt;
I use modularity-based clustering (Leiden algorithm) to group similar videos.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Ranking Videos Using Centrality Metrics:&lt;br&gt;
Each video is ranked using Degree, Betweenness, Closeness, Aggregate, and Ego-Focused Centrality to determine its importance in the network.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Generating Personalized Recommendations.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The system recommends videos based on the user's cluster and centrality scores.&lt;/p&gt;

&lt;p&gt;The main intuition behind this is that if users naturally form watching behavior clusters, then videos that are central in those clusters should make good recommendations.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Where I'm Struggling&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;When I presented this, I compared it against CF and CBF in a table, explaining why graph-based approaches are more scalable. I argued that since everything is modeled as a graph, migrating to a graph database or cloud-based system should be more seamless.&lt;/p&gt;

&lt;p&gt;But the response was:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Anyone can claim something is scalable, but without numbers, it doesn’t mean much."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;And honestly, they’re not wrong. I need quantifiable evidence to show:&lt;/p&gt;

&lt;p&gt;Why a graph-based approach is easier to scale than CF/CBF.&lt;/p&gt;

&lt;p&gt;How I can visually present this in a way that makes the advantage clear.&lt;/p&gt;

&lt;p&gt;Whether there are any standard performance benchmarks for this type of comparison.&lt;/p&gt;

&lt;p&gt;Looking for Advice&lt;/p&gt;

&lt;p&gt;Has anyone worked on a similar graph-based recommendation approach? What are some good ways to compare and validate its performance against CF/CBF? Any insights on how to present this data in a way that’s convincing to technical and non-technical audiences?&lt;/p&gt;

&lt;p&gt;Would love to hear your thoughts!&lt;/p&gt;

</description>
      <category>flutter</category>
      <category>python</category>
      <category>leiden</category>
      <category>graph</category>
    </item>
  </channel>
</rss>
