All batteries have a self discharge rate. Can't be helped. Very cheap batteries self discharge faster than more expensive batteries.
If you have been using the electric starter a lot and not riding it much can kill a battery, it takes a good 15 to 30 minutes at highway speeds to fully recharge the battery after starting.
When not riding the bike you need to keep the battery charged with the proper charger.
Those low priced trickle chargers that you find most anywhere will kill as many batteries as they save. They may be low amps, 800 milliapms or less but charge at to high a voltage. Some over 15 volts.
Spend around $40 and get one thats 1.5 amp charger/maintianer that charges at 14.5 volts at 1.5 amps then drops to the maintainer of 13.5 volts and about 1/10 apm.
The 13.5 volts is high enough to maintain a fully charged battery, but not so high as to causing the battery to gas, this means boil out the water.
The cheaper batteries also won't recover from being discharged as well as better batteries.
As mentioned the cheap ones from Wal-Mart won't hold up well. Spend the extra few bucks and get one somewhere else.
Leo