{"action":"closed","issue":{"url":"https://api.github.com/repos/mlpack/mlpack/issues/717","repository_url":"https://api.github.com/repos/mlpack/mlpack","labels_url":"https://api.github.com/repos/mlpack/mlpack/issues/717/labels{/name}","comments_url":"https://api.github.com/repos/mlpack/mlpack/issues/717/comments","events_url":"https://api.github.com/repos/mlpack/mlpack/issues/717/events","html_url":"https://github.com/mlpack/mlpack/issues/717","id":164293938,"number":717,"title":"QUIC-SVD fails if m=n.","user":{"login":"zoq","id":4209744,"avatar_url":"https://avatars.githubusercontent.com/u/4209744?v=3","gravatar_id":"","url":"https://api.github.com/users/zoq","html_url":"https://github.com/zoq","followers_url":"https://api.github.com/users/zoq/followers","following_url":"https://api.github.com/users/zoq/following{/other_user}","gists_url":"https://api.github.com/users/zoq/gists{/gist_id}","starred_url":"https://api.github.com/users/zoq/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zoq/subscriptions","organizations_url":"https://api.github.com/users/zoq/orgs","repos_url":"https://api.github.com/users/zoq/repos","events_url":"https://api.github.com/users/zoq/events{/privacy}","received_events_url":"https://api.github.com/users/zoq/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mlpack/mlpack/labels/D:%20moderate","name":"D: moderate","color":"207de5"},{"url":"https://api.github.com/repos/mlpack/mlpack/labels/P:%20minor","name":"P: minor","color":"ffaa22"},{"url":"https://api.github.com/repos/mlpack/mlpack/labels/T:%20defect","name":"T: defect","color":"cccccc"}],"state":"closed","locked":false,"assignee":{"login":"rcurtin","id":1845039,"avatar_url":"https://avatars.githubusercontent.com/u/1845039?v=3","gravatar_id":"","url":"https://api.github.com/users/rcurtin","html_url":"https://github.com/rcurtin","followers_url":"https://api.github.com/users/rcurtin/followers","following_url":"https://api.github.com/users/rcurtin/following{/other_user}","gists_url":"https://api.github.com/users/rcurtin/gists{/gist_id}","starred_url":"https://api.github.com/users/rcurtin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rcurtin/subscriptions","organizations_url":"https://api.github.com/users/rcurtin/orgs","repos_url":"https://api.github.com/users/rcurtin/repos","events_url":"https://api.github.com/users/rcurtin/events{/privacy}","received_events_url":"https://api.github.com/users/rcurtin/received_events","type":"User","site_admin":false},"assignees":[{"login":"rcurtin","id":1845039,"avatar_url":"https://avatars.githubusercontent.com/u/1845039?v=3","gravatar_id":"","url":"https://api.github.com/users/rcurtin","html_url":"https://github.com/rcurtin","followers_url":"https://api.github.com/users/rcurtin/followers","following_url":"https://api.github.com/users/rcurtin/following{/other_user}","gists_url":"https://api.github.com/users/rcurtin/gists{/gist_id}","starred_url":"https://api.github.com/users/rcurtin/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rcurtin/subscriptions","organizations_url":"https://api.github.com/users/rcurtin/orgs","repos_url":"https://api.github.com/users/rcurtin/repos","events_url":"https://api.github.com/users/rcurtin/events{/privacy}","received_events_url":"https://api.github.com/users/rcurtin/received_events","type":"User","site_admin":false}],"milestone":null,"comments":5,"created_at":"2016-07-07T12:07:39Z","updated_at":"2016-08-07T20:57:03Z","closed_at":"2016-08-07T20:57:03Z","body":"The QUIC-SVD method doesn't work if `m = n`, however as pointed out in the paper **QUIC-SVD: Fast SVD Using Cosine Trees**:\r\n\r\n> Throughout this paper we assume m ≥ n, such that sampling rows gives bigger speedup than sampling columns.\r\n\r\n\r\nit should work. One problem is that the CosineNodeSplit(); returns `if numColumns < 2` so the upcoming operations result in an error:\r\n\r\n```\r\n// Split the node into left and right children.\r\ncurrentNode->CosineNodeSplit();\r\n\r\n// Obtain pointers to the left and right children of the current node.\r\nCosineTree *currentLeft, *currentRight;\r\ncurrentLeft = currentNode->Left();\r\ncurrentRight = currentNode->Right();\r\n```\r\n\r\nRight now, I can't see an easy fix, without changing some bigger parts of the code. Maybe someone else has a simple idea? Maybe @siddharth-agrawal  has an idea?"}}
{"actor":{"display_login":"rcurtin"}}