It is possible via the profile user interface to mark the tags field as required.
But, when the profile is displayed in user-create mode, the little red asterisk is absent and you can in fact add a record without entering a tag.
I've traced the problem to this function call, which allows you to make the group field required (provided it's displayed as check boxes). But there doesn't appear to be any code that would apply to tags.
This doesn't look like a programming error. So, I'm not sure if it simply was left out or if there is any underlying reason why you would not be able to do this?