17 using TraceLab.Components.DevelopmentKit.Tracers.InformationRetrieval;
19 using TraceLabSDK.Types;
21 namespace TraceLab.Components.Library.Tracers.InformationRetrieval
23 [Component(Name =
"Jensen-Shannon divergence",
24 Description =
"Computes Jensen-Shannon divergence between two sets of artifacts.",
25 Author =
"SEMERU; Evan Moritz",
27 [IOSpec(IOSpecType.Input,
"SourceArtifacts", typeof(TLArtifactsCollection))]
28 [IOSpec(IOSpecType.Input,
"TargetArtifacts", typeof(TLArtifactsCollection))]
29 [IOSpec(IOSpecType.Output,
"Similarities", typeof(TLSimilarityMatrix))]
30 [Tag(
"Tracers.InformationRetrieval")]
37 TLArtifactsCollection source = (TLArtifactsCollection)Workspace.Load(
"SourceArtifacts");
38 TLArtifactsCollection target = (TLArtifactsCollection)Workspace.Load(
"TargetArtifacts");
39 TLSimilarityMatrix sims =
JSD.
Compute(source, target);
40 Workspace.Store(
"Similarities", sims);