In recent years, convolutional neural network (CNN) has been successfully applied in the field of bearing fault diagnosis. So as to improve the diagnosis performance in harsh environment with strong noise, the structure of CNN-based feature extractor becomes deeper and more complex. However, with the increase of depth, the model may lose shallow features and the training parameters will surge. Moreover, if the sample size is not large, it tends to over fit. It deviates from the concept of network lightweight. On the other hand, little attention will be paid to the optimization of model classifiers which can significantly improve the classification performance. Therefore, we proposed a CNN with full stage optimization (FSOCNN) model for bearing fault diagnosis in strong noise environment. In the feature extraction stage, the model is optimized with a novel multi-feature output structure connected with global average pooling to improve the feature extraction ability without any extra trainable parameters. In the classification stage, the traditional softmax layer will only participate in the parameter optimization of CNN model through gradient descent algorithm, and the diagnosis results will be output by support vector machine. The effectiveness of the proposed method is verified on the two bearing datasets under different levels of noise. Compared with the existing five fault diagnosis models, the results prove that the proposed method possesses higher accuracy, less training time, and better stability.