The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

UMLS::Similarity::lch - Perl module for computing semantic relatedness of concepts in the Unified Medical Language System (UMLS) using the method described by Leacock and Chodorow (1998).

CITATION

 @article{LeacockC98,
  title={{Combining local context and WordNet similarity 
          for word sense identification}},
  author={Leacock, C. and Chodorow, M.},
  journal={WordNet: An Electronic Lexical Database},
  pages={265--283},
  year={1998}
 }

SYNOPSIS

  use UMLS::Interface;

  use UMLS::Similarity::lch;

  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);

  $cui1 = "C0005767";

  my $cui2 = "C0007634";

  @ts1 = $umls->getTermList($cui1);

  my $term1 = pop @ts1;

  @ts2 = $umls->getTermList($cui2);

  my $term2 = pop @ts2;

  my $value = $lch->getRelatedness($cui1, $cui2);

  print "The similarity between $cui1 ($term1) and $cui2 ($term2) is $value\n";

DESCRIPTION

This module computes the semantic relatedness of two concepts in the UMLS according to a method described by Leacock and Chodorow (1998). The relatedness measure proposed by Leacock and Chodorow is -log (length / (2 * D)), where length is the length of the shortest path between the two synsets (using node-counting) and D is the maximum depth of the taxonomy.

USAGE

The semantic relatedness modules in this distribution are built as classes that expose the following methods: new() getRelatedness()

TYPICAL USAGE EXAMPLES

To create an object of the lch measure, we would have the following lines of code in the perl program.

   use UMLS::Similarity::lch;
   $measure = UMLS::Similarity::lch->new($interface);

The reference of the initialized object is stored in the scalar variable '$measure'. '$interface' contains an interface object that should have been created earlier in the program (UMLS-Interface).

If the 'new' method is unable to create the object, '$measure' would be undefined.

To find the semantic relatedness of the concept 'blood' (C0005767) and the concept 'cell' (C0007634) using the measure, we would write the following piece of code:

   $relatedness = $measure->getRelatedness('C0005767', 'C0007634');

SEE ALSO

perl(1), UMLS::Interface

perl(1), UMLS::Similarity(3)

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

AUTHORS

  Bridget T McInnes <bthomson at cs.umn.edu>
  Siddharth Patwardhan <sidd at cs.utah.edu>
  Serguei Pakhomov <pakh0002 at umn.edu>
  Ted Pedersen <tpederse at d.umn.edu>

COPYRIGHT AND LICENSE

Copyright 2004-2010 by Bridget T McInnes, Siddharth Patwardhan, Serguei Pakhomov and Ted Pedersen

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.