attempt at implementing different ml algorithms