Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • Sign in / Register
Minds
  • Group overview
  • Epics 49
    • List
    • Roadmap
  • Issues 1,031
  • Merge Requests 132
  • Security & Compliance
  • Packages
  • Members
Collapse sidebar
  • Minds
  • Epics
  • &85

Open
Opened 3 months ago by Mark Harding

Recommendation Engine (WIP)

Big and dangerous to Feature. Backend / recommendation engine to be done by Mark. UI can be divvied up.

Current Recommendation Systems in Production

(need more placements, other apps have this stuff everywhere)

  • Search Results
  • Discovery Feeds
  • Suggested Channels
  • Suggested Groups
  • Suggested Hashtags
  • Boosts (outlier)
  • Potential
  • Notifications
  • Empty feeds

Hypotheses

  • Increased core, casual users
  • User will subscribe to more channels
  • User will join more groups
  • User will engage on content more often (Votes, Comments, Reminds)

Factors for Recommendation Logic (in no particular order)

Data (only with consent and controls to delete from being used)

  • Personal connection (phone number only with consent) (email?) - mobile only
  • Top feeds based on tags
  • Location
  • NSFW
  • Friends of friends
  • Birthday
  • Channels/groups that are posting hashtags that you frequently vote on, post about, or have set as your preferred hashtags
  • Channels or groups your subscriptions are subscribing to / joining
  • Channels or groups the subscriptions of your subscriptions are subscribing to / joining
  • Amount of engagement receive

Legitimacy of channels

  • Recently active
  • Banner setup
  • Avatar setup
  • Social links
  • Onchain setup
  • Strikes
  • Messenger setup

Architecture

  • Plugable algorithms that can be swapped in and out
  • Unleash integration for easily turning these on / off
  • A/B to metrics index for better results
  • experimentId
  • expirementVariant
  • actionsSource
  • Apply experiments to action stored. Unleash client configuration needs to be tracked so we can tell what experiments are running
  • Investigate GEO with elasticsearch

Top Level Concerns

  • Data collection without breach of privacy
  • Activity stream/console with privacy controls
  • Consent required for more sensitive information to be used (phone number, location, birthday)
  • Transparency about why specific recommendations are served to you
  • Self-curation and feed control without censorship
  • Better controls to hide or see more of certain tags
  • Scalable, non-stigmatized system for classifying content
  • Politics tag?
  • Need better classification/tagging on all content, channels and groups

Collaborative recommendations:

  • https://en.wikipedia.org/wiki/Netflix_Prize
  • https://en.wikipedia.org/wiki/Collaborative_filtering
  • The high-level idea is: similar people like the same things… i.e. if I like the Movies X and Y, and another user like X, Y and Z…. then I may like Z.

Correlation with T3?

  • Trusted channels based on community / decentralized consensus mechanism
  • Trust that we are not recommending bad actors
  • Building a web of a trust you enter where you get trusted recommendations
  • Push -> https://gitlab.com/minds/engine/blob/master/Core/Notification/Extensions/Push.php
  • Views -> https://gitlab.com/minds/front/blob/master/src/app/modules/notifications/notification.component.html#L19

Next Steps

  • Design mobile consent and address sync
  • Design suggestions for new users
  • Design privacy console
  • Mark/Brian to look at architecture and plan out

Milestones

Milestone Link
TODO

Merge Requests & Branches

TODO

Mockups

TODO

Developers

Developer Focus
@edgebal backend
Edited 1 week ago by Jack Ottman
To Do
Nov 12, 2019
Start date
Fixed: Nov 12, 2019
Inherited: None
Feb 11, 2020
Due date
Fixed: None
Inherited: Feb 11, 2020
-
2
Labels
Product::Newsfeed Status::Design
None
Ancestors
None
7
7 participants
user avatar
user avatar
user avatar
user avatar
user avatar
user avatar
user avatar
Notifications
  • Epics and Issues
  • Roadmap
