David Warner has publically apologised for his unprovoked attack on England batsman Joe Root in a Birmingham pub in the early hours of Sunday morning.