Peculiar Rendered Output From Bold Math Font

You have declared some bold fonts but you are using \pmb that is "poor man's bold" which simply over-prints three copies of the letter, offset slightly to give the appearance of bold when no bold font is available.

Use \symbf or \mathbf etc to get the bold characters from the math fonts.


David Carlisle is correct, but I think it would be useful to supplement his answer with an example of how to use Artemisia Bold Italic in math mode:

\documentclass{article}
\usepackage[paperwidth=10cm]{geometry}
\usepackage{titlesec}
\usepackage{unicode-math}
\usepackage[greek, english]{babel}
\usepackage{mathtools}

\defaultfontfeatures{Scale = MatchLowercase}
\setmainfont{GFSArtemisia.otf}[Scale = 1.0]
\setmathfont{Libertinus Math}
\setmathfont[range=up,
             Script=Latin, script-features={}, sscript-features={}
            ]{GFS Artemisia Regular}
\setmathfont[range=it,
             Script=Latin, script-features={}, sscript-features={}
            ]{GFS Artemisia Italic}
\setmathfont[range=bfup,
             Script=Latin, script-features={}, sscript-features={}
            ]{GFS Artemisia Bold}
\setmathfont[range=bfit,
             Script=Latin, script-features={}, sscript-features={}
            ]{GFS Artemisia Bold Italic}

\begin{document}

Text
%
\begin{equation}
    \symbfit{w}^{t+1} =
       \symbfit{w}^{t}
       + a \cdot f\left(\symbfit{w}^{t} \cdot \symbfit{x}^{t}\right)
           \cdot \symbfit{x}^{t}
\end{equation}

\end{document}

Artemisia font sample

The mathastext or mathspec packages would also work, with less boilerplate. (You can at least remove the Script, script-features and sscript-features lines if you choose. Their only purpose is to suppress harmless warning messages.)

I also removed a few packages that are redundant with unicode-math. It loads fontspec and amsmath for you, and has its own \boldmath, \mathbf and \symbf commands that you should use instead of bm.

If you really need to fake a bold face for a font that does not have one, you can do that with the fontspec font option [FakeBold=1.2], or whatever other number looks best.