{"action":"created","issue":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/3204","labels_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/3204/labels{/name}","comments_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/3204/comments","events_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/3204/events","html_url":"https://github.com/scikit-learn/scikit-learn/pull/3204","id":34336885,"number":3204,"title":"[MRG] Generic multi layer perceptron","user":{"login":"IssamLaradji","id":3382128,"avatar_url":"https://avatars.githubusercontent.com/u/3382128?v=3","gravatar_id":"","url":"https://api.github.com/users/IssamLaradji","html_url":"https://github.com/IssamLaradji","followers_url":"https://api.github.com/users/IssamLaradji/followers","following_url":"https://api.github.com/users/IssamLaradji/following{/other_user}","gists_url":"https://api.github.com/users/IssamLaradji/gists{/gist_id}","starred_url":"https://api.github.com/users/IssamLaradji/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/IssamLaradji/subscriptions","organizations_url":"https://api.github.com/users/IssamLaradji/orgs","repos_url":"https://api.github.com/users/IssamLaradji/repos","events_url":"https://api.github.com/users/IssamLaradji/events{/privacy}","received_events_url":"https://api.github.com/users/IssamLaradji/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":132,"created_at":"2014-05-27T01:53:39Z","updated_at":"2015-04-07T00:40:14Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/pulls/3204","html_url":"https://github.com/scikit-learn/scikit-learn/pull/3204","diff_url":"https://github.com/scikit-learn/scikit-learn/pull/3204.diff","patch_url":"https://github.com/scikit-learn/scikit-learn/pull/3204.patch"},"body":"Currently I am implementing `layers_coef_` to allow for any number of hidden layers.\r\n\r\nThis pull request is to implement the generic Multi-layer perceptron as part of the GSoC 2014 proposal. \r\n\r\nThe expected time to finish this pull request is June 15\r\n\r\nThe goal is to extend Multi-layer Perceptron to support more than one hidden layer and to support having a pre-training phase (initializing weights through Restricted Boltzmann Machines) and a fine-tuning phase; and write its documentation.\r\n\r\nThis directly follows from this pull-request: https://github.com/scikit-learn/scikit-learn/pull/2120\r\n\r\nTODO:\r\n\r\n- [x] replace private attributes initialized in `_fit` by local variables and pass them as argument to private helper methods to make the code more readable and reduce pickled model size by not storing stuff that is not necessary at prediction time.\r\n- [ ] refactor the `_fit` method to call into submethods for different algorithms.\r\n- [x] introduce `self.t_` to store SGD learning rate progress and decouple it from `self.n_iter_` that should consistently track `epochs`.\r\n- [x] issue `ConvergenceWarning` whenever `max_iter` is reached when calling `fit`"},"comment":{"url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/comments/90298116","html_url":"https://github.com/scikit-learn/scikit-learn/pull/3204#issuecomment-90298116","issue_url":"https://api.github.com/repos/scikit-learn/scikit-learn/issues/3204","id":90298116,"user":{"login":"amormachine","id":3621599,"avatar_url":"https://avatars.githubusercontent.com/u/3621599?v=3","gravatar_id":"","url":"https://api.github.com/users/amormachine","html_url":"https://github.com/amormachine","followers_url":"https://api.github.com/users/amormachine/followers","following_url":"https://api.github.com/users/amormachine/following{/other_user}","gists_url":"https://api.github.com/users/amormachine/gists{/gist_id}","starred_url":"https://api.github.com/users/amormachine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amormachine/subscriptions","organizations_url":"https://api.github.com/users/amormachine/orgs","repos_url":"https://api.github.com/users/amormachine/repos","events_url":"https://api.github.com/users/amormachine/events{/privacy}","received_events_url":"https://api.github.com/users/amormachine/received_events","type":"User","site_admin":false},"created_at":"2015-04-07T00:40:14Z","updated_at":"2015-04-07T00:40:14Z","body":"Excellent work to all, and an exciting feature to be added to sklearn!\r\n\r\nI have been looking forward to this functionality to a while - Does it appear likely, or has momentum dissipated?"}}