First of all, you need to find a character you're willing to put a lot of time and effort into learning.
Judging by your sig it looks like you already got two but I would suggest only focusing on one at a time instead of both at once. Every character plays differently after all and some require different methods, approaches, techs, and so forth.
After that, there are actually several different ways to practice and get better...
1. Read or watch guides on said character
Sometimes it takes more than just practice to get better with a character. You need to know what they're capable of. You need to know their weaknesses, what their combos are, what can KO an opponent and how (and at what percent), and their match-ups. This should probably be the first step to begin with, because how are you gonna practice something you aren't even aware of...?
2. Practicing against human opponents is the most optimal
Practicing against CPUs are all well and good when you need to practice a certain tech or combo; however they simply cannot compare to an actual opponent. CPUs really don't take advantage of a whole lot the character can do whereas a human opponent will. Not only that they will adapt and read you, possibly know your characters weaknesses, and a whole lot more to top it off.
SmashBoards has a section for both 3DS and Wii U to find opponents to go against.
There are Discord Groups (although I have never joined one) that are dedicated to Smash and finding opponents.
There's even Anthers Ladder; however from my understanding that is a much more competitive environment.
I could even help you practice if you wish although I don't think I'm perfectly suited to be a teacher as I'm still improving myself.
3. Don't forget about Training Mode
This is useful in it's own ways as you can practice tech as long as you want, and even practice what combos and mix-ups work at what percents against certain characters as you can always change the percents. It's a really good way to at the very least hammer the combo/skill into your brain, but don't get discouraged if you can't pull it off right away against an actual opponent.
4. Watching actual matches/Tournaments are also good
Maybe this goes with the first point, but whether you're aiming to be a competitive player or want to get better just to simply be better watching actual matches with your character is also a really good idea. You might learn a lot of tricks from good players.
That's really all I can think of practice wise. One thing I should probably mention is it's also wise to take note of your habits while practicing or even during an actual match. We all gottem, and a lot of us are sometimes not even aware we have them to begin with. Saving replays and watching them can help, and even uploading them and posting them so people can give you advice can also help. Sometimes you just need an extra pair of eyes to help you out and someone to point out what you're doing wrong.
Hopefully this helps.