Ich möchte einen benutzerdefinierten Spark Transformer in Java erstellen.Erstellen eines benutzerdefinierten Transformers In Java funke ml
Der Transformer ist Text Preprocessor, der wie ein Tokenizer funktioniert. Es benötigt eine Eingabespalte und eine Ausgabespalte als Parameter.
Ich schaute mich um und ich fand 2 Scala Traits HasInputCol und HasOutputCol.
Wie kann ich eine Klasse erstellen, die Transformer erweitert und HasInputCol und OutputCol implementiert?
Mein Ziel ist es, so etwas zu haben.
// Dataset that have a String column named "text"
DataSet<Row> dataset;
CustomTransformer customTransformer = new CustomTransformer();
customTransformer.setInputCol("text");
customTransformer.setOutputCol("result");
// result that have 2 String columns named "text" and "result"
DataSet<Row> result = customTransformer.transform(dataset);
Dies funktioniert nicht. Ich vermute es liegt an einem Bug. Ich bekomme '' 'java.lang.IllegalArgumentException: Anforderung fehlgeschlagen: Param d7ac3108-799c-4aed-a093-c85d12833a4e__inputCol gehört nicht zu fe3d99ba-e4eb-4e95-9412-f84188d936e3.''' – LonsomeHell
@LonsomeHell, nur um zu überprüfen , sind Sie sicher, dass Sie es mit einer gültigen Eingabespalte konfiguriert haben? – SergGr
Ja, ich habe setInput mit einem gültigen Spaltennamen verwendet. – LonsomeHell