# Multi-target regression

**URL:** <https://community.konduit.ai/t/multi-target-regression/122>\
**Category:** DL4J\
**Created:** [February 8, 2020, 7:34pm UTC](https://community.konduit.ai/t/multi-target-regression/122 "2020-02-08T19:34:12Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![dagf2101](https://avatars.discourse-cdn.com/v4/letter/d/b5a626/32.png) [@dagf2101](https://community.konduit.ai/u/dagf2101)\
**Post date:** [February 8, 2020, 7:34pm UTC](https://community.konduit.ai/t/multi-target-regression/122/1 "2020-02-08T19:34:12Z")

</div>

I’m trying to predict some variables (angle and distance) from different input variables and data. If I understand correctly this is a multi target regression problem, am I right ? For the implementation should I start with the regression example of dl4j(addition example) and simply add 2 output values instead of one ?

---

<div class="post-metadata">

**Author:** ![AlexBlack](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.konduit.ai/alexblack/32/25_2.png) [@AlexBlack](https://community.konduit.ai/u/AlexBlack)\
**Post date:** [February 9, 2020, 11:11pm UTC](https://community.konduit.ai/t/multi-target-regression/122/2 "2020-02-09T23:11:16Z")

</div>

In terms of network configuration, the only changes you need for multi-output regression are to the output layer.  
For example an output layer configured for 10 outputs for multi-output regression would look like:

> new OutputLayer.Builder().nOut(10).activation(Activation.IDENTITY)  
> .lossFunction(LossFunctions.LossFunction.MSE).build()

Don’t forget about normalization for the inputs (features) and outputs (regression targets/labels) too (but that’s the same for single vs. multi-output regression)

---

<div class="post-metadata">

**Author:** ![dagf2101](https://avatars.discourse-cdn.com/v4/letter/d/b5a626/32.png) [@dagf2101](https://community.konduit.ai/u/dagf2101)\
**Post date:** [February 10, 2020, 3:30am UTC](https://community.konduit.ai/t/multi-target-regression/122/3 "2020-02-10T03:30:14Z")

</div>

Thanks for the reply. I see Identity activation and mse loss function all the time, is this the way to go for regression ?

---

<div class="post-metadata">

**Author:** ![AlexBlack](https://yyz1.discourse-cdn.com/flex035/user_avatar/community.konduit.ai/alexblack/32/25_2.png) [@AlexBlack](https://community.konduit.ai/u/AlexBlack)\
**Post date:** [February 10, 2020, 6:59am UTC](https://community.konduit.ai/t/multi-target-regression/122/4 "2020-02-10T06:59:33Z")

</div>

Identity+MSE is a good baseline approach for regression, yes.  
In a few cases it might make sense to consider others - like identity+MAE if you know you have large outliers or noisy data - or tanh+MSE if your predictions are always bound to the [-1,1] range, for example. But otherwise identity+MSE should be fine for most cases.
