In practice AMD and Intel GPUs should be suitable for machine learning but the software story isn't good. I know I can buy a NVIDIA card and know it's a good investment because everything worth with CUDA and be training models in less than a day. If I went with some other brand I'd expect to put 6 man*months into figuring out the software story, and that's a lot more than the price difference in the cards.
I've been wondering about the soundness of Intel's software strategy in that OneAPI ("One" is a bad smell in marketing speak, the only premium product in my mind that has "One" in the name is "Purina ONE" pet food, the XBOX ONE is an astonishing own goal of a name because you'd never get your mom to understand that an XBOX ONE is better than an XBOX or XBOX 360) is based on OpenCL and the one thing I know about OpenCL is that I don't know anyone who likes coding for it. The idea that you could code for FPGA and GPU out of the same API also seems delusional because FPGA is (mostly) about latency and GPU is about throughput. That is, FPGA can do certain small operations insanely fast and avoid the overhead of 16-bit math when 13-bit math will do, GPU is all about doing large operations in bulk.