Я хочу реализовать собственный искровой классификатор с пользовательскими параметрами в java .Поскольку я хотел бы, чтобы он был совместим с конвейерной архитектурой, я хотел бы использовать параметр param / parammap для реализации своих собственных дополнительных параметров.
До сих пор я мог реализовывать пользовательские искровые классификаторы, ноЯ не мог понять, как правильно использовать карту параметров в Java.Это то, что я получил до сих пор, я унаследовал от класса классификатора и настроил конкретную модель классификатора.Теперь я хотел бы, чтобы у классификатора был другой параметр в его карте параметров, скажем, параметр "n" типа integer со значением по умолчанию = 1.
Какой самый подходящий и подходящий способ сделать это?Как мне его определить и нужно ли учитывать другие изменения, например, в методах copy (), чтобы убедиться, что он совместим с другими функциями искры?
public class CustomClassifierTemplate extends Classifier<Vector, CustomClassifierTemplate, CustomClassifierTemplate.CustomClassifierModelTemplate>{
public class CustomClassifierModelTemplate extends ClassificationModel<Vector,CustomClassifierModelTemplate>{
@Override
public String uid() {
// TODO Auto-generated method stub
return null;
}
@Override
public int numClasses() {
// TODO Auto-generated method stub
return 0;
}
@Override
public Vector predictRaw(Vector arg0) {
// TODO Auto-generated method stub
return null;
}
@Override
public CustomClassifierModelTemplate copy(ParamMap arg0) {
// TODO Auto-generated method stub
//Creates a copy of this instance with the same UID and some extra params.
CustomClassifierModelTemplate m = new CustomClassifierModelTemplate();
m.org$apache$spark$ml$param$Params$_setter_$org$apache$spark$ml$param$Params$$paramMap_$eq(arg0);
return m;
}
}
@Override
public String uid() {
// TODO Auto-generated method stub
return null;
}
@Override
public CustomClassifierTemplate copy(ParamMap arg0) {
// TODO Auto-generated method stub
//Creates a copy of this instance with the same UID and some extra params.
CustomClassifierTemplate c = new CustomClassifierTemplate();
c.org$apache$spark$ml$param$Params$_setter_$org$apache$spark$ml$param$Params$$paramMap_$eq(arg0);
return c;
}
@Override
public CustomClassifierModelTemplate train(Dataset<?> arg0) {
// TODO Auto-generated method stub
return null;
}
}