This construction can be generalized to a model with two parameters, \theta & \alpha, commonly called the
strength (or
concentration) and
discount parameters respectively. At time n+1, the next customer to arrive finds |B| occupied tables and decides to sit at an empty table with probability : \frac{\theta + |B| \alpha}{n + \theta}, or at an occupied table b of size |b| with probability : \frac)^{\underline m} & \text{if }k where x^{\overline m}=\prod_{i=0}^{m-1}(x+i) is the
rising factorial and x^{\underline m}=\prod_{i=0}^{m-1}(x-i) is the
falling factorial. It is worth noting that for the parameter setting where \alpha and \theta = -L\alpha, then (\theta + \alpha)_\,\Gamma(\theta/\alpha + |B|) }{\Gamma(\theta/\alpha)}\prod_{b\in B}\dfrac{\Gamma(|b|-\alpha)}{\Gamma(1-\alpha)}. In the one-parameter case, where \alpha is zero, and \theta>0 this simplifies to : \Pr(B_n = B\mid\theta) = \frac{\Gamma(\theta)\,\theta^}{\Gamma(\theta+n)}\prod_{b\in B} \Gamma(|b|). Or, when \theta is zero, and 0 : \Pr(B_n = B\mid\alpha) =\frac{\alpha^ }}{(L\gamma)^{\overline n}} where P(\ell_1)=\frac1L and x^{\overline m}=\prod_{i=0}^{m-1}(x+i) is the
rising factorial. In general, there are however multiple label states that all correspond to the
same partition. For a given partition, B, which has \left|B\right|\le L blocks, the number of label states that all correspond to this partition is given by the
falling factorial, L^{\underline{\left|B\right|} }=\prod_{i=0}^{\left|B\right|-1}(L-i). Taking this into account, the probability for the partition is : \text{Pr}(B_n=B\mid\gamma,L) = L^{\underline{\left|B\right|}}\,\frac{\prod_{i=1}^L\gamma^{\overline{\left|{b_i}\right|} }}{(L\gamma)^{\overline n}} which can be verified to agree with the general version of the partition probability that is given above in terms of the Pochhammer k-symbol. Notice again, that if B is outside of the support, i.e. |B|>L, the falling factorial, L^{\underline} evaluates to zero as it should. (Practical implementations that evaluate the log probability for partitions via \log L^{\underline}=\log\left|\Gamma(L+1)\right|-\log\left|\Gamma(L+1-|B|)\right| will return -\infty, whenever |B|>L, as required.)
Relationship between Dirichlet-categorical and one-parameter CRP Consider on the one hand, the one-parameter Chinese restaurant process, with \alpha=0 and \theta>0, which we denote \text{CRP}(\alpha=0,\theta); and on the other hand the Dirichlet-categorical model with L a positive integer and where we choose \gamma=\frac{\theta}{L}, which as shown above, is equivalent to \text{CRP}(\alpha=-\frac{\theta}{L},\theta). This shows that the Dirichlet-categorical model can be made arbitrarily close to \text{CRP}(0,\theta), by making L large.
Stick-breaking process The two-parameter Chinese restaurant process can equivalently be defined in terms of a
stick-breaking process. For the case where 0\le\alpha and \theta>-\alpha, the stick breaking process can be described as a hierarchical model, much like the above
Dirichlet-categorical model, except that there is an infinite number of label states. The table labels are drawn independently from the infinite categorical distribution \mathbf p=(p_1,p_2,\ldots), the components of which are sampled using
stick breaking: start with a stick of length 1 and randomly break it in two, the length of the left half is p_1 and the right half is broken again recursively to give p_2,p_3,\ldots. More precisely, the left fraction, f_k, of the k-th break is sampled from the
beta distribution: : f_k\sim B(1-\alpha,\theta+k\alpha),\; \text{for }k\ge1\text{ and }0\le\alpha The categorical probabilities are: : p_k=f_k\prod_{i=1}^{k-1}(1-f_k),\;\text{where the empty product evaluates to one.} For the parameter settings \alpha and \theta=-\alpha L, where L is a positive integer, and where the categorical is finite: \mathbf p=(p_1,\ldots, p_L), we can sample \mathbf p from an ordinary Dirchlet distribution as explained
above, but it can also be sampled with a
truncated stick-breaking recipe, where the formula for sampling the fractions is modified to: : f_k \sim B(-\alpha, \theta+k\alpha),\;\text{for }1\le k\le L-1\text{ and }\alpha and f_L=1. ==The Indian buffet process==