The engine evaluation ("2"/"1.4") is in fact very similar to how a human would evaluate a position. It is basically a sum of various factors such as material, king safety, piece activity, etc. evaluated not for the current position but for the position some 20 moves ahead or so; assuming perfect play from both sides.
In principle one could try to monitor the change in all those factors separately (instead of only their sum as engines do). For instance if a move leads to a lower value for "king safety" later on compared to the best move, one might be tempted to tell the learner something like: Your last move made your king more vulnerable
However I doubt that this would work in actual games, because:
- the learner's move might in fact have other issues: for instance it might neglect development and only because of this the player might have to make concessions later on regarding his king's protection (assuming best play).
- many factors might change at the same time, some going up some going down for instance. Trying to express this in words might be cumbersome, e.g.: Your last move neglected king safety, but improved your piece's activity and you lost a pawn but occupied an open file Would this information be helpful to a learner?
Because of this, I doubt that computer's will be able to teach you positional or intuitive play (based on principles) at least with current technology. Better to use classical methods such as other humans, reading/watching/listening annotated games, etc