{"action":"created","comment":{"url":"https://api.github.com/repos/googledatalab/notebooks/pulls/comments/76829881","id":76829881,"diff_hunk":"@@ -0,0 +1,263 @@\n+{\n+ \"cells\": [\n+  {\n+   \"cell_type\": \"markdown\",\n+   \"metadata\": {},\n+   \"source\": [\n+    \"# WALS on Movielens\\n\",\n+    \"\\n\",\n+    \"This notebook read in the csv files produced by the previous notebook and builds a WALS model. \\n\",\n+    \"\\n\",\n+    \"A quick note on the WALS model. At its core, the model takes a sparse matrix A, and produces to dense matrices U and V such that the [Frobenius norm](https://en.wikipedia.org/wiki/Matrix_norm#Frobenius_norm) of (A - UV) is small. In fact the model does a little more than this: it minimizes the error of\\n\",\n+    \"\\n\",\n+    \"`||W \\\\odot (A - U V) ||_F^2 + \\\\lambda (||U||_F^2 + ||V||_F^2)`\\n\",","path":"samples/TensorFlow factor model for movie rating prediction/3. Running WALS on Movielens.ipynb","position":13,"original_position":13,"commit_id":"2241b93379f966f35fdfd41547770f8b45e51381","original_commit_id":"2241b93379f966f35fdfd41547770f8b45e51381","user":{"login":"brandondutra","id":21314536,"avatar_url":"https://avatars.githubusercontent.com/u/21314536?v=3","gravatar_id":"","url":"https://api.github.com/users/brandondutra","html_url":"https://github.com/brandondutra","followers_url":"https://api.github.com/users/brandondutra/followers","following_url":"https://api.github.com/users/brandondutra/following{/other_user}","gists_url":"https://api.github.com/users/brandondutra/gists{/gist_id}","starred_url":"https://api.github.com/users/brandondutra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandondutra/subscriptions","organizations_url":"https://api.github.com/users/brandondutra/orgs","repos_url":"https://api.github.com/users/brandondutra/repos","events_url":"https://api.github.com/users/brandondutra/events{/privacy}","received_events_url":"https://api.github.com/users/brandondutra/received_events","type":"User","site_admin":false},"body":"Added an image for the big formula and for odot. I did not add images for  the simple statements like A_{ij}. ","created_at":"2016-08-30T16:25:29Z","updated_at":"2016-08-30T16:25:29Z","html_url":"https://github.com/googledatalab/notebooks/pull/17#discussion_r76829881","pull_request_url":"https://api.github.com/repos/googledatalab/notebooks/pulls/17","_links":{"self":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/comments/76829881"},"html":{"href":"https://github.com/googledatalab/notebooks/pull/17#discussion_r76829881"},"pull_request":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/17"}}},"pull_request":{"url":"https://api.github.com/repos/googledatalab/notebooks/pulls/17","id":83175817,"html_url":"https://github.com/googledatalab/notebooks/pull/17","diff_url":"https://github.com/googledatalab/notebooks/pull/17.diff","patch_url":"https://github.com/googledatalab/notebooks/pull/17.patch","issue_url":"https://api.github.com/repos/googledatalab/notebooks/issues/17","number":17,"state":"open","locked":false,"title":"Movielens tensorflow","user":{"login":"brandondutra","id":21314536,"avatar_url":"https://avatars.githubusercontent.com/u/21314536?v=3","gravatar_id":"","url":"https://api.github.com/users/brandondutra","html_url":"https://github.com/brandondutra","followers_url":"https://api.github.com/users/brandondutra/followers","following_url":"https://api.github.com/users/brandondutra/following{/other_user}","gists_url":"https://api.github.com/users/brandondutra/gists{/gist_id}","starred_url":"https://api.github.com/users/brandondutra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandondutra/subscriptions","organizations_url":"https://api.github.com/users/brandondutra/orgs","repos_url":"https://api.github.com/users/brandondutra/repos","events_url":"https://api.github.com/users/brandondutra/events{/privacy}","received_events_url":"https://api.github.com/users/brandondutra/received_events","type":"User","site_admin":false},"body":"Added a new sample using tensorflow to build a matrix factor model (using TF's WALS model) on the Movielens dataset for predicting a user-movie rating. \r\n\r\nNew files:\r\n0. Readme.ipynb\r\n1. Downloading and Exploring the Movielens Data.ipynb: makes some plots, \r\n2. Preprocess the Data.ipynb: does preprocess based on notebook 1.\r\n3. Running WALS on Movielens.ipynb: Has the tensorflow code. The current model is not that good, the rmse on a test set is 0.9+. When hyperparameter tuning is done, I want to add another notebook that does it to improve the rmse. \r\n4. Final Remarks.ipynb: ","created_at":"2016-08-29T22:02:49Z","updated_at":"2016-08-30T16:25:29Z","closed_at":null,"merged_at":null,"merge_commit_sha":"03d0cf2dadea31b4b0c999f0e30852ce366c2a94","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/googledatalab/notebooks/pulls/17/commits","review_comments_url":"https://api.github.com/repos/googledatalab/notebooks/pulls/17/comments","review_comment_url":"https://api.github.com/repos/googledatalab/notebooks/pulls/comments{/number}","comments_url":"https://api.github.com/repos/googledatalab/notebooks/issues/17/comments","statuses_url":"https://api.github.com/repos/googledatalab/notebooks/statuses/2241b93379f966f35fdfd41547770f8b45e51381","head":{"label":"brandondutra:movielensTensorflow","ref":"movielensTensorflow","sha":"2241b93379f966f35fdfd41547770f8b45e51381","user":{"login":"brandondutra","id":21314536,"avatar_url":"https://avatars.githubusercontent.com/u/21314536?v=3","gravatar_id":"","url":"https://api.github.com/users/brandondutra","html_url":"https://github.com/brandondutra","followers_url":"https://api.github.com/users/brandondutra/followers","following_url":"https://api.github.com/users/brandondutra/following{/other_user}","gists_url":"https://api.github.com/users/brandondutra/gists{/gist_id}","starred_url":"https://api.github.com/users/brandondutra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandondutra/subscriptions","organizations_url":"https://api.github.com/users/brandondutra/orgs","repos_url":"https://api.github.com/users/brandondutra/repos","events_url":"https://api.github.com/users/brandondutra/events{/privacy}","received_events_url":"https://api.github.com/users/brandondutra/received_events","type":"User","site_admin":false},"repo":{"id":66882749,"name":"notebooks","full_name":"brandondutra/notebooks","owner":{"login":"brandondutra","id":21314536,"avatar_url":"https://avatars.githubusercontent.com/u/21314536?v=3","gravatar_id":"","url":"https://api.github.com/users/brandondutra","html_url":"https://github.com/brandondutra","followers_url":"https://api.github.com/users/brandondutra/followers","following_url":"https://api.github.com/users/brandondutra/following{/other_user}","gists_url":"https://api.github.com/users/brandondutra/gists{/gist_id}","starred_url":"https://api.github.com/users/brandondutra/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brandondutra/subscriptions","organizations_url":"https://api.github.com/users/brandondutra/orgs","repos_url":"https://api.github.com/users/brandondutra/repos","events_url":"https://api.github.com/users/brandondutra/events{/privacy}","received_events_url":"https://api.github.com/users/brandondutra/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/brandondutra/notebooks","description":"Google Cloud Datalab samples and documentation","fork":true,"url":"https://api.github.com/repos/brandondutra/notebooks","forks_url":"https://api.github.com/repos/brandondutra/notebooks/forks","keys_url":"https://api.github.com/repos/brandondutra/notebooks/keys{/key_id}","collaborators_url":"https://api.github.com/repos/brandondutra/notebooks/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/brandondutra/notebooks/teams","hooks_url":"https://api.github.com/repos/brandondutra/notebooks/hooks","issue_events_url":"https://api.github.com/repos/brandondutra/notebooks/issues/events{/number}","events_url":"https://api.github.com/repos/brandondutra/notebooks/events","assignees_url":"https://api.github.com/repos/brandondutra/notebooks/assignees{/user}","branches_url":"https://api.github.com/repos/brandondutra/notebooks/branches{/branch}","tags_url":"https://api.github.com/repos/brandondutra/notebooks/tags","blobs_url":"https://api.github.com/repos/brandondutra/notebooks/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/brandondutra/notebooks/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/brandondutra/notebooks/git/refs{/sha}","trees_url":"https://api.github.com/repos/brandondutra/notebooks/git/trees{/sha}","statuses_url":"https://api.github.com/repos/brandondutra/notebooks/statuses/{sha}","languages_url":"https://api.github.com/repos/brandondutra/notebooks/languages","stargazers_url":"https://api.github.com/repos/brandondutra/notebooks/stargazers","contributors_url":"https://api.github.com/repos/brandondutra/notebooks/contributors","subscribers_url":"https://api.github.com/repos/brandondutra/notebooks/subscribers","subscription_url":"https://api.github.com/repos/brandondutra/notebooks/subscription","commits_url":"https://api.github.com/repos/brandondutra/notebooks/commits{/sha}","git_commits_url":"https://api.github.com/repos/brandondutra/notebooks/git/commits{/sha}","comments_url":"https://api.github.com/repos/brandondutra/notebooks/comments{/number}","issue_comment_url":"https://api.github.com/repos/brandondutra/notebooks/issues/comments{/number}","contents_url":"https://api.github.com/repos/brandondutra/notebooks/contents/{+path}","compare_url":"https://api.github.com/repos/brandondutra/notebooks/compare/{base}...{head}","merges_url":"https://api.github.com/repos/brandondutra/notebooks/merges","archive_url":"https://api.github.com/repos/brandondutra/notebooks/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/brandondutra/notebooks/downloads","issues_url":"https://api.github.com/repos/brandondutra/notebooks/issues{/number}","pulls_url":"https://api.github.com/repos/brandondutra/notebooks/pulls{/number}","milestones_url":"https://api.github.com/repos/brandondutra/notebooks/milestones{/number}","notifications_url":"https://api.github.com/repos/brandondutra/notebooks/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/brandondutra/notebooks/labels{/name}","releases_url":"https://api.github.com/repos/brandondutra/notebooks/releases{/id}","deployments_url":"https://api.github.com/repos/brandondutra/notebooks/deployments","created_at":"2016-08-29T21:40:01Z","updated_at":"2016-08-29T21:40:02Z","pushed_at":"2016-08-29T23:50:39Z","git_url":"git://github.com/brandondutra/notebooks.git","ssh_url":"git@github.com:brandondutra/notebooks.git","clone_url":"https://github.com/brandondutra/notebooks.git","svn_url":"https://github.com/brandondutra/notebooks","homepage":null,"size":11641,"stargazers_count":0,"watchers_count":0,"language":"Jupyter Notebook","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"googledatalab:ml","ref":"ml","sha":"474083f5e657cc6bab9a978b99b510d5fddd4955","user":{"login":"googledatalab","id":18582876,"avatar_url":"https://avatars.githubusercontent.com/u/18582876?v=3","gravatar_id":"","url":"https://api.github.com/users/googledatalab","html_url":"https://github.com/googledatalab","followers_url":"https://api.github.com/users/googledatalab/followers","following_url":"https://api.github.com/users/googledatalab/following{/other_user}","gists_url":"https://api.github.com/users/googledatalab/gists{/gist_id}","starred_url":"https://api.github.com/users/googledatalab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/googledatalab/subscriptions","organizations_url":"https://api.github.com/users/googledatalab/orgs","repos_url":"https://api.github.com/users/googledatalab/repos","events_url":"https://api.github.com/users/googledatalab/events{/privacy}","received_events_url":"https://api.github.com/users/googledatalab/received_events","type":"Organization","site_admin":false},"repo":{"id":56720366,"name":"notebooks","full_name":"googledatalab/notebooks","owner":{"login":"googledatalab","id":18582876,"avatar_url":"https://avatars.githubusercontent.com/u/18582876?v=3","gravatar_id":"","url":"https://api.github.com/users/googledatalab","html_url":"https://github.com/googledatalab","followers_url":"https://api.github.com/users/googledatalab/followers","following_url":"https://api.github.com/users/googledatalab/following{/other_user}","gists_url":"https://api.github.com/users/googledatalab/gists{/gist_id}","starred_url":"https://api.github.com/users/googledatalab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/googledatalab/subscriptions","organizations_url":"https://api.github.com/users/googledatalab/orgs","repos_url":"https://api.github.com/users/googledatalab/repos","events_url":"https://api.github.com/users/googledatalab/events{/privacy}","received_events_url":"https://api.github.com/users/googledatalab/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/googledatalab/notebooks","description":"Google Cloud Datalab samples and documentation","fork":false,"url":"https://api.github.com/repos/googledatalab/notebooks","forks_url":"https://api.github.com/repos/googledatalab/notebooks/forks","keys_url":"https://api.github.com/repos/googledatalab/notebooks/keys{/key_id}","collaborators_url":"https://api.github.com/repos/googledatalab/notebooks/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/googledatalab/notebooks/teams","hooks_url":"https://api.github.com/repos/googledatalab/notebooks/hooks","issue_events_url":"https://api.github.com/repos/googledatalab/notebooks/issues/events{/number}","events_url":"https://api.github.com/repos/googledatalab/notebooks/events","assignees_url":"https://api.github.com/repos/googledatalab/notebooks/assignees{/user}","branches_url":"https://api.github.com/repos/googledatalab/notebooks/branches{/branch}","tags_url":"https://api.github.com/repos/googledatalab/notebooks/tags","blobs_url":"https://api.github.com/repos/googledatalab/notebooks/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/googledatalab/notebooks/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/googledatalab/notebooks/git/refs{/sha}","trees_url":"https://api.github.com/repos/googledatalab/notebooks/git/trees{/sha}","statuses_url":"https://api.github.com/repos/googledatalab/notebooks/statuses/{sha}","languages_url":"https://api.github.com/repos/googledatalab/notebooks/languages","stargazers_url":"https://api.github.com/repos/googledatalab/notebooks/stargazers","contributors_url":"https://api.github.com/repos/googledatalab/notebooks/contributors","subscribers_url":"https://api.github.com/repos/googledatalab/notebooks/subscribers","subscription_url":"https://api.github.com/repos/googledatalab/notebooks/subscription","commits_url":"https://api.github.com/repos/googledatalab/notebooks/commits{/sha}","git_commits_url":"https://api.github.com/repos/googledatalab/notebooks/git/commits{/sha}","comments_url":"https://api.github.com/repos/googledatalab/notebooks/comments{/number}","issue_comment_url":"https://api.github.com/repos/googledatalab/notebooks/issues/comments{/number}","contents_url":"https://api.github.com/repos/googledatalab/notebooks/contents/{+path}","compare_url":"https://api.github.com/repos/googledatalab/notebooks/compare/{base}...{head}","merges_url":"https://api.github.com/repos/googledatalab/notebooks/merges","archive_url":"https://api.github.com/repos/googledatalab/notebooks/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/googledatalab/notebooks/downloads","issues_url":"https://api.github.com/repos/googledatalab/notebooks/issues{/number}","pulls_url":"https://api.github.com/repos/googledatalab/notebooks/pulls{/number}","milestones_url":"https://api.github.com/repos/googledatalab/notebooks/milestones{/number}","notifications_url":"https://api.github.com/repos/googledatalab/notebooks/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/googledatalab/notebooks/labels{/name}","releases_url":"https://api.github.com/repos/googledatalab/notebooks/releases{/id}","deployments_url":"https://api.github.com/repos/googledatalab/notebooks/deployments","created_at":"2016-04-20T20:56:19Z","updated_at":"2016-08-30T15:00:01Z","pushed_at":"2016-08-30T10:57:28Z","git_url":"git://github.com/googledatalab/notebooks.git","ssh_url":"git@github.com:googledatalab/notebooks.git","clone_url":"https://github.com/googledatalab/notebooks.git","svn_url":"https://github.com/googledatalab/notebooks","homepage":null,"size":11449,"stargazers_count":13,"watchers_count":13,"language":"Jupyter Notebook","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":5,"mirror_url":null,"open_issues_count":6,"forks":5,"open_issues":6,"watchers":13,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/17"},"html":{"href":"https://github.com/googledatalab/notebooks/pull/17"},"issue":{"href":"https://api.github.com/repos/googledatalab/notebooks/issues/17"},"comments":{"href":"https://api.github.com/repos/googledatalab/notebooks/issues/17/comments"},"review_comments":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/17/comments"},"review_comment":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/googledatalab/notebooks/pulls/17/commits"},"statuses":{"href":"https://api.github.com/repos/googledatalab/notebooks/statuses/2241b93379f966f35fdfd41547770f8b45e51381"}}}}
{"actor":{"display_login":"brandondutra"}}