Learning with Incomplete Data