在实现Baum_Welch算法过程中,能够训练小数据量参数,但是如果数据量增加时,多次迭代后会出现nan的数据。并且会报以下错误:
RuntimeWarning: invalid value encountered in reduce
RuntimeWarning: overflow encountered in true_divide
RuntimeWarning: invalid value encountered in multiply
RuntimeWarning: invalid value encountered in double_scalars
产生这个原因时因为计算溢出。
初步认为可能是存在除数为0。
调试发现,首先出现了inf,接着出现nan。
在宗成庆老师的NLP课上,提及容易出现小数溢出的问题。