Implement Flexible Learning Models