N_dimension input - n_dimension output is a too general description. You could think of it as a regression problem where you predict multi-dimensional output.
But also it could be the case that you are solving multiclass-classification problem:
input: n features
output: vector which defines class membership - either 0's and 1's or the real value which defines degree of membership to the class
Or you could also think of it as of multilabel classification problem:
input: n features
output: vector of 0 and 1 which define which labels are associated with the input.
So in general multi-dimensional output is not telling anything about the matter of task.
You could try 2 approaches to solve the task which involves multi-dimensional output:
1) One-vs-rest or one-vs-one strategies (or their variations) where for each 'part' (dimension) of the output you train separate classifier or separate regressor.
2) Neural network with multiple output neurons. I would suggest to try it after trying #1, neural networks are complicated, computing-expensive and maybe somewhat clumsy - so far, I wasn't able to construct neural network which would outperform other models in specific tasks I tried to solve. But of course, this is my personal opinion about NN. In your case they may really shine.