给定一个设计矩阵(初始列为 1,对应于偏差因子),我可以使用各种 Python 工具执行标准的 NN 风格的 L2-Regularized 参数估计,其中只有权重是正则化的
scipy.optimize.minimize(lambda p: np.mean((np.dot(dmat, p) - y_data)**2) + lamb*np.dot(p[1:], p[1:]), np.zeros(n_params).T).x
或者
scipy.optimize.minimize(lambda p: np.mean((np.dot(dmat, p) - y_data)**2) + 2*lamb*tf.nn.l2_loss(p[1:]).eval(), np.zeros(n_params).T).x
tf.matrix_solve_ls
但是我看不出有什么办法可以排除使用TensorFlow的正则化的偏差
tf.matrix_solve_ls(dmat, np.array([y_data]).T, l2_regularizer=lamb*len(dmat)).eval()
相当于
scipy.optimize.minimize(lambda p: np.mean((np.dot(dmat, p) - y_data)**2) + lamb*np.dot(p, p), np.zeros(n_params).T).x
如何使用 正则化排除偏差(或通过构造,第一个参数)tf.matrix_solve_ls
?