This answer is really a follow-up to David Hedlund's (correct) answer and the resulting conversation in the comments between David and Sklivvz.
A large portion of a polygraph's effectness comes from the fact that the subject believes that it works. In some sense, it's a very fancy prop/placebo. A polygraph test (in an NSA / DoD setting) goes down something like this:
-- The questioner asks you a bunch of questions. Due to the general stress of the situation and the sensitive nature of the questions, you are generally nervous (sweaty palms, etc).
-- After going through all the questions, the operator leaves the room for a bit to "analyze the results". He then returns and accuses you of lying (or omitting details, or fudging the truth). He then gives you a chance to rectify your answers.
-- Figuring that things will go better if you come clean now, you try to guess what triggered the polygraph. Since the operator gave no indication as what the problem was, you basically spill your guts in a scattershot approach.
-- Rinse, wash, repeat.
Obviously, the operator needs to be a skilled cold-reader. Also, a trained liar will know that the polygraph isn't actually doing anything, and so step 3 will fail.
So do they work? In a technical / scientific sense, no. In a pragmatic sense, sure.