Sim_AlMubaid_2006
Sim_AlMubaid_2006(
dag,
terms,
distance = "longest_distances_via_LCA",
verbose = simona_opt$verbose
)
It also takes accout of the distance between term a
and b
, and the depth of the LCA term c
in the DAG.
The distance is calculated as:
D(a, b) = log(1 + d(a, b)*(max_depth - depth(c)))
Here d(a, b)
can be the shortest distance between a
and b
or the longst distance via LCA c
.
Then the distance is transformed into the similarity value scaled by the possible maximal and minimal values of D(a, b)
from the DAG:
= log(1 + 2*max_depth * max_depth) D_max
And the minimal value of D(a, b)
is zero when a
is identical to b
. Then the similarity value is scaled as:
= 1 - D(a, b)/D_max sim
Paper link: doi:10.1109/IEMBS.2006.259235 .
There is a parameter distance
which takes value of "longest_distances_via_LCA" (the default) or "shortest_distances_via_NCA":
term_sim(dag, terms, method = "Sim_AlMubaid_2006",
control = list(distance = "shortest_distances_via_NCA"))