The stack is basic. I develop on an old lenovo laptop and test for a few dozen frames(you can learn a lot without a CUDA GPU) before pushing it to a desktop with a cheap nvidia card. It uses pytorch and pyboy, and the model is just a couple Conv2d expansions and compressions before hitting a Linear layer outputting predicted reward for certain keypresses(basically). The model training is based off of deep Q learning. I'm looking at a pytorch tutorial[1] when I get stuck, but I'm trying to fumble around and try it myself as much as possible before looking at it.
I have an idea to have variable Q training propagation based on the amplitude of the reward so that bigger rewards propagate more, but I haven't got there yet.
Here is a great video on reinforcement learning[2].
It's not monetizable, but I'm playing with reinforcement learning. It's incredible to watch a computer "learn" to play super mario using just input pictures.
Neural nets in general are much less complicated than I thought they would be, at least as a practitioner.
Almost all news and social media site structure is derived from research using the Skinner box[1, scroll down to A Man, a Plan, and a Rat in a Box]. Researching operant conditioning, they found that introducing randomness to some sort of dopamine release would cause habitual behavior of the action that caused dopamine release. This reaction to novelty was then successfully transferred to humans. This is most obvious on Reddit IMO, with "gems" interspersed between vapid, uninteresting posts.
I'm actually making an alternative to Facebook that shows posts chronologically in the feed instead of using machine learning algorithms to make them addictive. I also plan to not include a share button on posts. I think these two changes would make it far less addictive and better for users.
Not to be too spammy, but discovery of such sites is why I'm making Feldot, a social domain aggregation site. There are so many sites available out there like this to browse, but we never see them when using existing search engines.
I have an idea to have variable Q training propagation based on the amplitude of the reward so that bigger rewards propagate more, but I haven't got there yet.
Here is a great video on reinforcement learning[2].
[1] https://pytorch.org/tutorials/intermediate/mario_rl_tutorial...
[2] https://www.youtube.com/watch?v=93M1l_nrhpQ&t=3381