use of com.alibaba.alink.operator.batch.source.TableSourceBatchOp in project Alink by alibaba.
the class MinMaxTest method test.
@Test
public void test() throws Exception {
BatchOperator batchData = new TableSourceBatchOp(GenerateData.getBatchTable());
StreamOperator streamData = new TableSourceStreamOp(GenerateData.getStreamTable());
MinMaxScalerTrainBatchOp op = new MinMaxScalerTrainBatchOp().setSelectedCols("f0", "f1").linkFrom(batchData);
new MinMaxScalerPredictBatchOp().linkFrom(op, batchData).lazyCollect();
new MinMaxScalerPredictStreamOp(op).linkFrom(streamData).print();
MinMaxScalerModel model = new MinMaxScaler().setSelectedCols("f0", "f1").setOutputCols("f0_1", "f1_1").fit(batchData);
List<Row> rows = model.transform(batchData).collect();
rows.sort(new Comparator<Row>() {
@Override
public int compare(Row o1, Row o2) {
if (o1.getField(0) == null) {
return -1;
}
if (o2.getField(0) == null) {
return 1;
}
if ((double) o1.getField(0) > (double) o2.getField(0)) {
return 1;
}
if ((double) o1.getField(0) < (double) o2.getField(0)) {
return -1;
}
return 0;
}
});
assertEquals(rows.get(0), Row.of(null, null, null, null));
assertEquals(rows.get(1), Row.of(-1., -3., 0., 0.));
assertEquals(rows.get(2), Row.of(1., 2., 0.4, 1.));
assertEquals(rows.get(3), Row.of(4., 2., 1., 1.));
model.transform(streamData).print();
StreamOperator.execute();
}
use of com.alibaba.alink.operator.batch.source.TableSourceBatchOp in project Alink by alibaba.
the class TensorTypesTest method test.
@Test
public void test() throws Exception {
Row[] tensors = new Row[] { Row.of(new FloatTensor(new float[] { 0.0f, 1.0f })) };
MemSourceBatchOp memSourceBatchOp = new MemSourceBatchOp(Arrays.asList(tensors), new TableSchema(new String[] { "col0" }, new TypeInformation<?>[] { TensorTypes.TENSOR }));
DataSet<Tensor<?>> mapedTensor = memSourceBatchOp.getDataSet().map(new MapFunction<Row, Tensor<?>>() {
@Override
public Tensor<?> map(Row value) throws Exception {
return (Tensor<?>) value.getField(0);
}
});
new TableSourceBatchOp(DataSetConversionUtil.toTable(MLEnvironmentFactory.DEFAULT_ML_ENVIRONMENT_ID, mapedTensor.map(new MapFunction<Tensor<?>, Row>() {
@Override
public Row map(Tensor<?> value) throws Exception {
return Row.of(value);
}
}), new String[] { "col0" }, new TypeInformation<?>[] { TensorTypes.TENSOR })).print();
}
use of com.alibaba.alink.operator.batch.source.TableSourceBatchOp in project Alink by alibaba.
the class BisectingKMeansTest method before.
@Before
public void before() {
Row[] rows = new Row[] { Row.of(0, "0 0 0"), Row.of(1, "0.1 0.1 0.1"), Row.of(2, "0.2 0.2 0.2"), Row.of(3, "9 9 9"), Row.of(4, "9.1 9.1 9.1"), Row.of(5, "9.2 9.2 9.2") };
inputBatchOp = new TableSourceBatchOp(MLEnvironmentFactory.getDefault().createBatchTable(rows, new String[] { "id", "vector" }));
inputStreamOp = new TableSourceStreamOp(MLEnvironmentFactory.getDefault().createStreamTable(rows, new String[] { "id", "vector" }));
expectedPrediction = new long[] { 0, 0, 0, 1, 1, 1 };
}
use of com.alibaba.alink.operator.batch.source.TableSourceBatchOp in project Alink by alibaba.
the class KMeansTest method before.
@Before
public void before() {
Row[] rows = new Row[] { Row.of(0, "0 0 0"), Row.of(1, "0.1 0.1 0.1"), Row.of(2, "0.2 0.2 0.2"), Row.of(3, "9 9 9"), Row.of(4, "9.1 9.1 9.1"), Row.of(5, "9.2 9.2 9.2") };
inputBatchOp = new TableSourceBatchOp(MLEnvironmentFactory.getDefault().createBatchTable(rows, new String[] { "id", "vector" }));
inputStreamOp = new TableSourceStreamOp(MLEnvironmentFactory.getDefault().createStreamTable(rows, new String[] { "id", "vector" }));
expectedPrediction = new double[] { 0.173, 0, 0.173, 0.173, 0, 0.173 };
}
Aggregations