Package gannuNLP.dictionaries

Examples of gannuNLP.dictionaries.Wiki


  {   
    super(dict,name);
    this.dict=dict;
    File tmp=new File("./data/matrices/"+dict.getCompleteName().replace(">", "@@@@@")+"/");
    tmp.mkdirs();
    Wiki wiki=(Wiki)this.dict;
    for(Input doc:targets)
    {
      System.out.println("Calculating matrices for "+doc.toString());
      for(AmbiguousWord word:doc.getAmbiguousWords())
      {       
        if(word.getCurrentLemmaObject()!=null&&word.getSenses().size()>0&&word.getSenses().size()<150)
        {
          System.out.print(".");
          File fout=new File("./data/matrices/"+dict.getCompleteName().replace(">", "@@@@@")+"/"+Dictionary.normalizeLemmaforFile(word.getLemma())+".gmx");;
          if(!fout.exists())
          {           
            SmallPair p=new SmallPair(word.getLemmaObject());           
            for(int i=0;i<p.getLemma().getSenses().size();i++)
            {
              p.getCounts()[i][i]=(int)wiki.getCounts(p.getLemma().getSenses().get(i),p.getLemma().getSenses().get(i));
              for(int j=0;j<p.getLemma().getSenses().size();j++)
              {
                if(p.getCounts()[i][i]<(2*p.getLemma().getSenses().size()))
                {
                  if(p.getCounts()[i][i]==0)
                  {
                    p.getCounts()[i][j]=1;
                    p.getCounts()[j][i]=1
                  }
                  else
                  {
                    p.getCounts()[i][j]=p.getCounts()[i][i];
                    p.getCounts()[j][i]=p.getCounts()[i][i];
                  }                 
                }
                else
                {
                  if(j>i)
                  {
                    p.getCounts()[i][j]=0;
                  }
                }               
              }
            }
         
            for(int i=0;i<p.getLemma().getSenses().size();i++)
            {
              for(int j=i+1;j<p.getLemma().getSenses().size();j++)
              {
                if(p.getCounts()[i][i]>=(2*p.getLemma().getSenses().size())&&p.getCounts()[j][j]>=(2*p.getLemma().getSenses().size()))
                {
                  p.getCounts()[i][j]=(int)wiki.getCounts(p.getLemma().getSenses().get(i),p.getLemma().getSenses().get(j));
                  p.getCounts()[j][i]=p.getCounts()[i][j];
                  if(p.getCounts()[j][i]>=(2*p.getLemma().getSenses().size()))
                  {
                    i=p.getLemma().getSenses().size();
                    break;
 
View Full Code Here


   *  This method removes undesired senses from a lemma extracted from Wikipedia.
   *  @param lemma The target lemma.
   */
  public void modifyBow(Lemma lemma) throws Exception {
    ArrayList<Sense> removeList=new ArrayList<Sense>();
    Wiki w=(Wiki)((DataBroker)this.dict).getSource();
    int i=0;
   
    for(Sense s:lemma.getSenses())
    {
      if(w.isNotAnArticle(s.getSid()))
      {
        removeList.add(s);
      }
      i++;
    }
    for(Sense s:removeList)
    {
      lemma.getSenses().remove(s);
    }
    for(Sense s:lemma.getSenses())
    {
      for(ArrayList<Relation> list: s.getRelations().values())
      {
       
        for(int j=0;j<list.size();j++)
        {
          if(w.isNotAnArticle(list.get(j).getSid()))
          {
            list.remove(j);
            j--;
          }
       
View Full Code Here

  /**
   * @param args
   */
  public static void main(String[] args)throws Exception{
    Wiki w=new Wiki();
    w.setVersion(args[0]);
    w.setPath(args[1]);
    w.load("all");
    File d=new File(args[3]);
    d.mkdirs();
    w.createInputFromArticle(args[2], args[3]);
  }
View Full Code Here

TOP

Related Classes of gannuNLP.dictionaries.Wiki

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.