This information can be gleaned using ML techniques as well, through performing a “feature selection” which picks out the halo properties that best predict $N_{gal}$.

In § \[sec:data\] we describe the dataset we use derived from the Millennium simulations. In § \[sec:ml\] we describe the 2 ML techniques we employ to learn the mapping between halo properties and $N_{gal}$. In § \[sec:results\] we describe our results, i.e. how well our predictions match the actual values from Millennium. This section also includes a discussion on using ML to make mocks for different subpopulations of galaxies. We conclude in § \[sec:theend\].

Dataset {#sec:data}
=======

We construct our dataset from halo and galaxy catalogs at $z=0$ derived from the Millennium simulation [@S05; @Sea05]. These catalogs are obtained via querying the Millennium online database [@Lea06]. The halo catalogs were generated using a friends-of-friends (FoF) algorithm with linking length of 0.2 and the semi-analytic galaxy prescription used to populate these halos is described in @Cea06 [@dLea06; @dLB07]. The Millennium simulation is run with $2160^3$ particles in a $500{h^{-1}\rm{Mpc}}$ box. The cosmology employed has $\Omega_m=0.25$, $\Omega_b=0.045$, $\Omega_\Lambda=0.75$, $h=0.73$, $n_s=1$ and $\sigma_8=0.9$.

To obtain our dataset, we search through the Millennium halo catalog and extract all primary 