maripo / CustomFilter

Google Chrome Extension
blog.maripo.org/2012/01/customblocker_release/
MIT License
65 stars 12 forks source link

AI mode: apply machine learning to learn/generalize user's set rules #155

Open sobir-git opened 1 year ago

sobir-git commented 1 year ago

Hi, thanks for the cool extension and open sourcing it.

I have a suggestion to use machine learning to learn and generalize rules set by the user. The cool part is, the model can be continuosly trained with user's set rules, produces new rules for different websites given rules on one website, reflecting user's preferences.

There's an immediate problem with applying maching learning, which I mention now, and also propose a solution. Problem: What if the algorithm produces high fase positives? In other words what if the algorithm produces rules that hide elements that user doesn't want to hide? Solution: Change the working of extension so that it hides elements (by covering them or making them transparent) instead removing from DOM, and at the same time allows users to see what is being hidden when they do certain action (e.g. hovering the mouse over the hidden element). Given this option, the user has direct access to change the algorithm-generated rules just by telling the extension to unhide the element (perhaps a small button needs to be displayed alongside the hidden element that says "unhide the element" or "remove the rule"). After this, not only the rule will be removed, but also the algorithm learns this information and improve itself.

Of course, this solution can be a separate option that users could enable in the settings. One could call it "AI mode".

This is exciting and can be even powerful if users agree to allow their created set of rules be collected by the service to train a machine learning algorithm that would work (almost) universally.