code: def change_parameters(self,params):
          
          no_of_params = 0
          for core_param in range(len(self.q)):
              for approx_param in range(self.q[core_param].param_no):
                  self.q[core_param].vi_change_param(approx_param, params[no_of_params])
                  no_of_params += 1
docs: Utility function for changing the approximate distribution parameters