payload: {"action":"created","issue":{"url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/106","repository_url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl","labels_url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/106/labels{/name}","comments_url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/106/comments","events_url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/106/events","html_url":"https://github.com/JuliaDiffEq/Surrogates.jl/pull/106","id":537205442,"node_id":"MDExOlB1bGxSZXF1ZXN0MzUyNjA0MjE2","number":106,"title":"Multi output surrogates","user":{"login":"platawiec","id":24233125,"node_id":"MDQ6VXNlcjI0MjMzMTI1","avatar_url":"https://avatars1.githubusercontent.com/u/24233125?v=4","gravatar_id":"","url":"https://api.github.com/users/platawiec","html_url":"https://github.com/platawiec","followers_url":"https://api.github.com/users/platawiec/followers","following_url":"https://api.github.com/users/platawiec/following{/other_user}","gists_url":"https://api.github.com/users/platawiec/gists{/gist_id}","starred_url":"https://api.github.com/users/platawiec/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/platawiec/subscriptions","organizations_url":"https://api.github.com/users/platawiec/orgs","repos_url":"https://api.github.com/users/platawiec/repos","events_url":"https://api.github.com/users/platawiec/events{/privacy}","received_events_url":"https://api.github.com/users/platawiec/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2019-12-12T20:48:55Z","updated_at":"2019-12-12T21:55:11Z","closed_at":null,"author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/pulls/106","html_url":"https://github.com/JuliaDiffEq/Surrogates.jl/pull/106","diff_url":"https://github.com/JuliaDiffEq/Surrogates.jl/pull/106.diff","patch_url":"https://github.com/JuliaDiffEq/Surrogates.jl/pull/106.patch"},"body":"Ref #98. Multi-output surrogates have been created for the following, and AD is confirmed to work as well:\r\n\r\n- `NeuralSurrogate`\r\n- `InverseDistanceSurrogate`\r\n- `SecondOrderPolynomialSurrogate`\r\n- `RadialBasis`\r\n\r\nThis PR is not planned to implement multi-output surrogate optimization. The only other surrogate which is interesting to implement is `Kriging`, but I will save that for a PR where I implement a Stheno back-end. That PR will also address #100 for `Kriging`.\r\n\r\nThis PR slightly changes the `SecondOrderPolynomialSurrogate` implementation to include all n choose 2 combinations of input dimensions.\r\n\r\nThis PR preserves the type of the flux model output. In other words, for a user to return a scalar from their ANN, they should write: `model = Chain(Dense(2,1), sum)` to explicitly reduce the model output to a scalar.\r\n\r\nI currently don't plan on implementing the other surrogates (`Lobachesky`, etc.) as multi-output, but if there's interest I will. The rest follow the same pattern where each output is fit separately (at least to the extent I'm aware of). Those implementations would be fairly boilerplate, I believe."},"comment":{"url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/comments/565204504","html_url":"https://github.com/JuliaDiffEq/Surrogates.jl/pull/106#issuecomment-565204504","issue_url":"https://api.github.com/repos/JuliaDiffEq/Surrogates.jl/issues/106","id":565204504,"node_id":"MDEyOklzc3VlQ29tbWVudDU2NTIwNDUwNA==","user":{"login":"platawiec","id":24233125,"node_id":"MDQ6VXNlcjI0MjMzMTI1","avatar_url":"https://avatars1.githubusercontent.com/u/24233125?v=4","gravatar_id":"","url":"https://api.github.com/users/platawiec","html_url":"https://github.com/platawiec","followers_url":"https://api.github.com/users/platawiec/followers","following_url":"https://api.github.com/users/platawiec/following{/other_user}","gists_url":"https://api.github.com/users/platawiec/gists{/gist_id}","starred_url":"https://api.github.com/users/platawiec/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/platawiec/subscriptions","organizations_url":"https://api.github.com/users/platawiec/orgs","repos_url":"https://api.github.com/users/platawiec/repos","events_url":"https://api.github.com/users/platawiec/events{/privacy}","received_events_url":"https://api.github.com/users/platawiec/received_events","type":"User","site_admin":false},"created_at":"2019-12-12T21:55:11Z","updated_at":"2019-12-12T21:55:11Z","author_association":"CONTRIBUTOR","body":"Hmm, I'm currently seeing `LoadError: ArgumentError: Cannot setindex! to -0.6390356103155185 for an AbstractFill with value -63.903561031551845.`. I previously saw this when defining my own models in Flux v0.10, so I switched to Flux 0.9 and didn't have any issues. I'm not sure why it's cropping up here, and I'm also not sure how to address the root cause."}}
other: {"actor":{"display_login":"platawiec"}}