To me they seem to be the same thing, its just that registered processes are disguised by the terminology "actors".
Update:
I have since seen the error in my way of thinking. I guess as I am new to Erlang I was using actors in places where they did not belong at all (is there an anti-pattern name for this somewhere?)
I frequently see examples using process registration to simplify the example code (by avoiding another function parameter). This has the effect that newbies tend to use process registration a whole lot (monkey see, monkey do).
And they (newbies) tend to change the registration as part of normal operations. They tend to construct atoms to register as, and have other processes construct atoms to look up processes. When you do this, then you are having shared state concurrency (limited, but still bad).
The registry should be used for (okay, these are my own rules for when to use them):
The registered names should have a prefix (typically the application name), and the long-running applications should be in the OTP .app
file.