Iraqi forces retook the strategic northern town of Baiji on Friday after more than two weeks of fighting with the Islamic State jihadist group, officials said.