learners = [("SoftImpute", softImpute), ("WRMF", wrmf), ("KNN", knn), ("MLAUC", maxLocalAuc), ("SLIM", slim)] #Figure out the correct learner for tempLearnerName, tempLearner in learners: if args.alg == tempLearnerName: learnerName = tempLearnerName learner = tempLearner if "learner" not in globals(): raise ValueError("Learner not found: " + learnerName) os.system('taskset -p 0xffffffff %d' % os.getpid()) for dataset in datasets: X = DatasetUtils.mendeley2(minNnzRows=0, dataset=dataset) outputFilename = resultsDir + "Results_" + learnerName + "_" + dataset + ".npz" similaritiesFileName = resultsDir + "Recommendations_" + learnerName + "_" + dataset + ".csv" fileLock = FileLock(outputFilename) if not (fileLock.isLocked() or fileLock.fileExists()) or overwrite: fileLock.lock() logging.debug(learner) try: #Do some recommendation if type(learner) == IterativeSoftImpute: trainX = X.toScipyCsc() trainIterator = iter([trainX])