Granted, if the OP's characterization of the game is accurate, Akali was definitely wrong; however, as often as I see people avoiding teamfights and costing their team a valuable player, I more often see people initiating at extremely inopportune times...
When you do have 4 people and the other team has 5, initiating at a disadvantage is stupid...If Akali is across the map, pull back to a tower (gives you a virtual 5th champion). Don't go rushing in to battle. If you manage to stun a character away from their team, don't rush in. Burst from range...if you get the kill, great, if not, LET THEM RUN - even though you didn't kill them, you most likely nuked them enough to effectively remove them from the coming fight. Give it a few seconds before you consider engaging so that your cooldowns come back up. If you fail to kill that champ that was out of line and give chase, you will run into the other 4 people on the other team while your abilities are on CD. You will die. This is the most common mistake I see in teamfights.
Ranged AD carries and AP carries are great for nuking down and punishing someone for being out of line. Tanks, Let them. Don't you dare initiate on this. It's not your job to guarantee kills. That's the carries' jobs. It's your job to keep the carries alive after a fight so that they can knock down a tower or push an inhibitor.
A similar situation to the above happens when tanks get greedy for kills because someone was caught out of place....as a TANK, don't try to nuke that player yet. Wait til your team nukes them, has their cooldowns back up and you can initiate on the whole team at an advantage now...you'll get more gold from getting 4 assists on the main team than getting the 1 kill and 0 assists because you initiated, got the kill and then subsequently your team was aced because everything was on CD.
As often as someone not being part of a teamfight is a problem, so also is the team initiating before that person can get there.
Don't try to be pro. Just play smart.