Saido Berahino has apologised to West Brom fans for his behaviour at the club but the Stoke City newcomer claims he was "in a situation I don't think most footballers will ever be in" at the Hawthorns.
The former England Under-21 forward moved to the bet365 Stadium last week in a deal that could reportedly rise to be worth £15million.
It completed an exit from West Brom that initially appeared to be on the cards in August 2015, from which point his fledgling career with his boyhood club turned sour.
Berahino threatened to refuse to play for Albion after a proposed switch to Totttenham was blocked and, although the 23-year-old backtracked, his stock barely recovered under boss Tony Pulis.
Ex-Stoke manager Pulis believes Berahino can be a success for his former side proved he "clears his head of all the nonsense that has gone swishing through it over the past six months".
The player himself accepts his professionalism was found wanting during a difficult spell but hinted his struggles under Pulis, who sent him to undertake specialist fitness training in France at the end of last year, were a two-way street.
"Of course I've got some regrets. Obviously I could have handled it much better," he told a news conference.
"But I was still a young lad, I got put in a situation that I don't think most footballers will ever be in.
"The fans didn't really know what was going on and I was the one to blame.
"I take [responsibility for] all my actions, all the wrong things that I've done.
"I've said it before, the West Brom fans deserve an apology from me for the way that I've gone on, but now I'm here and I'm raring to go."
Berahino could make his Stoke debut against Everton on Wednesday, although this is likely to be from the bench after manger Mark Hughes stated he will not be ready to feature in the starting line-up "any time soon".
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.