The problem is datasets. How can you distinguish a good result from a bad result? In some cases, depending on the user, it could be both at the same time.
Most advancements in ML is not accomplished by some new super algorithm. Rather, advancements are reached when new datasets are presented!