NAME
UMLS::Similarity - A suite of Perl modules that implement a number of semantic similarity measures in order to calculate the similarity between two concepts in the UMLS. The measures use the UMLS-Interface module to access the UMLS present in a mysql database.
SYNOPSIS
use UMLS::Interface;
use UMLS::Similarity::lch;
use UMLS::Similarity::path;
my $umls = UMLS::Interface->new();
die "Unable to create UMLS::Interface object.\n" if(!$umls);
my $lch = UMLS::Similarity::lch->new($umls);
die "Unable to create measure object.\n" if(!$lch);
my $path = UMLS::Similarity::path->new($umls);
die "Unable to create measure object.\n" if(!$path);
my $cui1 = "C0005767";
my $cui2 = "C0007634";
$ts1 = $umls->getTermList($cui1);
my $term1 = pop @{$ts1};
$ts2 = $umls->getTermList($cui2);
my $term2 = pop @{$ts2};
my $lvalue = $lch->getRelatedness($cui1, $cui2);
my $pvalue = $path->getRelatedness($cui1, $cui2);
print "The lch similarity between $cui1 ($term1) and $cui2 ($term2) is $lvalue\n";
print "The path similarity between $cui1 ($term1) and $cui2 ($term2) is $pvalue\n";
DESCRIPTION
This package consists of Perl modules along with supporting Perl programs that implement the semantic relatedness measures described by Leacock & Chodorow (1998), Wu & Palmer (1994), Nguyen and Al-Mubaid (2006), Rada, et. al. 1989, Patwardhan (2003), Lin (1988), Resnik (1996), Jiang & Conrath (1997), Patwardhan (2006), Banerjee and Pedersen (2003) and a simple path based measure.
The Perl modules are designed as objects with methods that take as input two concepts. The semantic relatedness of these concepts is returned by these methods. A quantitative measure of the degree to which two word senses are related has wide ranging applications in numerous areas, such as word sense disambiguation, information retrieval, etc. For example, in order to determine which sense of a given word is being used in a particular context, the sense having the highest relatedness with its context word senses is most likely to be the sense being used. Similarly, in information retrieval, retrieving documents containing highly related concepts are more likely to have higher precision and recall values.
The following sections describe the organization of this software package and how to use it. A few typical examples are given to help clearly understand the usage of the modules and the supporting utilities.
REFERENCING
If you write a paper that has used UMLS-Interface in some way, we'd
certainly be grateful if you sent us a copy and referenced UMLS-Interface.
We have a published paper that provides a suitable reference:
@inproceedings{McInnesPP09,
title={{UMLS-Interface and UMLS-Similarity : Open Source
Software for Measuring Paths and Semantic Similarity}},
author={McInnes, B.T. and Pedersen, T. and Pakhomov, S.V.},
booktitle={Proceedings of the American Medical Informatics
Association (AMIA) Symposium},
year={2009},
month={November},
address={San Fransico, CA}
}
This paper is also found in
<http://www-users.cs.umn.edu/~bthomson/publications/pubs.html>
or
<http://www.d.umn.edu/~tpederse/Pubs/amia09.pdf>
CONTACT US
If you have any trouble installing and using UMLS-Similarity,
please contact us via the users mailing list :
umls-similarity@yahoogroups.com
You can join this group by going to:
http://tech.groups.yahoo.com/group/umls-similarity/
You may also contact us directly if you prefer :
Bridget T. McInnes: bthomson at cs.umn.edu
Ted Pedersen : tpederse at d.umn.edu
SEE ALSO
UMLS::Interface(1)
UMLS::Similarity::lch(3) UMLS::Similarity::path(3) UMLS::Similarity::wup(3) UMLS::Similarity::nam(3) UMLS::Similarity::cdist(3) UMLS::Similarity::lin(3) UMLS::Similarity::res(3) UMLS::Similarity::jcn(3) UMLS::Similarity::vector(3) UMLS::Similarity::random(3)
AUTHORS
Bridget McInnes <bthomson at umn.edu>
Siddharth Patwardhan <sidd at cs.utah.edu>
Serguei Pakhomov <pakh0002 at umn.edu>
Ted Pedersen <tpederse at d.umn.edu>
Ying Liu <liux0935 at umn.edu>
COPYRIGHT AND LICENSE
Copyright 2004-2011 by Bridget McInnes, Siddharth Patwardhan, Serguei Pakhomov, Ying Liu and Ted Pedersen
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.