0 4
  • Remember search history
    minds/engine#1339
  • Banned and Blocked Channels appearing in suggested search results
    minds/engine#1053
  • Finding channels consentually via address book
    minds/engine#1287
    Avatar for Mark Harding
  • Discovery / Recommendations (UX)
    minds/front#2410
    Sprint:01/29 Abatic Aenome
    Avatar for Michael Bradley

  • Mark Harding @markeharding added Product::Newsfeed Status::Validation scoped labels 3 months ago

    added scoped labels

  • Mark Harding @markeharding changed the description 3 months ago

    changed the description

  • Jack Ottman @jotto141 changed title from Discovery recap to Recommendation Engine 3 months ago

    changed title from to

  • Jack Ottman @jotto141 changed title from Recommendation Engine to Discovery / Recommendations Launch 3 months ago

    changed title from to

  • Jack Ottman @jotto141 changed title from Discovery / Recommendations Launch to Discovery / Recommendations 3 months ago

    changed title from Discovery / Recommendations to Discovery / Recommendations

  • Jack Ottman @jotto141 changed the description 3 months ago

    changed the description

  • Jack Ottman @jotto141 changed title from Discovery / Recommendations to Discovery / Recommendations (UX) 3 months ago

    changed title from Discovery / Recommendations to Discovery / Recommendations

  • Bill Ottman :dragon_face: @ottman changed start date to Nov 12, 2019 3 months ago

    changed start date to Nov 12, 2019

  • Bill Ottman :dragon_face: @ottman changed finish date to Dec 17, 2019 3 months ago

    changed finish date to Dec 17, 2019

  • Brian Hatchet :speech_balloon: @brianhatchet changed finish date to Jan 8, 2020 2 months ago

    changed finish date to Jan 8, 2020

  • Brian Hatchet :speech_balloon: @brianhatchet changed the description 2 months ago

    changed the description

  • Brian Hatchet :speech_balloon: @brianhatchet added 1 deleted label 2 months ago

    added 1 deleted label

  • Bill Ottman :dragon_face: @ottman changed finish date to Jan 21, 2020 1 month ago

    changed finish date to Jan 21, 2020

  • Bill Ottman :dragon_face: @ottman changed finish date to Jan 28, 2020 1 month ago

    changed finish date to Jan 28, 2020

  • Bill Ottman :dragon_face: @ottman changed finish date to Jan 27, 2020 1 month ago

    changed finish date to Jan 27, 2020

  • Bill Ottman :dragon_face: @ottman added Status::Design scoped label and automatically removed Status::Validation label 1 month ago

    added scoped label and automatically removed label

  • Bill Ottman :dragon_face: @ottman removed Status::Design label 1 month ago

    removed label

  • Bill Ottman :dragon_face: @ottman added Status::Design scoped label 1 month ago

    added scoped label

  • Ben Hayward @benhayward.ben mentioned in issue front#1359 (closed) 1 month ago

    mentioned in issue front#1359 (closed)

  • Bill Ottman :dragon_face: @ottman added issue front#2410 4 weeks ago

    added issue front#2410

  • Bill Ottman :dragon_face: @ottman added issue engine#1287 4 weeks ago

    added issue engine#1287

  • Jack Ottman @jotto141 changed title from Discovery / Recommendations (UX) to Recommendation Engine 1 week ago

    changed title from to

  • Ben Hayward @benhayward.ben added issue engine#1053 from epic &94 1 week ago

    added issue engine#1053 from epic &94

  • Jack Ottman @jotto141 changed the description 1 week ago

    changed the description

  • Jack Ottman @jotto141 changed title from Recommendation Engine to Recommendation Engine (WIP) 1 week ago

    changed title from Recommendation Engine to Recommendation Engine

  • Ben Hayward
    Ben Hayward @benhayward.ben · 1 week ago

    In terms of search results, it's important that we make algorithms more bespoke for individual feeds.

    As an example:

    User search should match much more explicitly than a group search - a user searching groups may search music and doesn't want the group with 3 members named music.

    If someone searches, for example, FretzCapo, in groups and he has many big groups, his groups should probably appear at least somewhere, rather than just groups with his name.

    image

  • Ben Hayward @benhayward.ben added issue engine#1339 1 day ago

    added issue engine#1339

  • Fretz Capo
    Fretz Capo @FretzCapo · 1 day ago

    Please return the functionality to search within a group by adding search to the Discovery bar on Minds so that the functionality is also spread throughout channels, blogs and media.

    Before the redesign for discovery we were able to perform a search within a group. For instance, in one of my music groups, I could perform a search for an artist like "Queen" and I'd get a list of all posts by them. There was a url that I could copy and save and use for my own purposes as well.

    Please return this functionality and please also allow internal links so I can provide the links in posts.

    Edited by Fretz Capo 1 day ago
  • Brian Hatchet :speech_balloon: @brianhatchet removed the finish date 9 hours ago

    removed the finish date

  • Fretz Capo
    Fretz Capo @FretzCapo · 2 hours ago

    Please consider adding the option of a similar layout of tiled images, currently available only in discovery on the app, to the web browser as well. This would be a real upgrade to the cumbersome flat feed used for browsing images

Please register or sign in to reply