it's for the wowie game jam. I made it in 2 days. This explains everything.
If it's because you use rigidbody.AddForce() for your horizontal movement, I think you can try something like:
rigidbody.velocity = new Vector2(Mathf.SmoothDamp(rigidbody.velocity.x, Input.GetAxisRaw("Horizontal"), ref walkVelocity, smoothTime), rigidbody.velocity.y);
where smoothTime is the time you want the movement to change and walkVelocity a variable that the function uses to store the acceleration.