Overcoming Hardware Imperfections in Optical Neural Networks Through a Machine Learning-Driven Self-Correction Mechanism | IEEE Journals & Magazine | IEEE Xplore