For all the attention M. Night Shyamalan pays to the look and mood of the movie, he's a klutz when it comes to plotting and characterization. And because his clumsiness keeps us outside Cole, he never achieves the empathy the character deserves. So the movie becomes the vaguely unpleasant task of watching a child's suffering from arm's length. Shyamalan, though, is a pedant. But the tempo only makes you wonder where the movie's connective tissue has gone.
Some scenes are nonsensical.
And though we're told Cole's talent is seeing the dead, he appears, in one scene where he humiliates a school teacher, to be able to read the minds of the living. And Malcolm's explanation to Cole that maybe the dead people he sees are trying to talk to him never explains the physical abuse the ghosts inflict on him. Shyamalan seems to have no idea how to dramatize anything. There isn't even a scene where Willis has to admit to himself that the paranormal actually exists. Maybe Shyamalan's ineptness is a blessing.