Noise attenuation has been a long-standing problem in seismic data processing. It presents unique challenges on land due to a complex near surface coupled with unavoidable environmental noise sources. In many cases, weak signals are embedded in much stronger noise, which makes conventional methods less effective at extracting those signals. In addition, conventional methods may lack adaptability to various noise types and patterns. Machine learning has shown great promise in solving geophysical problems including seismic data processing and interpretation. Here, we propose a novel method that is applicable to attenuating both incoherent noise, such as environmental noise, and coherent noise, such as ground roll and scattered noise, under a unified learning-based framework. This framework takes advantage of conventional methods to build the initial models and then employs dictionary learning and sparse inversion to invert both signal and noise simultaneously. The proposed method augments conventional methods by leveraging learning to recover residual weak signals from strong noise. We have applied this hybrid learning-based method successfully to some of the most difficult data areas where conventional denoising methods underperformed. Synthetic and real data examples demonstrate the effectiveness of the method for various noise types.