czq142857 / IM-NET-pytorch

PyTorch 1.2 implementation of IM-NET.
Other
196 stars 27 forks source link

About AE results and traing loss #2

Closed sunshinnnn closed 3 years ago

sunshinnnn commented 3 years ago

Hi, Zhiqin

I test AE model on 02828884_bench, and find that the output of the AE model may not be symmetrical. Besides, the thin structure such as bottom legs may disappear. Colud you give me an explain about this. In my opinion, the small sampled points ratio of thin structues make legs disappear. However, I could not find explination about the asymmetrical in the horizontal direction.

Here are some results. https://jacksun.top/index.php/s/gkABL7Hq9XpKyRa https://jacksun.top/index.php/s/dqiHdSdSnyoHtB5 https://jacksun.top/index.php/s/PRR4DHaESnDsNt2

Another quesion is that, the postive points (value=1) account for (5%~10%), so is Naive MSE loss a good choice for such optimzation?

Best, sun

czq142857 commented 3 years ago

Hi Sun,

I think there are 2 possible reasons regarding the disappearance of the thin structures.

  1. The network is underfitting. Test some shapes in the training set, and see if they have thin structures. If not, the network may be underfitting. Please follow the instructions to train the network progressively (16->32->64) for faster convergence, and please increase the number of training epochs when needed.
  2. The network is overfitting. If the shapes in the training set have thin structures and the shapes in the testing set do not, the network may be overfitting. It is a common issue for neural networks and I currently do not have a solution for that.

In the horizontal direction, the network does not have to be symmetric, therefore the results may not be symmetric. Think of it this way: suppose you have two sub-networks, one network only fits the left half of the shape and one only fits the right half of the shape, and the final output is just a union of the two outputs from the two networks. The final output shape may not be symmetric because it doesn't have to be. It is unlikely that the two sub-networks will give symmetric outputs.

The positive-negative ratio is sort of a hyper-parameter. I did not pay much attention to that during my experiments. I was using MSE because I like MSE -- it is a very robust objective function. Feel free to try others such as MAE and BCE.

Best, Zhiqin

sunshinnnn commented 3 years ago

Really inspired by your explanation, thanks very much!

Best, sun

---Original--- From: "Zhiqin Chen"<notifications@github.com> Date: Tue, Oct 6, 2020 10:08 AM To: "czq142857/IM-NET-pytorch"<IM-NET-pytorch@noreply.github.com>; Cc: "Author"<author@noreply.github.com>;"sunshinnnn"<774283371@qq.com>; Subject: Re: [czq142857/IM-NET-pytorch] About AE results and traing loss (#2)

Hi Sun,

I think there are 2 possible reasons regarding the disappearance of the thin structures.

The network is underfitting. Test some shapes in the training set, and see if they have thin structures. If not, the network may be underfitting. Please follow the instructions to train the network progressively (16->32->64) for faster convergence, and please increase the number of training epochs when needed.

The network is overfitting. If the shapes in the training set have thin structures and the shapes in the testing set do not, the network may be overfitting. It is a common issue for neural networks and I currently do not have a solution for that.

In the horizontal direction, the network does not have to be symmetric, therefore the results may not be symmetric. Think of it this way: suppose you have two sub-networks, one network only fits the left half of the shape and one only fits the right half of the shape, and the final output is just a union of the two outputs from the two networks. The final output shape may not be symmetric because it doesn't have to be. It is unlikely that the two sub-networks will give symmetric outputs.

The positive-negative ratio is sort of a hyper-parameter. I did not pay much attention to that during my experiments. I was using MSE because I like MSE -- it is a very robust objective function. Feel free to try others such as MAE and BCE.

Best, Zhiqin

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.