Beispiel #1
0
def train_context_extractor(records, stable=True):
    print('%s: train context topics model' % time.strftime("%Y/%m/%d-%H:%M:%S"))
    if Constants.TOPIC_MODEL_TYPE == 'lda':
        context_extractor = LdaBasedContext(records)
        context_extractor.generate_review_corpus()
        context_extractor.build_topic_model()
        context_extractor.update_reviews_with_topics()
        context_extractor.get_context_rich_topics()
        context_extractor.clear_reviews()
    elif Constants.TOPIC_MODEL_TYPE == 'nmf':
        context_extractor = NmfContextExtractor(records)
        context_extractor.generate_review_bows()
        context_extractor.build_document_term_matrix()
        if stable:
            context_extractor.build_stable_topic_model()
        else:
            context_extractor.build_topic_model()
        context_extractor.update_reviews_with_topics()
        context_extractor.get_context_rich_topics()
        context_extractor.clear_reviews()
    else:
        raise ValueError('Unrecognized topic model type: \'%s\'' %
                         Constants.TOPIC_MODEL_TYPE)

    print('%s: Trained Topic Model' % time.strftime("%Y/%m/%d-%H:%M:%S"))

    return context_extractor
def train_context_topics_model(records):
    print('%s: train context topics model' % time.strftime("%Y/%m/%d-%H:%M:%S"))
    lda_based_context = LdaBasedContext(records)
    lda_based_context.generate_review_corpus()
    lda_based_context.build_topic_model()
    lda_based_context.update_reviews_with_topics()

    print('%s: Trained LDA Model' % time.strftime("%Y/%m/%d-%H:%M:%S"))

    return lda_based_context
Beispiel #3
0
def train_context_topics_model(records):
    print('%s: train context topics model' %
          time.strftime("%Y/%m/%d-%H:%M:%S"))
    lda_based_context = LdaBasedContext(records)
    lda_based_context.generate_review_corpus()
    lda_based_context.build_topic_model()
    lda_based_context.update_reviews_with_topics()

    print('%s: Trained LDA Model' % time.strftime("%Y/%m/%d-%H:%M:%S"))

    return lda_based_context
Beispiel #4
0
    def train_topic_model(self, cycle_index, fold_index):

        if Constants.CACHE_TOPIC_MODEL:
            print('loading topic model')
            lda_based_context = topic_model_creator.load_topic_model(
                cycle_index, fold_index)
        else:
            print('train topic model: %s' % time.strftime("%Y/%m/%d-%H:%M:%S"))

            lda_based_context = LdaBasedContext(self.train_records)
            lda_based_context.generate_review_corpus()
            lda_based_context.build_topic_model()
            lda_based_context.update_reviews_with_topics()

        lda_based_context.get_context_rich_topics()
        self.context_rich_topics = lda_based_context.context_rich_topics
        print('Trained LDA Model: %s' % time.strftime("%Y/%m/%d-%H:%M:%S"))

        return lda_based_context
    def train_topic_model(self, cycle_index, fold_index):

        if Constants.CACHE_TOPIC_MODEL:
            print('loading topic model')
            lda_based_context = topic_model_creator.load_topic_model(
                cycle_index, fold_index)
        else:
            print('train topic model: %s' % time.strftime("%Y/%m/%d-%H:%M:%S"))

            lda_based_context = LdaBasedContext(self.train_records)
            lda_based_context.generate_review_corpus()
            lda_based_context.build_topic_model()
            lda_based_context.update_reviews_with_topics()

        lda_based_context.get_context_rich_topics()
        self.context_rich_topics = lda_based_context.context_rich_topics
        print('Trained LDA Model: %s' % time.strftime("%Y/%m/%d-%H:%M:%S"))

        return lda_based_context