input: Write a python function to optimize parameters using minimize from scipy.optimize.
  assert np.allclose(ParamOptimizer(np.array([[1, 2], [3, 4]]), np.array([5, 11])).optimize(), [1, 2])
  assert np.allclose(ParamOptimizer(np.array([[1, 0], [0, 1]]), np.array([1, 1])).optimize(), [1, 1])
  assert np.allclose(ParamOptimizer(np.array([[2, 1], [1, 2]]), np.array([8, 8])).optimize(), [2, 3])
output: from scipy.optimize import minimize
  import numpy as np
  
  class ParamOptimizer:
      def __init__(self, A, b):
          self.A = A
          self.b = b
  
      def optimize(self):
          def objective(x):
              return np.sum((self.A @ x - self.b) ** 2)
  
          x0 = np.zeros(self.A.shape[1])
          result = minimize(objective, x0)
          return result.x