Devolver un valor aleatorio de la matriz con probabilidad proporcional a su valor

Tengo una matriz como

$keywords = array('apple'=>10,'orange'=>2,'grape'=>12); 

Quiero elegir aleatoriamente una de las "Claves" de la matriz. Sin embargo, la distribución de probabilidad debe ser tal que la probabilidad de elegir un elemento sea proporcional a su valor.

Respuestas a la pregunta(3)

Su respuesta a la pregunta