algo-rec-cf
Implement collaborative filtering for recommendations based on user behavior patterns. Use this skill when the user needs to build a recommendation engine from user-item interaction data, find similar users or items, or predict ratings — even if they say 'users who bought this also bought', 'similar users', or 'recommend based on behavior'.
pinned to #4e7f4f8updated last month
Ask your AI client: “install skills/algo-rec-cf”.
Requires the metahub MCP server installed in your client. Set up MCP.
mh install skills/algo-rec-cfmetahub onboarded this repo on the author's behalf.
If you own github.com/asgard-ai-platform/skills on GitHub, claim the listing to take over publishing. Your claim preserves the existing eval history and badges; only the curator label is replaced with verified-publisher on your next publish.
Stars
225
Last commit
last month
Latest release
published
- #ai-agent
- #anthropic
- #claude
- #claude-agent-skills
- #claude-code
- #coding-agent
- #knowledge-base
- #mcp
- #methodology
- #open-source
- #prompt-engineering
- #skills
- #taiwan
Automated checks the publisher passed at publish time — structure, docs, safety, and whether the artifact behaves as claimed.4e7f4f8· last month
Documentation
8 passed1 warningHomepage or repository declaredwarn
No homepage or repository declared.
Add a "homepage" or "repository" field to SKILL.md.
Description quality
52 words · 342 chars — "Implement collaborative filtering for recommendations based on user behavior pat…"
README is present and substantial
33,936 chars · 20 sections · 3 code blocks
Tags / topics declared
13 total — ai-agent, anthropic, claude, claude-agent-skills, claude-code, coding-agent (+7)
README has usage / example sections
no labeled section but 3 code blocks document usage
Homepage / docs URL declared
https://vault.asgard-ai.com/skills/
Description is substantive
Description is 52 words.
Documentation present and substantive
Documentation present (SKILL.md, 568 words).
Documentation shows usage
Documentation includes 2 code examples.
Release history
1- releasecurrent4e7f4f8warnlast month
Contents
Collaborative Filtering
Overview
Collaborative filtering recommends items based on collective user behavior patterns. User-based CF finds similar users; item-based CF finds similar items. Computes in O(U² × I) for user-based or O(I² × U) for item-based where U=users, I=items.
When to Use
Trigger conditions:
- Building recommendations from user-item interaction data (ratings, clicks, purchases)
- Finding "users like you also liked" or "frequently bought together" patterns
When NOT to use:
- When you have no interaction data (cold start — use content-based filtering)
- When item features matter more than behavior patterns (use content-based)
Algorithm
IRON LAW: CF Requires SUFFICIENT Interaction Data
With sparse matrices (< 1% fill rate), similarity computation is
unreliable. Minimum viable: each user has rated 5+ items, each item
has 5+ ratings. Below this, fallback to content-based or popularity.
Phase 1: Input Validation
Load user-item interaction matrix. Check sparsity level and filter users/items below minimum interaction threshold. Gate: Matrix sparsity < 99%, minimum interaction thresholds met.
Phase 2: Core Algorithm
User-based CF:
- Compute pairwise user similarity (cosine or Pearson correlation)
- For target user, find top-K most similar users
- Predict rating: weighted average of similar users' ratings
Item-based CF:
- Compute pairwise item similarity from co-rating patterns
- For target item, find top-K most similar items
- Predict: weighted average of user's ratings on similar items
Phase 3: Verification
Hold out 20% of interactions for testing. Compute RMSE, MAE, or precision@K / recall@K. Gate: RMSE below baseline (global mean predictor).
Phase 4: Output
Return top-N recommendations with predicted scores.
Output Format
{
"recommendations": [{"item_id": "123", "predicted_score": 4.2, "similar_items_used": 5}],
"metadata": {"method": "item-based", "similarity": "cosine", "k_neighbors": 20, "sparsity": 0.97}
}
Examples
Sample I/O
Input: 5 users × 5 items rating matrix, target: user1, item5 Expected: Predicted rating based on weighted similarity of user1's rated items similar to item5
Edge Cases
| Input | Expected | Why |
|---|---|---|
| New user, no ratings | Cannot recommend | Cold start — fallback to popularity |
| Item rated by all users | Low differentiation | High popularity ≠ personalized match |
| Single shared item | Unreliable similarity | Need multiple co-ratings for stable similarity |
Gotchas
- Scalability: User-based CF with millions of users is O(U²). Use approximate nearest neighbors (LSH) or switch to item-based CF (item catalog is usually smaller).
- Popularity bias: Popular items have more co-ratings, inflating their similarity scores. Normalize by inverse popularity.
- Implicit vs explicit feedback: Clicks/views (implicit) need different treatment than ratings (explicit). Use confidence weighting for implicit data.
- Similarity metric matters: Cosine similarity ignores rating scale differences; Pearson correlation accounts for user rating biases. Choose based on data characteristics.
- Gray sheep: Users with unusual taste patterns have no similar peers. CF fails for them — consider hybrid approaches.
References
- For matrix factorization as a scalable alternative, see
references/matrix-factorization.md - For implicit feedback handling, see
references/implicit-feedback.md
Reviews
No reviews yet. Be the first.
Related
Verification Before Completion
Evidence before assertions, always
Writing Plans
Turn specs into phased implementation plans
Test-Driven Development
Red → green → refactor discipline for any feature or bugfix
mh install skills/algo-rec-cf