After spending ages looking for the ‘right’ way to set the ‘humanized’ name for an ActiveRecord attribute (seeing as human_attribute is deprecated), it seems The Way now is to do this with locales.
Specifically, having something like this in your config/locales/en.yml
activerecord: attributes: model_name: attr_name: "Your mother"
…and this will make all the model errors use the nice name. Hurrah.
Of course, you’ll still need something like http://github.com/kipcole9/rails-i18n-translation-inheritance-helper to stop you needing to add the same thing into en-us, en-gb, etc…