组合部分标签向量并累加成完整向量
Posted jhcelue
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组合部分标签向量并累加成完整向量相关的知识,希望对你有一定的参考价值。
<strong><span style="font-size:18px;">/*** * @author YangXin * @info K-Means算法会对向量元素进行多次顺序的遍历,上次表示最适合于这样的訪问模式。 * 利用Mapper输出的部分向量。Reducer通过简单的拼接得到一个完整的向量。*/ package unitTwelve; import java.io.IOException; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Reducer; import org.apache.mahout.math.NamedVector; import org.apache.mahout.math.Vector; import org.apache.mahout.math.VectorWritable; public class VectorReducer extends Reducer<Text, VectorWritable, Text, VectorWritable>{ private VectorWritable writer = new VectorWritable(); protected void reduce(Text tag, Iterable<VectorWritable> values, Context context) throws IOException, InterruptedException{ Vector vector = null; for(VectorWritable partialVector : values){ if(vector == null){ vector = partialVector.get().like(); } partialVector.get().addTo(vector); } NamedVector namedVector = new NamedVector(vector, tag.toString()); writer.set(namedVector); context.write(tag, writer); } } </span></strong>
以上是关于组合部分标签向量并累加成完整向量的主要内容,如果未能解决你的问题,请参考以下文章