Example #1
0
printPrecisions = False 
printDocuments = True
numpy.set_printoptions(suppress=True, precision=3, linewidth=100)
dataset = ArnetMinerDataset(runLSI=ranLSI)
#dataset.fields = ["Intelligent Agents"]

if printDocuments: 
    print("Reading article data")
    authorList, documentList, citationList = dataset.readAuthorsAndDocuments(useAbstract=False)
    print("Done")

ns = numpy.arange(5, 55, 5)
bestaverageTestPrecisions = numpy.zeros(len(dataset.fields))

computeInfluence = True
graphRanker = GraphRanker(k=100, numRuns=100, computeInfluence=computeInfluence, p=0.05, inputRanking=[1, 2])
methodNames = graphRanker.getNames()
methodNames.append("MC2")

numMethods = len(methodNames) 
averageTrainPrecisions = numpy.zeros((len(dataset.fields), len(ns), numMethods))
averageTestPrecisions = numpy.zeros((len(dataset.fields), len(ns), numMethods))

coverages = numpy.load(dataset.coverageFilename)
print("==== Coverages ====")
print(coverages)

for s, field in enumerate(dataset.fields): 
    if ranLSI: 
        outputFilename = dataset.getOutputFieldDir(field) + "outputListsLSI.npz"
        documentFilename = dataset.getOutputFieldDir(field) + "relevantDocsLSI.npy"
Example #2
0
 testExpertMatchesInds = authorIndexer.translate(testExpertMatches) 
 relevantAuthorInds1 = authorIndexer.translate(relAuthorsDocSimilarity) 
 relevantAuthorInds2 = authorIndexer.translate(relAuthorsDocCitations) 
 relevantAuthorsInds = authorIndexer.translate(relevantAuthors)  
 expertAuthorsInds = authorIndexer1.translate(expertAuthors)#Get Ids our BM25 List
 
 assert (numpy.array(relevantAuthorInds1) < len(relevantAuthorsInds)).all()
 assert (numpy.array(relevantAuthorInds2) < len(relevantAuthorsInds)).all()
 
 if len(testExpertMatches) != 0:
     fich.write(field)
     fich.write("\n") 
     #First compute graph properties 
     computeInfluence = False
     #graphRanker = GraphRanker(k=100, numRuns=100, computeInfluence=computeInfluence, p=0.05, inputRanking=[relevantAuthorInds1, relevantAuthorInds2])
     graphRanker = GraphRanker(k=100, numRuns=100, computeInfluence=computeInfluence, p=0.05, inputRanking=None)
     outputLists = graphRanker.vertexRankings(graph, relevantAuthorsInds)
     for line in outputLists:
      ListeAuthorsFinale = authorIndexer.reverseTranslate(line)
      #fich.write(' '.join(map(str, ListeAuthorsFinale)))
      fich.write(str(ListeAuthorsFinale)+"\n")
     outputListsE = []
     #outputListsE.append(expertAuthorsInds)#Add BM25 Listto the outputList in order to aggregate scores later
     for line in outputListsE:
      ListeAuthorsFinale = authorIndexer1.reverseTranslate(line)
      #fich.write(' '.join(map(str, ListeAuthorsFinale)))
      fich.write(str(ListeAuthorsFinale)+"\n")
     #Save relevant authors 
     #numpy.save(dataset.dataDir  + "relevantAuthorsReputation" + field +  ".txt", outputLists)
     fich.write("-----------------------------------------------")