Chrissy Teigen has broken a month-long social media silence with a blog post apologising for her "past horrible tweets".