Encoding Tags for Random Forest
You should use sklearn MultiLabelBinarizer

from sklearn.preprocessing import MultiLabelBinarizer
lb = MultiLabelBinarizer()

lb.fit_transform([['A', 'B', 'C'],[ 'A', 'D', 'E', 'B']])


array([[1, 1, 1, 0, 0],
$\hspace{1cm}$ [1, 1, 0, 1, 1]])


If required, remove the columns below a threshold value (sum of the column). This will reduce the Features count by removing the low variance Features