Second, I could claim to have used sophisticated Machine Learning software to analyze the mixing transactions.
I don't think any of the major blockchain analysis firms use ML.
In order to train a ML model, you need a dataset that is labeled with what you are trying to predict. Since all mixers are different, you would probably need a different model for each mixer. So the dataset would need to be specific for that mixer. If you already had that dataset, why would you need to train a model? You would already have the ability to get the information a model might be able to tell you.
I suspect that blockchain analysis companies are "customers" of various mixers, which will allow them to "watch" where their deposits "go", to draw conclusions about which UTXOs are associated with that particular mixer, which will allow them to deduct when a transaction is going from a third party to the mixer and when a transaction is going from the mixer to a third party. They usually wont know this is real time, but may be able to conclude this information after so many days/weeks.
Blockchain analysis is generally the art of making incremental conclusions and building on those conclusions. Say for example you have a CJ transaction with the following inputs and outputs:
IN | OUT
0.1 | 0.7
0.5 | 0.3
1.0 | 0.33
| 0.16
| 0.01
| 0.06
| 0.04
The first output can only belong to the third input, and since no other combination of outputs add up to the remaining 0.3 from the fist input, the 2nd input must also be associated with the third input. The only two outputs that add up 0.1, the last two outputs must be associated with the first input. That leaves the middle three outputs being associated with the middle input. This is a rather simple example, and sometimes blockchain analysis might not be able to match all inputs with all outputs, but might learn more information as outputs are spent.
What I don't understand is how can you trace a person who has mixed the coins in such way that there's no connection between their last UTXOs and the outputs they wanted to mix. It sounds impossible or realistically impractical given that there may be thousands of people who mix coins.
See this
thread. That person was able to "break" most mixers using a procedure similar to the above two examples in my post.