I suppose "all of the above." Reading your opponent and discerning habits is the single most important thing in a competitive fighting game. That dictates the match, you are not fighting a character or a play-style, you are fighting a human being that is readily able to adapt. If you improve your DI, you obviously live longer. Power shielding is also important to practice, but not absolutely necessary. It could come in handy for some matches though and it never hurts. That being said, it is not usually something someone practices to get better either. You become a better player by competing against better opponents; as you stated, there is much to learn but those things are not as apparent until you lose. If you have any local tournaments near your area, you should probably try to enter if your goal is to improve. If and when someone beats you, ask them what mistakes you made. Learn from others. Watch some sets with Sonic and see if there is any tech you missed that you could incorporate to mix up your game-play, read the Sonic boards on here. If you are not too keen on entering an offline tournament, you could always try and practice fighting game fundamentals such as proper spacing.