I made a thread about this a while ago, and the summary of responses was:
Don't bother.
What you could do would be to learn the COLL case your OLL solves so that you know when you'll get a cpll skip, adj corner swap or diag corner swap. You could perhaps learn a second alg for each OLL to avoid getting any diag corner swaps at all.