Perjury requires that you knowingly lie. And because our justice system demands evidence of guilt and presumes innocence without that evidence, to be convicted of perjury, the prosecution has to prove that the individual knew they were lying, and lied anyway.
That's relatively easy to do when the subject of a lie is some material fact like, say, the defendant says, "I was wearing a blue shirt" and there is photographic evidence of the defendant wearing a green shirt, or something. It's a lot harder with the thing in question is what the defendant was thinking.
Watch this fictional defense:
Prosecution: "You lied when you said you would never do something like that again."
Shaman: "I said that yes."
Prosecution: "Caught you!"
Shaman: "In the year since, I have changed my mind. At the time, I was telling the truth as I saw it."
Judge: "Tap tap tap, case dismissed. I lost my judge hammer."