Search in sources :

Example 51 with Long2DoubleOpenHashMap

use of it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap in project angel by Tencent.

the class SparsePush method doUpdate.

@Override
protected void doUpdate(ServerSparseDoubleLongKeyRow[] rows, PartitionUpdateParam param) {
    CommonParam.PSFPartitionUpdateParam partParam = (CommonParam.PSFPartitionUpdateParam) param;
    int rowId = partParam.getInts()[0];
    long[] indices = partParam.getLongs();
    double[] values = partParam.getDoubles();
    ServerSparseDoubleLongKeyRow row = rows[rowId];
    Long2DoubleOpenHashMap data = new Long2DoubleOpenHashMap(indices, values);
    row.setIndex2ValueMap(data);
}
Also used : ServerSparseDoubleLongKeyRow(com.tencent.angel.ps.impl.matrix.ServerSparseDoubleLongKeyRow) CommonParam(com.tencent.angel.ml.matrix.psf.common.CommonParam) Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap)

Example 52 with Long2DoubleOpenHashMap

use of it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap in project angel by Tencent.

the class Sqrt method doUpdate.

@Override
protected void doUpdate(ServerSparseDoubleLongKeyRow[] rows) {
    Long2DoubleOpenHashMap from = rows[0].getData();
    Long2DoubleOpenHashMap to = from.clone();
    for (Map.Entry<Long, Double> entry : to.long2DoubleEntrySet()) {
        to.put(entry.getKey().longValue(), Math.sqrt(entry.getValue()));
    }
}
Also used : Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap) Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap) Map(java.util.Map)

Example 53 with Long2DoubleOpenHashMap

use of it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap in project angel by Tencent.

the class SubS method doUpdate.

@Override
protected void doUpdate(ServerSparseDoubleLongKeyRow[] rows, double[] values) {
    double scalar = values[0];
    Long2DoubleOpenHashMap from = rows[0].getData();
    Long2DoubleOpenHashMap to = from.clone();
    to.defaultReturnValue(scalar);
    for (Map.Entry<Long, Double> entry : to.long2DoubleEntrySet()) {
        entry.setValue(entry.getValue() - scalar);
    }
    rows[1].setIndex2ValueMap(to);
}
Also used : Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap) Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap) Map(java.util.Map)

Example 54 with Long2DoubleOpenHashMap

use of it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap in project angel by Tencent.

the class MapWithIndex method doUpdate.

@Override
protected void doUpdate(ServerSparseDoubleLongKeyRow[] rows, Serialize func) {
    MapWithIndexFunc mapper = (MapWithIndexFunc) func;
    Long2DoubleOpenHashMap data1 = rows[0].getData();
    Long2DoubleOpenHashMap data2 = data1.clone();
    // TODO: a better way is needed to deal with defaultValue
    assert (data2.defaultReturnValue() == 0.0);
    for (java.util.Map.Entry<Long, Double> entry : data2.long2DoubleEntrySet()) {
        entry.setValue(mapper.call(entry.getKey().intValue(), entry.getValue()));
    }
    rows[1].setIndex2ValueMap(data2);
}
Also used : Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap) Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap)

Example 55 with Long2DoubleOpenHashMap

use of it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap in project angel by Tencent.

the class Zip2MapWithIndex method doUpdate.

@Override
protected void doUpdate(ServerSparseDoubleLongKeyRow[] rows, Serialize func) {
    Zip2MapWithIndexFunc mapper = (Zip2MapWithIndexFunc) func;
    Long2DoubleOpenHashMap from1 = rows[0].getData();
    Long2DoubleOpenHashMap from2 = rows[1].getData();
    Long2DoubleOpenHashMap to = from1.clone();
    // TODO: a better way is needed to deal with defaultValue
    assert (from1.defaultReturnValue() == 0.0 && from2.defaultReturnValue() == 0.0);
    LongSet keySet = from1.keySet();
    keySet.addAll(from2.keySet());
    for (long key : keySet) {
        to.put(key, mapper.call((int) key, from1.get(key), from2.get(key)));
    }
    rows[2].setIndex2ValueMap(to);
}
Also used : LongSet(it.unimi.dsi.fastutil.longs.LongSet) Long2DoubleOpenHashMap(it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap)

Aggregations

Long2DoubleOpenHashMap (it.unimi.dsi.fastutil.longs.Long2DoubleOpenHashMap)59 Map (java.util.Map)29 LongSet (it.unimi.dsi.fastutil.longs.LongSet)7 ServerSparseDoubleLongKeyRow (com.tencent.angel.ps.impl.matrix.ServerSparseDoubleLongKeyRow)3 ArrayList (java.util.ArrayList)2 HyperLogLog (com.facebook.airlift.stats.cardinality.HyperLogLog)1 CommonParam (com.tencent.angel.ml.matrix.psf.common.CommonParam)1 PartitionGetResult (com.tencent.angel.ml.matrix.psf.get.base.PartitionGetResult)1 RowOffset (com.tencent.angel.model.output.format.ModelPartitionMeta.RowOffset)1 ServerLongAnyRow (com.tencent.angel.ps.storage.vector.ServerLongAnyRow)1 ILongKeyPartOp (com.tencent.angel.psagent.matrix.transport.router.operator.ILongKeyPartOp)1 Int2DoubleOpenHashMap (it.unimi.dsi.fastutil.ints.Int2DoubleOpenHashMap)1 Int2FloatOpenHashMap (it.unimi.dsi.fastutil.ints.Int2FloatOpenHashMap)1 Int2IntOpenHashMap (it.unimi.dsi.fastutil.ints.Int2IntOpenHashMap)1 Long2DoubleMap (it.unimi.dsi.fastutil.longs.Long2DoubleMap)1 PrimitiveIterator (java.util.PrimitiveIterator)1 Configuration (org.apache.hadoop.conf.Configuration)1 Path (org.apache.hadoop.fs.Path)1