skeleton for sklearn interface