self.W_q = np.random.rand(num_hiddens, num_hiddens) self.W_k = np.random.rand(num_hiddens, num_hiddens) self.W_v = np.random.rand(num_hiddens, num_hiddens) self.W_o = np.random.rand(num_hiddens, num_hiddens)