Fairly good semiprime estimate I have found a nice estimate for the semiprime counting function
\begin{align}
&f_{2}(x):=x \log \left(
\log (x)/\log \left(
a+a/ \exp\left( (\log (\log (x)-2)-1)^2/2\right) (\log (x)-2)
\right)
\right)/\log (x)\\
\end{align}
for some constant $a\approx 2.08455$, which I think is more accurate than
\begin{align}
&f_{1}(x):=\frac{x \log (\log (x))}{\log (x)}\\
\end{align}

and I believe that a similar approach could provide far sharper approximations for triprimes, etc. Is it worthwile trying to establish ever sharper estimates for semiprime etc. asymptotics?
 A: The relative errors get much worse as you increase the range. At $x=10^{18}$ it gives $9.73\times10^{16}$ vs. $9.71\times10^{16},$ showing that you have a serious overfit in the examples you gave. Still, the estimate is closer than the basic $f_1$. I don't know if that will keep up -- not much seems to be known about the second-order term of the semiprime counting function. But I don't have much faith in the particular form of your approximation; probably you could do just as well with something of the form
$$
f_3(x)=\frac{x\log\log x+\beta x}{\log x}.
$$
Update: The following year Henri Lifchitz found that there are 86389956293761485464 semiprimes up to $10^{21}.$ Let's see how these methods compare. First, using the value above for $10^{18}$ I estimate $\beta=0.3$ for $f_3$. At $10^{21},$ the simple estimate $f_1$ is too low by 7%; $f_2$, the estimate above, actually becomes worse at 14% too low, and $f_3$ is too high by 0.03%. Now that's a lot more accuracy than I'd expect from my simple estimate, but still I think it shows the value of simplicity: there's no point in using an elaborate method when you're unsure even about its second-order term.
