I'm in the process of changing jobs, not an employee, but I don't think it's HR's fault, but that of managers -- they should know the best what value people bring and what are the consequences of losing certain people be.
The managers (in my experience at least, being on both sides of that table) don't have a shred of power in compensation discussions. That makes it a lot harder for the employee to negotiate (by design). Every compensation decision that wasn't pushed directly by HR got pushed to president-level management (these were in 100-500 person companies)