CVXOPT QP Solver: TypeError: 'A' debe ser una matriz 'd' con 1000 columnas

Estoy tratando de usar el solucionador CVXOPT qp para calcular los multiplicadores de Lagrange para una máquina de vectores de soporte

def svm(X, Y, c):
      m = len(X)
      P = matrix(np.dot(Y, Y.T) * np.dot(X, X.T))
      q = matrix(np.ones(m) * -1)
      g1 = np.asarray(np.diag(np.ones(m) * -1))
      g2 = np.asarray(np.diag(np.ones(m)))
      G = matrix(np.append(g1, g2, axis=0))
      h = matrix(np.append(np.zeros(m), (np.ones(m) * c), axis =0))
      A = np.reshape((Y.T), (1,m))
      b = matrix([0])

      print (A).shape

      A = matrix(A)

      sol = solvers.qp(P, q, G, h, A, b)
      print sol

aquíX es un1000 X 2 matriz yY tiene el mismo número de etiquetas. El solucionador arroja el siguiente error:$ python svm.py (1, 1000) Traceback (most recent call last): File "svm.py", line 35, in <module> svm(X, Y, 50) File "svm.py", line 29, in svm sol = solvers.qp(P, q, G, h, A, b) File "/usr/local/lib/python2.7/site-packages/cvxopt/coneprog.py", line 4468, in qp return coneqp(P, q, G, h, None, A, b, initvals, options = options) File "/usr/local/lib/python2.7/site-packages/cvxopt/coneprog.py", line 1914, in coneqp %q.size[0]) TypeError: 'A' must be a 'd' matrix with 1000 columns

Imprimí la forma de A y es un(1,1000) matriz después de remodelar a partir de un vector. ¿Qué está causando exactamente este error?

Respuestas a la pregunta(3)

Su respuesta a la pregunta