/// <summary> /// Adds factory with given taskIndex. Task is written by writer. /// </summary> /// <param name="taskId">Task index relative to factory.</param> /// <param name="writer">Writer where task will be written.</param> private void add(int taskId, CrowdFlowerCodeWriter writer) { _validationCodes.Add(new Random(taskId).Next(1000, 9999)); var task = GetTask(taskId); writer.Write(task); }
public QuestionCollectionExperiment(string experimentsRoot, string experimentId, int taskCount, QuestionCollection questions) : base(experimentsRoot, experimentId) { _questions = questions; var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks for (var taskIndex = 0; taskIndex < taskCount; ++taskIndex) { add(taskIndex, writer); } writer.Close(); }
public PhraseRestaurantExperiment(string rootPath, string experimentId, int taskCount, bool exportKnowledge, bool useKnowledge) : base(rootPath, experimentId) { _useKnowledge = useKnowledge; _exportKnowledge = exportKnowledge; var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks for (var taskIndex = 0; taskIndex < taskCount; ++taskIndex) { add(taskIndex, writer); } writer.Close(); }
public LearnRestaurantPropertyExperiment(string rootPath, string experimentId, int taskCount, bool exportKnowledge, bool useKnowledge, bool requestInformation) : base(rootPath, experimentId) { _exportKnowledge = exportKnowledge; _useKnowledge = useKnowledge; _requestInformation = requestInformation; var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks for (var taskIndex = 0; taskIndex < taskCount; ++taskIndex) { add(taskIndex, writer); } writer.Close(); }
/// <summary> /// Adds factory with given taskIndex. Task is written by writer. /// </summary> /// <param name="factory">Factory of tasks.</param> /// <param name="taskIndex">Task index relative to factory.</param> /// <param name="writer">Writer where task will be written.</param> private void add(TaskFactoryBase factory, int taskIndex, CrowdFlowerCodeWriter writer) { if (factory == null) { throw new ArgumentNullException("factory"); } var taskId = _taskIndexes.Count; _factories.Add(factory); _taskIndexes.Add(taskIndex); _validationCodeKeys.Add(new Random(taskId).Next(1000, 9999)); var task = GetTask(taskId); writer.Write(task); }
public AnswerExtractionExperiment(string experimentsRoot, string experimentId, int taskCount, QuestionCollection questions, LinkBasedExtractor extractor) : base(experimentsRoot, experimentId) { _questions = questions; _knowledge = new ExtractionKnowledge(Path.Combine(ExperimentRootPath, "knowledge.knw")); _extractor = extractor; var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks for (var taskIndex = 0; taskIndex < taskCount; ++taskIndex) { add(taskIndex, writer); } writer.Close(); }
public GraphNavigationExperiment(string experimentsRoot, string experimentId, int taskCount, QuestionDialogDatasetReader seedDialogs) : base(experimentsRoot, experimentId) { _db = Configuration.Db; var phrases = LoadPhrases(seedDialogs, _db); _phrases = phrases.ToArray(); var navigationDataPath = Path.Combine(ExperimentRootPath, "navigation_data.nvd"); _data = new NavigationData(navigationDataPath); _linker = createLinker(_phrases); var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks for (var taskIndex = 0; taskIndex < taskCount; ++taskIndex) { add(taskIndex, writer); } writer.Close(); }
protected void ExportExperiment(string experimentId, int taskCount, TaskFactoryBase[] factories) { var writer = new CrowdFlowerCodeWriter(ExperimentRootPath, experimentId); //generate all tasks while (_taskIndexes.Count < taskCount) { foreach (var factory in factories) { for (var taskIndex = 0; taskIndex < factory.GetTaskCount(); ++taskIndex) { if (_taskIndexes.Count >= taskCount) { break; } add(factory, taskIndex, writer); } } } writer.Close(); }