In the vast majority of cases, however, scrums are the consequence of one team causing the ball to go forward from a player's hands.
How would that happen? Are you talking about during tackles?
I'm talking about any time. Usually when it happens, it's because a player has fumbled a pass to him and knocks the ball forward off of his hands. That's a "knock on," and the consequence is a scrum where the opposing team will get the put-in.
Other times, a player simply passes the ball cleanly to his teammate, but his teammate is not behind him, so the pass goes forward instead of backward. This is no different in consequence from a "knock on."
Surely, though, there are plenty of occasions where ball carriers lose the ball from their hands and cause it to go forward when they are being tackled. Virtually every occasion where a ball touches a player's hand and then goes forward into play results in a scrum. The
only exception that I can think of is when the ball hits a player's hands when he's charging to block a kick.
EDIT: also, if a player can catch the ball before it hits the ground after incidentally knocking the ball forward, there is no penalty. Intentional "forward passes to one's self" are penalized, however.