b) =(cid:81)d

joint density p bounded away from 0 and ∞.

(A1) The feature domain is limited to X = [0, 1]d, with
(A2) At each round, the target function P (Y = 1|x) is
Lipschitz-continuous. The Lipschitz constant may

Algorithm 1 ADVERSARIAL RANDOM FOREST

Algorithm 2 FORDE

Adversarial Random Forests

Input: Training data X, tolerance δ
Output: Random forest classiﬁer f (0)

Sample ˜X(0) ∼(cid:81)d

j=1 P (Xj)
X+ ← row.append(X, ˜X(0))
Y ← row.append(1n, 0n)
f (0) ← RANDOMFOREST(X+, Y )
if ACC(f (0)) > 1/2 + δ then

converged ← FALSE
while not converged do

(cid:80)

for all b ∈ [B(0)], (cid:96) ∈ [L(0)
] do
yi

b
i:xi∈X (cid:96)

nb

b

b) ← 2
q(θ(cid:96)
end for
for i ∈ [n] do

Sample tree b ∈ [B(0)] uniformly
Sample leaf (cid:96) ∈ [L(0)
] w.p. q(θ(cid:96)
b)
j=1 P (Xj|θ(cid:96)
Sample ˜x(1)
b)

i ∼(cid:81)d

b

end for
X+ ← row.append(X, ˜X(1))
f (1) ← RANDOMFOREST(X+, Y )
if ACC(f (1)) ≤ 1/2 + δ then

converged ← TRUE
f (0) ← f (1)

else

end if
end while

end if

(cid:80)
Adversarial Random Forests for Density Estimation and Generative Modeling