A comprehensive review of deep neuro-fuzzy system architectures and their optimization methods