Open kerryDong11 opened 5 years ago
The trick is to add epsilon to the STD as done here: https://github.com/guillaume-chevalier/seq2seq-signal-prediction/blob/25721c0cd8e1ff1d9310f95ccebde56d5b0c26a1/datasets.py#L135
Or use an if
such that if the STD is of zero then it isn't added.
The trick is to add epsilon to the STD as done here: https://github.com/guillaume-chevalier/seq2seq-signal-prediction/blob/25721c0cd8e1ff1d9310f95ccebde56d5b0c26a1/datasets.py#L135
Or use an
if
such that if the STD is of zero then it isn't added.
But if i add the epsilon to the STD , the loss will be very large,like 144ms/step - loss: 1139874524.9530. Do you know what is going on at the MES caculation? Thank you so much.
perhaps your values aren't real zeros, but instead are near-zero values, and normalizing them makes them not numerically stable. You could clip small values to an exact zero if you need to really ignore them. Dividing a real zero by epsilon should result in having a real zero again.
I have many 0 data in my train data, the function normalise_windows will have the issues: float division by zero. The issue happened at : 'normalised_col = [((float(p) / float(window[0, col_i])) - 1) for p in window[:, col_i]]'. So if i have many 0 data in my train data. How can I normalization my data?