Even LGPL is super challenging here due to requiring dynamic linking. This is fine in Java (unless you use Graal AOT compilation) and Python, impossible in Go, and at best discouraged in other compiled languages like Rust and C++.
I think there's likely a copyleft middle ground - something like the Mozilla public license seems about right, where it copylefts improvements without infecting users. I don't know why Google chose Apache 2.0 over MPL or the like - for something like Android it makes sense, for something like Guava it's not clearcut. But, when people talk copyleft, they're rarely, rarely talking MPL.
I think it's unlikely that Google opensourced Tensorflow with a view to getting some free dev hours, they're doing it to push their OSS agenda, to wield influence over how everyone else does work.