Do we need to check in from romote?
Send an email to Mindi and Leslie
A note on collaborative filtering. I’ve found that most people in the industry is using Spark or other distributed framework to do it because in most cases it’s a huge matrix decomposition (100M products x 10M customers for instance). Would we be able to use fastai directly or is there a way to customize that?
I don’t think they’re any different, but Jeremy mentioned he wanted to try to avoid using more abstract libraries if possible… so implementing it kind of from scratch to show the intuition behind it
International fellows need to check in remotely?
No, you don’t have to.
Yes that’s what I was thinking.
a*b gives the element-wise product, not dot product. dot product would be torch.mm()
The sum gave us a 2x1 matrix.
Dot product of 2x2 and 2x2 matrix should give us 2x2 matrix.
where does n_factors come from in init()?
it’s a global variable in this notebook
Thanks, seems like an odd way of passing it in … but I guess it’s not a huge problem.
Yes the dimensions don’t match
I agree, but I think it’s a consequence of the gap between working in a notebook for exploratory work, then packaging code up for reusability, deployment, and other software engineering goodness.
Jeremy (I think) tweeted out a link to Jake Vanderplas’ series called “Reproducable Data Analysis in Jupyter” that shows a reasonable workflow to move from one to the other. https://www.youtube.com/watch?v=_ZEWDGpM-vM&list=PLYCpMb24GpOC704uO9svUrihl-HY1tTJJ
It may be this one
Could class EmbeddingDot reuse the DotProduct class from before?