I'm learning to train a Linear Regression model via TensorFlow.
It's quite a simple formula:

> 
> y = **W** \* x + **b**
> 
> 
> 

I have generated a sample data:

[![enter image description here](https://i.stack.imgur.com/MSxoT.png)](https://i.stack.imgur.com/MSxoT.png)

After the model training I can see in Tensorboard that "**W**" is correct when "**b**" goes a completely wrong way. So, Loss is quite high.

**[Here](https://github.com/VictorDDT/uploadfiles/blob/master/TF/Linear%20Regression%20Training.py)** is my code.

[![enter image description here](https://i.stack.imgur.com/dJvLz.png)](https://i.stack.imgur.com/dJvLz.png)

**QUESTION**

Why is "**b**" being trained a wrong way?

Shall I do something with the optimizer?