Faits: A. Le 17 décembre 2009, A._ a été arrêté dans le cadre d'une enquête ouverte sur plainte de B._ pour extorsion et séquestration. Le lendemain, la Juge d'instruction du canton de Genève en charge de l'affaire (ci-après: la juge d'instruction) a inculpé A._ d'extorsion et chantage (art. 156 ch. 1 et 3 CP), de séquestration et enlèvement aggravés (art. 183 et 184 CP) ainsi que de tentative d'extorsion et chantage (art. 22 et 156 ch. 1 et 3 CP). En substance, il est reproché à A._ et à des comparses d'avoir obtenu de B._ le versement d'importantes sommes d'argent en exerçant diverses pressions sur lui. Sur requête de la juge d'instruction, la détention avant jugement de A._ a été prolongée à plusieurs reprises par la Chambre d'accusation du canton de Genève (ci-après: la Chambre d'accusation). Par ordonnance du 20 avril 2010, la détention a été prolongée une nouvelle fois pour une durée de deux mois, soit jusqu'au 20 juin 2010. Considérant qu'il existait des charges suffisantes à l'encontre du prénommé, la Chambre d'accusation a estimé que le maintien en détention était justifié par des risques de fuite et de collusion. B. Agissant par la voie du recours en matière pénale, A._ demande au Tribunal fédéral d'annuler cette décision et d'ordonner sa mise en liberté immédiate. Il requiert en outre l'assistance judiciaire. La Chambre d'accusation ne s'est pas déterminée. Le Procureur général du canton de Genève se réfère à l'ordonnance attaquée pour conclure au rejet du recours. A._ a renoncé à formuler des observations complémentaires.