Package uk.ac.cam.ha293.tweetlabel.classify

Examples of uk.ac.cam.ha293.tweetlabel.classify.FullAlchemyClassification


    //need a mapping between documents and toptopics
    topTopics = new ArrayList<String>();
    for(int i=0; i<numDocs; i++) {
      String topTopic = "";
      if(topicType.equals("alchemy")) {
        FullAlchemyClassification cl = new FullAlchemyClassification(docIDLookup.get(i).getId());
        if(cl.getCategorySet().size()==0) topTopic="NO_TOP_TOPIC";
        else topTopic = cl.getCategorySet().toArray(new String[0])[0];
      } else if(topicType.equals("calais")) {
        FullCalaisClassification cl = new FullCalaisClassification(docIDLookup.get(i).getId());
        if(cl.getCategorySet().size()==0) topTopic="NO_TOP_TOPIC";
        else topTopic = cl.getCategorySet().toArray(new String[0])[0];
        //Required because of Calais' stupid classification system
        if(topTopic.equals("Other")) {
          if(cl.getCategorySet().size()==1) topTopic="NO_TOP_TOPIC";
          else topTopic = cl.getCategorySet().toArray(new String[0])[1];
        }
      } else if(topicType.equals("textwise")) {
        FullTextwiseClassification cl = new FullTextwiseClassification(docIDLookup.get(i).getId(),true);
        if(cl.getCategorySet().size()==0) topTopic="NO_TOP_TOPIC";
        else topTopic = cl.getCategorySet().toArray(new String[0])[0];
      }
      if(verbose) System.out.println("Document "+i+" found to have top topic "+topTopic+", id "+topicIDs.get(topTopic));
      topTopics.add(topTopic);
     
      //add this id to the topTopics map
View Full Code Here


  public void fillAlchemy() {
    //get clasifications
    System.out.println("Filling from Alchemy classifications");
    FullAlchemyClassification[] classifications = new FullAlchemyClassification[d];
    for(long id : Tools.getCSVUserIDs()) {
      classifications[indexLookup.get(id)] = new FullAlchemyClassification(id);
    }
   
    //cosine similarities!
    for(int m=0; m<d; m++) {
      System.out.println("On row "+m);
View Full Code Here

  public void fillAlchemyJS() {
    //get clasifications
    System.out.println("Filling from Alchemy classifications");
    FullAlchemyClassification[] classifications = new FullAlchemyClassification[d];
    for(long id : Tools.getCSVUserIDs()) {
      classifications[indexLookup.get(id)] = new FullAlchemyClassification(id);
    }
   
    //cosine similarities!
    for(int m=0; m<d; m++) {
      System.out.println("On row "+m);
View Full Code Here

  public void fillRestricted(boolean baseline, String topicType, int topTopics, double alpha) {
    List<Map<String,Double>> classifications = new ArrayList<Map<String,Double>>();
    if(baseline) {
      if(topicType.equals("alchemy")) {
        for(long id : Tools.getCSVUserIDs()) {
          FullAlchemyClassification c = new FullAlchemyClassification(id);
          Map<String,Double> classification = new HashMap<String,Double>();
          int topicCount = 0;
          for(String topic : c.getCategorySet()) {
            if(topicCount == topTopics) break;
            classification.put(topic, c.getScore(topic));
            topicCount++;
          }
          classifications.add(classification);
        }
      } else if(topicType.equals("calais")) {
        for(long id : Tools.getCSVUserIDs()) {
          FullCalaisClassification c = new FullCalaisClassification(id);
          Map<String,Double> classification = new HashMap<String,Double>();
          int topicCount = 0;
          for(String topic : c.getCategorySet()) {
            if(topicCount == topTopics) break;
            if(topic.equals("Other")) continue;
            classification.put(topic, c.getScore(topic));
            topicCount++;
          }
          classifications.add(classification);
        }
      } else if(topicType.equals("textwise")) {
        for(long id : Tools.getCSVUserIDs()) {
          FullTextwiseClassification c = new FullTextwiseClassification(id,true);
          Map<String,Double> classification = new HashMap<String,Double>();
          int topicCount = 0;
          for(String topic : c.getCategorySet()) {
            if(topicCount == topTopics) break;
            classification.put(topic, c.getScore(topic));
            topicCount++;
          }
          classifications.add(classification);
        }
      }
    } else {
      for(long id : Tools.getCSVUserIDs()) {
        FullLLDAClassification c = new FullLLDAClassification(topicType,alpha,id);
        Map<String,Double> classification = new HashMap<String,Double>();
        int topicCount = 0;
        for(String topic : c.getCategorySet()) {
          if(topicCount == topTopics) break;
          if(topic.equals("Other")) continue;
          classification.put(topic, c.getScore(topic));
          topicCount++;
        }
        classifications.add(classification);
      }
    }
View Full Code Here

        //if(fac.getScore(topic) < scoreThreshold) break; //stop getting low-prob topics
        topics.add(topic);
        count++;
      }
    } else if(topicType.equals("calais")) {
      FullCalaisClassification fcc = new FullCalaisClassification(userID);
      int topTopics = 3;
      int count = 0;
      for(String topic : fcc.getCategorySet()) {
        if(topic.equals("Other")) continue; //really prominent...
        if(count == topTopics) break; //stop getting more than 3 topics
        //if(fac.getScore(topic) < scoreThreshold) break; //stop getting low-prob topics
        topics.add(topic);
        count++;
View Full Code Here

          }
          classifications.add(classification);
        }
      } else if(topicType.equals("calais")) {
        for(long id : Tools.getCSVUserIDs()) {
          FullCalaisClassification c = new FullCalaisClassification(id);
          Map<String,Double> classification = new HashMap<String,Double>();
          int topicCount = 0;
          for(String topic : c.getCategorySet()) {
            if(topicCount == topTopics) break;
            if(topic.equals("Other")) continue;
            classification.put(topic, c.getScore(topic));
            topicCount++;
          }
          classifications.add(classification);
        }
      } else if(topicType.equals("textwise")) {
        for(long id : Tools.getCSVUserIDs()) {
          FullTextwiseClassification c = new FullTextwiseClassification(id,true);
          Map<String,Double> classification = new HashMap<String,Double>();
          int topicCount = 0;
          for(String topic : c.getCategorySet()) {
            if(topicCount == topTopics) break;
            classification.put(topic, c.getScore(topic));
            topicCount++;
          }
          classifications.add(classification);
        }
      }
    } else {
      for(long id : Tools.getCSVUserIDs()) {
        FullLLDAClassification c = new FullLLDAClassification(topicType,alpha,id);
        Map<String,Double> classification = new HashMap<String,Double>();
        int topicCount = 0;
        for(String topic : c.getCategorySet()) {
          if(topicCount == topTopics) break;
          if(topic.equals("Other")) continue;
          classification.put(topic, c.getScore(topic));
          topicCount++;
        }
        classifications.add(classification);
      }
    }
View Full Code Here

      FullAlchemyClassification c = new FullAlchemyClassification(uid);
      for(String cat : c.getCategorySet()) {
        valueSet.add(c.getScore(cat));
      }
    } else if(topicType.equals("calais")) {
      FullCalaisClassification c = new FullCalaisClassification(uid);
      for(String cat : c.getCategorySet()) {
        valueSet.add(c.getScore(cat));
      }
    } else if(topicType.equals("textwise")) {
      FullCalaisClassification c = new FullCalaisClassification(uid);
      for(String cat : c.getCategorySet()) {
        valueSet.add(c.getScore(cat));
      }
    }
    return valueSet;
  }
