I have a mixture distribution with likelihood function
$$ L(\theta) = \prod_{i=1}^N \sum_{k=1}^K f(X_i|\theta_k) \lambda_k $$
where $N$ is the sample size, $K$ is the number of component, $\theta_k$ is the parameter vector of component $k$, and $\lambda_k$ is the mixing probability of component $k$.
If I take the log of this I get
$$ \log \left[ L(\theta) \right] = \sum_{i=1}^N \log \left[ \sum_{k=1}^K f(X_i|\theta_k) \lambda_k \right] $$
My question is how do I evaluate the log-term for given $X$, $\theta$ and $\lambda$? Theoretically, I could compute the likelihoods $f(X_i|\theta_k)$ and sum them up weighted by the $\lambda_k$ and after take the log. However, I need to work with the log likelihoods to avoid floating point problems. My question therefore is how to compute the log term in the log likelihood above, if I can only compute $\log \left[ f(X_i|\theta_k) \right]$.