Michael Bloomberg apologizes for stop and frisk