Simon Funk, known for the Netflix Prize matrix factorization write-up, writes on machine learning, fiction, and DIY projects.
Commenters credit his Netflix Prize post with introducing gradient-descent matrix factorization for recommenders, and also link his fiction and his views on automation.
I like matrix factorization models too !
Most of the netflix prize style models will have problems with this sort of data though. The problem here is that you only have positive data, and no negative data: you can assume that artists the user listened are positive, but there is no explicit negative votes for artists the user didn’t like. This means that there is no gradient for Funk style (http://sifter.org/~simon/journal/20061211.html) SGD solvers to descend.
Better matrix factorization models would be something like the weighted ALS (http://labs.yahoo.com/files/HuKorenVolinsky-ICDM08.pdf) or BPR (http://www.ismll.uni-hildesheim.de/pub/pdfs/Rendle_et_al2009-Bayesian_Personalized_Ranking.pdf) approaches which can handle this sort of thing directly.
Having said all that - this post isn’t about CF. Its just trying to explain some basic concepts in information retrieval using finding similar artists as a problem.
I'm an outlier on this one, but I thought Consider Phlebas was bad and disappointing.
The Culture was cool and interesting, and the world had some interesting detail but everything else was pretty weak. I generally agree with this review: https://www.goodreads.com/review/show/48178154?book_show_action=true
While we're on the topic I also really didn't like the three body problem.
I loved Permutation City and most of Ted Chiang (particularly Liking What You See: A Documentary, and The Lifecycle of Software Objects).
I love True Names by Vernor Vinge.
I loved this: https://sifter.org/~simon/AfterLife/
Hopefully someone finds this helpful, sometimes an anti-recommendation can be just as useful for calibration as a recommendation. Here's some of both.
If anyone reading this agrees - I'd love a suggestion from you.
Simon Funk [1] makes a great point that in a mixed capitalist/welfare state, automation decreases efficiency.
Imagine a worker, earning the bare minimum to survive, who gets replaced by a robot with slightly lower operating cost. Now the robot is consuming slightly fewer resources that the worker would have, but the worker doesn't stop consuming resources in turn! Unless you're willing to kill the worker, he goes on welfare instead, and the economy as a whole is burning almost 2x more resources. Sure, the employer is spending slightly less, while screwing over the economy via prisoner's dilemma logic.
[1] http://sifter.org/~simon/journal/20160704.html
Good suggestion for dimensionality reduction. Most ready made packages you will find under the name PCA though (principal component analysis). It's almost always good to reduce dimensionality first, depending on the component number you choose, you can remove a lot of the noise from the data.
I'm curious why it didn't work for music recommendation for you. In the netflix challenge for movie recommendation, pretty much everyone ended up using SVD-based methods and variations thereof.
If anyone is interested, this is the most accessible write-up of the idea I know: http://sifter.org/~simon/journal/20061211.html
The author is still underselling the significance of the progress made during the first years IMO. The simple idea that is still behind most practical recommender systems (using gradient descent to do SVD to complete the rating matrix) was first described in 2006 by Simon Funk [1]. Koren, who ended up taking home a big part of the prize, recently wrote another paper about how that basic idea still outperforms most “AI” (deep neural) recommenders today [2].
[1] https://sifter.org/~simon/journal/20061211.html
[2] https://arxiv.org/abs/1905.01395
It is both. Trust and recommendations are mixed together in an SVD like algorithm as described in http://sifter.org/~simon/journal/20061211.html . On top of that jaanix lets you adjust all your personal preferences in real-time.
The biggest effect is that it is discouraging trolls and spammers, as there's no front page they can spam or troll. The downside is that the critical mass required to make the site truly social is a lot higher, and unfortunately we have not figured out how to gain enough users for it to really shine.