{"action":"created","issue":{"url":"https://api.github.com/repos/GPflow/GPflow/issues/96","repository_url":"https://api.github.com/repos/GPflow/GPflow","labels_url":"https://api.github.com/repos/GPflow/GPflow/issues/96/labels{/name}","comments_url":"https://api.github.com/repos/GPflow/GPflow/issues/96/comments","events_url":"https://api.github.com/repos/GPflow/GPflow/issues/96/events","html_url":"https://github.com/GPflow/GPflow/pull/96","id":159980498,"number":96,"title":"serializing GPflow objects","user":{"login":"jameshensman","id":154383,"avatar_url":"https://avatars.githubusercontent.com/u/154383?v=3","gravatar_id":"","url":"https://api.github.com/users/jameshensman","html_url":"https://github.com/jameshensman","followers_url":"https://api.github.com/users/jameshensman/followers","following_url":"https://api.github.com/users/jameshensman/following{/other_user}","gists_url":"https://api.github.com/users/jameshensman/gists{/gist_id}","starred_url":"https://api.github.com/users/jameshensman/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jameshensman/subscriptions","organizations_url":"https://api.github.com/users/jameshensman/orgs","repos_url":"https://api.github.com/users/jameshensman/repos","events_url":"https://api.github.com/users/jameshensman/events{/privacy}","received_events_url":"https://api.github.com/users/jameshensman/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/GPflow/GPflow/labels/help%20wanted","name":"help wanted","color":"159818"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":20,"created_at":"2016-06-13T15:38:24Z","updated_at":"2016-06-15T16:21:09Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/GPflow/GPflow/pulls/96","html_url":"https://github.com/GPflow/GPflow/pull/96","diff_url":"https://github.com/GPflow/GPflow/pull/96.diff","patch_url":"https://github.com/GPflow/GPflow/pull/96.patch"},"body":"This branch is perhaps mis-named, it does two things, both addressing #48 \r\n\r\nFirst, the ability to get all the parameters in a models in a dictionary.\r\n\r\nSecond, the ability to pickle GPflow objects. \r\n\r\nThis is very much up for discussion, and we may want to separate the two features. I think they're both useful though, and both address the same open question.\r\n\r\nSee also #56 \r\n\r\n```python\r\nimport numpy as np\r\nimport GPflow\r\nimport pickle\r\nX, Y = np.random.randn(2, 10, 1)\r\nm = GPflow.sgpr.SGPR(X, Y, GPflow.kernels.Matern32(1), Z=X)\r\ns1 = pickle.dumps(m)\r\nm._compile()\r\ns2 = pickle.dumps(m)\r\nm1 = pickle.loads(s1)\r\nm2 = pickle.loads(s2)\r\nprint m.compute_log_likelihood()\r\nprint m1.compute_log_likelihood()\r\nprint m2.compute_log_likelihood()\r\n```"},"comment":{"url":"https://api.github.com/repos/GPflow/GPflow/issues/comments/226240580","html_url":"https://github.com/GPflow/GPflow/pull/96#issuecomment-226240580","issue_url":"https://api.github.com/repos/GPflow/GPflow/issues/96","id":226240580,"user":{"login":"alexggmatthews","id":6596998,"avatar_url":"https://avatars.githubusercontent.com/u/6596998?v=3","gravatar_id":"","url":"https://api.github.com/users/alexggmatthews","html_url":"https://github.com/alexggmatthews","followers_url":"https://api.github.com/users/alexggmatthews/followers","following_url":"https://api.github.com/users/alexggmatthews/following{/other_user}","gists_url":"https://api.github.com/users/alexggmatthews/gists{/gist_id}","starred_url":"https://api.github.com/users/alexggmatthews/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexggmatthews/subscriptions","organizations_url":"https://api.github.com/users/alexggmatthews/orgs","repos_url":"https://api.github.com/users/alexggmatthews/repos","events_url":"https://api.github.com/users/alexggmatthews/events{/privacy}","received_events_url":"https://api.github.com/users/alexggmatthews/received_events","type":"User","site_admin":false},"created_at":"2016-06-15T16:21:09Z","updated_at":"2016-06-15T16:21:09Z","body":"In the past it was because TensorFlow keeps the grad def in memory even after you would expect the lifetime of the corresponding python object to be over, a bit like a memory leak.\r\n@jameshensman remind me how we fixed it? I can't remember exactly off the top of my head."}}
{"actor":{"display_login":"alexggmatthews"}}