use of com.airbnb.aerosolve.core.FeatureVector in project aerosolve by airbnb.
the class CustomMultiscaleQuantizeTransformTest method testSelectAndExcludeFeatures.
@Test
public void testSelectAndExcludeFeatures() {
Config config = ConfigFactory.parseString(makeConfig("select_features: [\"lat\", \"long\"] \n" + "exclude_features: [\"lat\"] \n"));
Transform transform = TransformFactory.createTransform(config, "test_quantize");
FeatureVector featureVector = makeFeatureVector();
transform.doTransform(featureVector);
Map<String, Set<String>> stringFeatures = featureVector.getStringFeatures();
assertTrue(stringFeatures.size() == 2);
Set<String> out = stringFeatures.get("loc_quantized");
log.info("quantize output");
for (String string : out) {
log.info(string);
}
assertTrue(out.size() == 2);
assertTrue(out.contains("long[1.0]=40.0"));
assertTrue(out.contains("long[10.0]=40.0"));
}
use of com.airbnb.aerosolve.core.FeatureVector in project aerosolve by airbnb.
the class CustomMultiscaleQuantizeTransformTest method testSelectFeatures.
@Test
public void testSelectFeatures() {
Config config = ConfigFactory.parseString(makeConfig("select_features: [\"lat\"] \n"));
Transform transform = TransformFactory.createTransform(config, "test_quantize");
FeatureVector featureVector = makeFeatureVector();
transform.doTransform(featureVector);
Map<String, Set<String>> stringFeatures = featureVector.getStringFeatures();
assertTrue(stringFeatures.size() == 2);
Set<String> out = stringFeatures.get("loc_quantized");
log.info("quantize output");
for (String string : out) {
log.info(string);
}
assertTrue(out.size() == 2);
assertTrue(out.contains("lat[10.0]=30.0"));
assertTrue(out.contains("lat[1.0]=37.0"));
}
use of com.airbnb.aerosolve.core.FeatureVector in project aerosolve by airbnb.
the class CutFloatTransformTest method testTransform.
@Test
public void testTransform() {
Config config = ConfigFactory.parseString(makeConfig());
Transform transform = TransformFactory.createTransform(config, "test_cut");
FeatureVector featureVector = TransformTestingHelper.makeFeatureVector();
transform.doTransform(featureVector);
Map<String, Set<String>> stringFeatures = featureVector.getStringFeatures();
assertTrue(stringFeatures.size() == 1);
Map<String, Double> feat1 = featureVector.getFloatFeatures().get("loc");
assertEquals(2, feat1.size());
assertEquals(37.7, feat1.get("lat"), 0.1);
assertNull(feat1.get("long"));
assertEquals(-20.0, feat1.get("z"), 0.1);
}
use of com.airbnb.aerosolve.core.FeatureVector in project aerosolve by airbnb.
the class CutFloatTransformTest method testTransformWithNewOutput.
@Test
public void testTransformWithNewOutput() {
Config config = ConfigFactory.parseString(makeConfigWithOutput());
Transform transform = TransformFactory.createTransform(config, "test_cut");
FeatureVector featureVector = TransformTestingHelper.makeFeatureVector();
transform.doTransform(featureVector);
Map<String, Set<String>> stringFeatures = featureVector.getStringFeatures();
assertTrue(stringFeatures.size() == 1);
// original feature should not change
Map<String, Double> feat1 = featureVector.getFloatFeatures().get("loc");
assertEquals(3, feat1.size());
assertEquals(37.7, feat1.get("lat"), 0.1);
assertEquals(40.0, feat1.get("long"), 0.1);
assertEquals(-20, feat1.get("z"), 0.1);
// capped features are in a new feature family
assertTrue(featureVector.getFloatFeatures().containsKey("new_output"));
Map<String, Double> feat2 = featureVector.getFloatFeatures().get("new_output");
assertEquals(1, feat2.size());
assertEquals(37.7, feat2.get("lat"), 0.1);
assertNull(feat2.get("long"));
assertNull(feat2.get("z"));
}
use of com.airbnb.aerosolve.core.FeatureVector in project aerosolve by airbnb.
the class FloatToDenseTransformTest method testPartial.
@Test
public void testPartial() {
FeatureVector featureVector = testTransform(makeFeatureVectorPartial());
Map<String, List<Double>> denseFeatures = featureVector.getDenseFeatures();
assertNull(denseFeatures);
}
Aggregations