Coincidently, this is why judges typically dislike mandatory minimum sentences and whatnot. Sometimes the punishment should be different than what the lawmakers said it must be. Every single case is as unique as the people that caused it happen, and thus, the sentences should be as unique too.
There are a LOT of arguments against this, but that there is an argument at all is not as widely comprehended.
I strongly suspect it isn't true at all. Politicians keep talking as if there are thousands of innocent people in prison, but then any reform tends to stall or backfire (i.e. releasing violent offenders to the public) or not result in much change.
In almost every case there are usually a plethora of prior convictions, or there was a violent crime (or a pattern of violent crime) underlying the conviction but the drug/non-violent conviction is what 'stuck'. In the same way, Al Capone's conviction wasn't really about non-violent/white-collar crime of tax evasion. The cases that are cited where there are no associated factors are, I suspect, few and far between and are largely outliers.
And it makes sense. The justice system is already overburdened. Just as a matter of practicality, neither judges nor prosecutors wish to send non-violent offenders to prison. The last season of Serial, which followed a bunch cases in the Cleveland court system over a few months, showed this. People who deserved to go to prison, went prison. People who didn't (even if they were guilty), didn't.
From a big-picture perspective, the vast majority of people in prison deserve to be in prison.
I find that hard to believe. See Bernie Madoff. Sure he's an extreme example, but he's not a danger to anyone. Surely there's something else that can be done to deter people like him.
I've often thought just set up a camp for non-violent offenders. The security would be basically none, just that if they leave then they go to a real prison.
Just saying, don't limit your empathy, limit your sentences -- sure, there is a few extreme cases.