|
@@ -134,27 +134,23 @@ public class PAIModelV1 {
|
|
TFRequest request = new TFRequest();
|
|
TFRequest request = new TFRequest();
|
|
|
|
|
|
for (String feature : sparseUserStrFeatures) {
|
|
for (String feature : sparseUserStrFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
- String v = userFeatureMap.getOrDefault(key, "");
|
|
|
|
|
|
+ String v = userFeatureMap.getOrDefault(feature, "");
|
|
request.addFeed(feature, TFDataType.DT_STRING, new long[]{1}, new String[]{v});
|
|
request.addFeed(feature, TFDataType.DT_STRING, new long[]{1}, new String[]{v});
|
|
}
|
|
}
|
|
|
|
|
|
for (String feature : sparseUserLongFeatures) {
|
|
for (String feature : sparseUserLongFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
- long v = NumberUtils.toLong(userFeatureMap.getOrDefault(key, "0"), 0);
|
|
|
|
|
|
+ long v = NumberUtils.toLong(userFeatureMap.getOrDefault(feature, "0"), 0);
|
|
request.addFeed(feature, TFDataType.DT_INT64, new long[]{1}, new long[]{v});
|
|
request.addFeed(feature, TFDataType.DT_INT64, new long[]{1}, new long[]{v});
|
|
}
|
|
}
|
|
|
|
|
|
for (String feature : sparseSceneLongFeatures) {
|
|
for (String feature : sparseSceneLongFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
- long v = NumberUtils.toLong(sceneFeatureMap.getOrDefault(key, "0"), 0);
|
|
|
|
|
|
+ long v = NumberUtils.toLong(sceneFeatureMap.getOrDefault(feature, "0"), 0);
|
|
request.addFeed(feature, TFDataType.DT_INT64, new long[]{1}, new long[]{v});
|
|
request.addFeed(feature, TFDataType.DT_INT64, new long[]{1}, new long[]{v});
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
for (String feature : userFeatures) {
|
|
for (String feature : userFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
- double v = NumberUtils.toDouble(userFeatureMap.getOrDefault(key, "0.0"), 0.0);
|
|
|
|
|
|
+ double v = NumberUtils.toDouble(userFeatureMap.getOrDefault(feature, "0.0"), 0.0);
|
|
request.addFeed(feature.toLowerCase(), TFDataType.DT_DOUBLE, new long[]{1}, new double[]{v});
|
|
request.addFeed(feature.toLowerCase(), TFDataType.DT_DOUBLE, new long[]{1}, new double[]{v});
|
|
}
|
|
}
|
|
Map<String, double[]> doubleFeed = new HashMap<>();
|
|
Map<String, double[]> doubleFeed = new HashMap<>();
|
|
@@ -173,24 +169,22 @@ public class PAIModelV1 {
|
|
}
|
|
}
|
|
|
|
|
|
for (String feature : sparseAdLongFeatures) {
|
|
for (String feature : sparseAdLongFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
long[] longs = longFeed.computeIfAbsent(feature, k -> new long[items.size()]);
|
|
long[] longs = longFeed.computeIfAbsent(feature, k -> new long[items.size()]);
|
|
if (MapUtils.isEmpty(items.get(i).getFeatureMap())) {
|
|
if (MapUtils.isEmpty(items.get(i).getFeatureMap())) {
|
|
longs[i] = 0L;
|
|
longs[i] = 0L;
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- long v = NumberUtils.toLong(items.get(i).getFeatureMap().getOrDefault(key, "0"), 0L);
|
|
|
|
|
|
+ long v = NumberUtils.toLong(items.get(i).getFeatureMap().getOrDefault(feature, "0"), 0L);
|
|
longs[i] = v;
|
|
longs[i] = v;
|
|
}
|
|
}
|
|
|
|
|
|
for (String feature : sparseAdStrFeatures) {
|
|
for (String feature : sparseAdStrFeatures) {
|
|
- String key = feature.replace("_x_", "*").replace("_view", "(view)");
|
|
|
|
String[] strs = strFeed.computeIfAbsent(feature, k -> new String[items.size()]);
|
|
String[] strs = strFeed.computeIfAbsent(feature, k -> new String[items.size()]);
|
|
if (MapUtils.isEmpty(items.get(i).getFeatureMap())) {
|
|
if (MapUtils.isEmpty(items.get(i).getFeatureMap())) {
|
|
strs[i] = "";
|
|
strs[i] = "";
|
|
continue;
|
|
continue;
|
|
}
|
|
}
|
|
- String v = items.get(i).getFeatureMap().getOrDefault(key, "");
|
|
|
|
|
|
+ String v = items.get(i).getFeatureMap().getOrDefault(feature, "");
|
|
strs[i] = v;
|
|
strs[i] = v;
|
|
}
|
|
}
|
|
}
|
|
}
|