View Full Code Here

              FullLLDAClassification llda = new FullLLDAClassification(topicType,alpha,false,reduction,uid);
              double sim = llda.cosineSimilarity(baseline);
              cosineSum += sim;
              cosineCount++;
            } else if(topicType.equals("calais")) {
              FullCalaisClassification baseline = new FullCalaisClassification(uid);
              FullLLDAClassification llda = new FullLLDAClassification(topicType,alpha,false,reduction,uid);
              double sim = llda.cosineSimilarity(baseline);
              cosineSum += sim;
              cosineCount++;
            } else if(topicType.equals("textwiseproper")) {
View Full Code Here

            if(kCount == k) break;
            kCount++;
            baselineTopicSet.add(topic);
          }
        } else if(topicType.equals("calais")) {
          FullCalaisClassification baseline = new FullCalaisClassification(uid);
          kCount=0;
          for(String topic : baseline.getCategorySet()) {
            if(kCount == k) break;
            if(topic.equals("Other")) continue;
            kCount++;
            baselineTopicSet.add(topic);
          }
        } else if(topicType.equals("textwise")) {
          FullTextwiseClassification baseline = new FullTextwiseClassification(uid,true);
          kCount=0;
          for(String topic : baseline.getCategorySet()) {
            if(kCount == k) break;
            kCount++;
            baselineTopicSet.add(topic);
          }
        }
View Full Code Here

            if(kCount == k) break;
            kCount++;
            baselineTopicSet.add(topic);
          }
        } else if(topicType.equals("calais")) {
          FullCalaisClassification baseline = new FullCalaisClassification(uid);
          kCount=0;
          for(String topic : baseline.getCategorySet()) {
            if(kCount == k) break;
            if(topic.equals("Other")) continue;
            kCount++;
            baselineTopicSet.add(topic);
          }
        } else if(topicType.equals("textwise")) {
          FullTextwiseClassification baseline = new FullTextwiseClassification(uid,true);
          kCount=0;
          for(String topic : baseline.getCategorySet()) {
            if(kCount == k) break;
            kCount++;
            baselineTopicSet.add(topic);
          }
        }
View Full Code Here

TOP

Related Classes of uk.ac.cam.ha293.tweetlabel.classify.FullAlchemyClassification

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.