博客

  • XGBoost 与 GPU 强强联手,打造高效排序模型

    在信息爆炸的时代,如何从海量数据中快速准确地找到所需信息成为了一个亟待解决的问题。无论是搜索引擎、电商平台还是社交媒体,排序算法都扮演着至关重要的角色。本文将介绍一种基于 XGBoost 和 GPU 加速的学习排序(Learning to Rank,LETOR)方法,该方法能够高效地训练排序模型,提升信息检索的效率和准确性。

    XGBoost 与 学习排序

    XGBoost 是一种广泛应用的机器学习库,它采用梯度提升技术,通过组合多个弱模型来逐步构建更强大的模型。弱模型的生成是通过使用目标函数计算梯度下降来实现的。学习排序(LETOR)就是其中一种目标函数,它主要应用于信息检索领域,其目标是对相关文档进行排序,以返回最佳结果。

    以典型的搜索引擎为例,它通常索引了数十亿个文档。如何根据用户查询从索引文档集中筛选出相关文档并进行排序是搜索引擎的核心任务之一。为了实现这一目标,搜索引擎通常会根据用户查询的相关性、领域、子领域等对文档进行分组,并在每个组内进行排序。

    排序方法

    目前,常用的排序方法主要有以下三种:

    • Pointwise(单点排序): 在学习过程中,只使用单个实例进行训练,并仅使用该实例计算梯度。这种方法没有考虑训练实例在文档列表中的位置,因此可能会导致不相关的实例被赋予过高的重要性。
    • Pairwise(两两排序): 在学习过程中,为每个训练实例选择一个实例对,并根据它们之间的相对顺序计算梯度。
    • Listwise(列表排序): 选择多个实例,并根据这些实例集计算梯度。

    XGBoost 使用 LambdaMART 排序算法(用于提升树),该算法采用两两排序方法,通过对多个实例对进行采样来最小化两两损失。

    XGBoost 中的 LETOR

    在 XGBoost 中进行训练通常包括以下几个高级步骤,而与排序相关的更改发生在图1所示训练过程中的“获取梯度”步骤。

    图1:LETOR 训练流程图

    ![LETOR 训练流程图][]

    XGBoost 支持三种用于梯度提升的 LETOR 排序目标函数:pairwise、ndcg 和 map。其中,ndcg 和 map 目标函数通过调整所选实例对的权重来进一步优化两两损失,从而提高排序质量。它们通过交换所选实例对的位置并计算 NDCG 或 MAP 排序指标,然后根据计算出的指标调整实例的权重来实现这一点。

    GPU 加速 LETOR

    为了充分利用 GPU 的强大计算能力,我们需要尽可能并行地处理训练实例。与典型的训练数据集不同,LETOR 数据集是根据查询、域等进行分组的,因此排序必须在每个组内进行。为了获得更好的性能,需要尽可能并行化组内实例之间的排序。

    然而,在 GPU 上进行排序也面临着一些挑战:

    • 分组排序: 由于 LETOR 数据集是分组的,因此需要在每个组内进行排序,这与传统的排序算法有所不同。
    • 内存限制: GPU 的内存有限,无法一次性加载所有数据,因此需要对数据进行分块处理。

    为了解决这些挑战,NVIDIA 的工程师提出了一种基于排序算法的解决方案。该方案的核心思想是:

    1. 创建位置索引和分段索引: 为所有训练实例创建位置索引,并创建分段索引以区分不同的组。
    2. 排序标签和预测值: 使用 GPU 的并行计算能力对标签和预测值进行排序,并同时移动位置索引。
    3. 收集分段索引并排序: 根据排序后的位置索引收集分段索引,并对分段索引进行排序,以便将同一组的标签放在一起。
    4. 组内排序: 根据排序后的位置索引,将同一组的标签放在一起进行排序。

    通过这种方式,可以高效地在 GPU 上对 LETOR 数据集进行排序,并利用 GPU 的并行计算能力加速梯度计算,从而提高训练速度。

    性能测试

    为了评估 GPU 加速 LETOR 的性能,NVIDIA 的工程师使用微软的 LETOR 基准数据集进行了测试。测试结果表明,GPU 加速 LETOR 可以显著提高训练速度,尤其是在处理大型数据集时,其优势更加明显。

    图2:不同排序算法的排名时间

    算法CPU 时间 (秒)GPU 时间 (秒)加速比
    pairwise177.318.49.6倍
    ndcg432.644.19.8倍
    map433.744.29.8倍

    图3:不同排序算法的排名和训练时间

    算法CPU 训练时间 (秒)GPU 训练时间 (秒)加速比
    pairwise212.8543.9倍
    ndcg468.179.55.9倍
    map469.279.65.9倍

    总结

    XGBoost 与 GPU 加速的 LETOR 方法为信息检索领域提供了一种高效的排序模型训练方案。通过利用 GPU 的强大计算能力,可以显著提高训练速度,缩短模型训练时间,从而更快地将模型部署到实际应用中。

    参考文献

  • 基于协同过滤和XGBoost的推荐系统详解

    推荐系统在现代互联网应用中扮演着至关重要的角色。无论是在电商平台、流媒体服务还是社交网络中,推荐系统都通过分析用户行为数据,帮助用户发现他们可能感兴趣的内容。本文将详细介绍一个结合了协同过滤和XGBoost算法的推荐系统的实现,并探讨其工作原理及应用。

    本文参考的项目代码可以在GitHub仓库中找到。

    推荐系统概述

    推荐系统的主要目标是根据用户的历史行为和偏好,向用户推荐可能感兴趣的项目。推荐系统主要有三种类型:

    1. 基于内容的推荐系统:根据用户过去喜欢的内容推荐相似的内容。
    2. 协同过滤推荐系统:基于其他用户的行为和偏好进行推荐。
    3. 混合推荐系统:结合多种推荐算法,以提高推荐效果。

    协同过滤算法

    协同过滤(Collaborative Filtering)是一种基于用户行为数据进行推荐的方法,其核心思想是“物以类聚,人以群分”。协同过滤的实现方式主要有两种:

    1. 基于用户的协同过滤(User-Based Collaborative Filtering):通过找到与目标用户行为相似的其他用户,推荐这些用户喜欢的项目。
    2. 基于项目的协同过滤(Item-Based Collaborative Filtering):通过找到与目标项目相似的其他项目,推荐这些相似项目。

    用户-项目评分矩阵

    协同过滤算法通常基于用户-项目评分矩阵(User-Item Rating Matrix),矩阵的行代表用户,列代表项目,矩阵中的值表示用户对项目的评分。通过矩阵分解技术(如SVD、ALS等),可以提取用户和项目的隐含特征,从而实现推荐。

    相似度计算

    在协同过滤中,相似度计算是关键步骤之一。常用的相似度计算方法包括:

    • 余弦相似度(Cosine Similarity):通过计算两个向量的余弦值衡量相似度。
    • 皮尔逊相关系数(Pearson Correlation):衡量两个变量线性相关程度。

    XGBoost算法

    XGBoost(Extreme Gradient Boosting)是一种基于梯度提升决策树(GBDT)的机器学习算法。它通过迭代训练一系列弱学习器(通常是决策树),并将它们的结果加权组合,以提高预测的准确性。XGBoost以其高效性和较强的泛化能力在许多机器学习竞赛中表现出色。

    XGBoost的优点

    • 高效性:XGBoost采用了高效的增量训练方式,能够处理大规模数据。
    • 准确性:通过结合多个弱学习器,XGBoost能够提高预测的准确性。
    • 灵活性:XGBoost支持多种损失函数,并且能够处理缺失值。

    实现结合协同过滤和XGBoost的推荐系统

    数据准备

    首先,需要准备用户行为数据和项目数据。这些数据通常包括用户对项目的评分、购买记录或浏览记录。数据可以存储在CSV文件或数据库中,并通过pandas等库进行加载和预处理。以下是一个数据加载示例:

    import pandas as pd
    
    # 加载用户-项目评分数据
    ratings = pd.read_csv('ratings.csv')
    # 加载项目数据
    items = pd.read_csv('items.csv')

    协同过滤实现

    使用协同过滤算法计算用户-项目评分矩阵,并找到相似用户或相似项目。以下是一个基于用户的协同过滤示例:

    from sklearn.metrics.pairwise import cosine_similarity
    
    # 创建用户-项目评分矩阵
    user_item_matrix = ratings.pivot(index='user_id', columns='item_id', values='rating')
    
    # 计算用户之间的相似度
    user_similarity = cosine_similarity(user_item_matrix.fillna(0))
    
    # 将相似度矩阵转换为DataFrame
    user_similarity_df = pd.DataFrame(user_similarity, index=user_item_matrix.index, columns=user_item_matrix.index)

    XGBoost模型训练

    将协同过滤得到的推荐结果作为特征,与其他用户行为特征一起输入到XGBoost模型中进行训练。以下是XGBoost模型训练的示例:

    import xgboost as xgb
    from sklearn.model_selection import train_test_split
    from sklearn.metrics import mean_squared_error
    
    # 准备特征和标签
    # 假设我们已经提取了协同过滤的推荐结果和其他特征,特征存储在features DataFrame中,标签存储在labels Series中
    features = pd.DataFrame({
        'user_id': ratings['user_id'],
        'item_id': ratings['item_id'],
        'collaborative_filtering_score': collaborative_filtering_scores,  # 协同过滤得分
        'other_feature_1': other_feature_1,  # 其他特征
        'other_feature_2': other_feature_2,
        # 可以添加更多特征
    })
    labels = ratings['rating']
    
    # 将数据集拆分为训练集和测试集
    X_train, X_test, y_train, y_test = train_test_split(features, labels, test_size=0.2, random_state=42)
    
    # 创建DMatrix对象,这是XGBoost的内部数据结构
    dtrain = xgb.DMatrix(X_train, label=y_train)
    dtest = xgb.DMatrix(X_test, label=y_test)
    
    # 设置XGBoost参数
    params = {
        'objective': 'reg:squarederror', # 目标函数
        'max_depth': 6,                  # 树的最大深度
        'eta': 0.1,                      # 学习率
        'subsample': 0.8,                # 子样本比例
        'colsample_bytree': 0.8,         # 每棵树的特征子样本比例
        'eval_metric': 'rmse'            # 评价指标
    }
    
    # 训练XGBoost模型
    bst = xgb.train(params, dtrain, num_boost_round=100)
    
    # 进行预测
    preds = bst.predict(dtest)
    
    # 评估模型表现
    rmse = mean_squared_error(y_test, preds, squared=False)
    print(f'RMSE: {rmse}')

    模型评估与优化

    在训练完模型后,需要对模型进行评估和优化。常用的评估指标包括均方根误差(RMSE)和平均绝对误差(MAE)。通过交叉验证可以更好地评估模型的泛化能力。

    以下是使用交叉验证进行模型评估的示例:

    from sklearn.model_selection import cross_val_score
    
    # 使用交叉验证评估模型性能
    cv_results = xgb.cv(
        params,
        dtrain,
        num_boost_round=100,
        nfold=5,  # 5折交叉验证
        metrics='rmse',
        as_pandas=True,
        seed=42
    )
    
    print(cv_results)
    print(f'Cross-Validation RMSE: {cv_results["test-rmse-mean"].min()}')

    模型优化

    根据评估结果,可以调整模型的参数和特征以进一步优化推荐效果。常见的优化方法包括:

    • 调整树的深度(max_depth)
    • 调整学习率(eta)
    • 调整子样本比例(subsample)
    • 增加或减少特征

    实际应用

    这种结合了协同过滤和XGBoost的推荐系统在实际应用中具有广泛的应用价值。以下是几个实际应用场景:

    1. 电商平台:通过分析用户的购买历史和浏览记录,推荐用户可能感兴趣的商品,从而提高用户的购买转化率。
    2. 流媒体服务:根据用户的观看历史和评分,推荐用户可能喜欢的电影、电视剧或音乐,提高用户的留存率。
    3. 社交媒体:通过分析用户的互动行为,推荐用户可能感兴趣的朋友或内容,提高用户的活跃度。

    结论

    基于协同过滤和XGBoost的推荐系统通过结合用户行为数据和先进的机器学习算法,提供了强大的个性化推荐能力。通过合理的数据准备、模型训练和优化,可以构建出高效、准确的推荐系统,为用户提供更好的服务体验。

    对于感兴趣的读者,可以访问GitHub项目获取更多实现细节和代码示例。通过学习和实践,您可以进一步掌握推荐系统的构建方法,并将其应用到实际项目中。

  • 深入推荐系统:协同过滤与 XGBoost 联袂打造个性化推荐

    在信息爆炸的时代,人们面对海量选择常常感到无所适从。如何从琳琅满目的商品、信息中找到真正符合用户需求的内容,成为了互联网时代亟待解决的问题。推荐系统应运而生,它就像是一位贴心的智能管家,能够根据用户的喜好和行为,精准推荐用户可能感兴趣的内容,极大地提升了用户体验。

    本文将以 GitHub 上一个名为 “Recommender-System-with-Collaborative-Filtering-and-XGBoost” 的项目为例,深入探讨如何利用协同过滤和 XGBoost 算法构建强大的推荐系统。

    一、协同过滤:知己知彼,百战不殆

    协同过滤(Collaborative Filtering)是推荐系统中应用最广泛的算法之一,其核心思想是“物以类聚,人以群分”。简单来说,就是根据用户过去的喜好和行为,找到那些“志趣相投”的用户群体,并根据他们的喜好来预测你的偏好。

    举个例子:

    假设用户 A 和用户 B 都购买了书籍 X 和 Y,而用户 C 只购买了书籍 X。根据协同过滤算法,系统会认为用户 A 和用户 B 的兴趣较为相似,进而将用户 B 购买过的其他书籍推荐给用户 A,例如书籍 Z。

    协同过滤主要分为两种类型:

    1. 基于用户的协同过滤 (User-Based CF): 这种方法侧重于找到与目标用户兴趣相似的其他用户,并将这些用户喜欢的物品推荐给目标用户。
    2. 基于物品的协同过滤 (Item-Based CF): 这种方法侧重于计算物品之间的相似度,并将与用户已经喜欢的物品相似的物品推荐给用户。

    二、XGBoost:为预测模型注入强劲动力

    XGBoost (Extreme Gradient Boosting) 是一种强大的机器学习算法,以其高效性和预测精度著称。它属于梯度提升树 (GBDT) 算法的一种,通过不断迭代训练弱学习器(决策树),并将它们组合成一个强学习器,从而实现对目标变量的精准预测。

    在推荐系统中,XGBoost 可以利用用户的历史数据,例如:

    • 用户的浏览历史记录
    • 用户的购买记录
    • 用户对商品的评分
    • 用户的个人信息(年龄、性别、地域等)

    通过学习这些数据,XGBoost 可以预测用户对特定商品或服务的评分、点击概率、购买意愿等,从而为推荐系统提供更精准的决策依据。

    三、强强联手:协同过滤与 XGBoost 的完美结合

    在 “Recommender-System-with-Collaborative-Filtering-and-XGBoost” 项目中,开发者巧妙地将协同过滤和 XGBoost 结合起来,构建了一个更加精准的推荐系统。

    1. 首先,利用协同过滤技术,系统可以找到与目标用户兴趣相似的用户群体。 例如,使用基于用户的协同过滤,可以找到与目标用户观看过相同电影、购买过相同商品的用户群体。
    2. 然后,利用 XGBoost 算法,系统可以根据这些相似用户的历史数据,预测目标用户对特定商品或服务的评分。 例如,将这些相似用户对某部电影的评分、评价作为 XGBoost 模型的输入特征,预测目标用户对该电影的评分。
    3. 最后,根据预测的评分,系统将评分较高的商品或服务推荐给目标用户。

    这种结合了协同过滤和 XGBoost 的推荐系统,既可以充分利用用户之间的相似性,又可以利用 XGBoost 强大的预测能力,从而实现更加精准的个性化推荐。

    四、结语

    推荐系统已经成为互联网时代不可或缺的一部分,它不仅可以提升用户体验,还可以帮助企业更好地了解用户需求,制定更精准的营销策略。协同过滤和 XGBoost 作为推荐系统中常用的算法,它们的结合为构建更加精准、高效的推荐系统提供了新的思路。

    当然,推荐系统的设计和实现并非易事,需要根据具体的应用场景和数据特点选择合适的算法和策略。希望本文能够帮助读者更好地理解推荐系统的基本原理,并激发对这一领域的探索兴趣。

  • 突破次元壁的推荐系统:解密“套娃表征学习”

    在信息爆炸的时代,个性化推荐系统已经成为我们生活中不可或缺的一部分,从电商平台的商品推荐到社交媒体的内容推送,都离不开推荐系统的默默支持。而推荐系统成功的关键,在于如何精准地捕捉用户的喜好和物品的特征。近年来,深度学习技术的兴起为推荐系统带来了革命性的突破,其中,表征学习方法更是成为了研究的热点。

    传统的表征学习方法,要么平等地对待用户的每个偏好和物品的每个特征,要么将它们简单地划分到不同的类别中。然而,现实世界中,用户的偏好和物品的特征往往是以一种更为复杂和微妙的层次结构呈现的。例如,喜欢科幻小说的用户,可能对太空歌剧、赛博朋克等子类型有不同的偏好;而一部电影,也可能同时具备动作、爱情、悬疑等多种元素。

    为了更好地模拟这种层次化的结构,本文提出了一种全新的表征学习方法——套娃表征学习 (Matryoshka Representation Learning for Recommendation, MRL4Rec)。

    什么是套娃表征学习?

    顾名思义,套娃表征学习的灵感来源于俄罗斯套娃,它将用户和物品的向量表示重构为套娃表征。想象一下,每一个套娃都代表着用户偏好或物品特征的一个层次,从最外层的广泛兴趣到最内层的细粒度偏好,层层递进,形成一个多层次的结构。

    更具体地说,套娃表征是由维度递增且相互重叠的向量空间构成的。每个向量空间对应着用户偏好或物品特征的一个特定层次,而空间之间的重叠则反映了不同层次之间的关联性。这种巧妙的设计,使得套娃表征能够更全面、更精细地刻画用户和物品的信息。

    如何构建有效的套娃表征?

    构建有效的套娃表征,关键在于如何针对每个层次的特征学习到准确的向量表示。研究表明,针对每个层次构建特定的训练三元组至关重要。

    为此,本文提出了一种名为套娃负采样 (Matryoshka Negative Sampling) 的机制。简单来说,就是在每个层次上,根据用户的历史行为和当前层次的特征,选择合适的负样本,从而构建出更有效的训练数据。

    套娃表征学习的优势在哪里?

    相比于传统的表征学习方法,套娃表征学习具有以下优势:

    • 更精细的刻画能力: 能够更准确地捕捉用户和物品在不同层次上的特征,从而提高推荐的精准度。
    • 更强的可解释性: 每个层次的向量表示都对应着用户或物品的特定特征,便于理解推荐结果背后的原因。
    • 更广泛的适用性: 可以应用于各种类型的推荐系统,例如基于内容的推荐、协同过滤推荐等。

    实验结果表明,在多个真实数据集上,MRL4Rec 的表现都优于现有的多种先进方法,展现出了巨大的应用潜力。

    参考文献

    [1] Riwei Lai, Li Chen, Weixin Chen, Rui Chen. Matryoshka Representation Learning for Recommendation. arXiv preprint arXiv:2406.07432, 2024.


    Matryoshka 表征学习:下一代推荐系统的革新

    在现代信息社会中,推荐系统已经成为人们生活中不可或缺的一部分。从电商平台到流媒体服务,推荐系统帮助用户找到他们可能感兴趣的商品或内容。然而,如何更准确地捕捉用户的偏好和物品的特征,始终是推荐系统研究中的一个重要课题。今天,我们将探讨一项名为“Matryoshka 表征学习”的新方法,看看它如何在这个领域中实现突破。

    推荐系统的核心:表征学习

    推荐系统的核心在于表征学习,即如何在固定维度的用户和物品向量中捕捉用户偏好和物品特征。传统方法通常将每个用户偏好和物品特征视为均等,或者将它们分类到离散的集群中。然而,现实世界中的用户偏好和物品特征往往是层次化的。因此,我们需要一种新的表征学习方法来更好地捕捉这些层次关系。

    Matryoshka 表征学习方法

    正如俄罗斯套娃(Matryoshka)一样,用户偏好和物品特征可以在不同的层次上被表达和组织。基于这一理念,Riwei Lai 等人提出了一种名为“Matryoshka 表征学习”的新方法(MRL4Rec)。这种方法通过在逐渐增加维度和重叠的向量空间中重构用户和物品的向量,从而显式地表示不同层次的用户偏好和物品特征。

    理论基础

    MRL4Rec 的一个关键点在于,为每一层构建特定的训练三元组,这对于保证准确的 Matryoshka 表征学习至关重要。具体来说,构建这些训练三元组的方法被称为 Matryoshka 负采样机制。这一机制不仅确保了 Matryoshka 表征学习的有效性,还能够更好地捕捉层次化的用户偏好和物品特征。

    实验结果

    通过在多个真实数据集上的实验,研究人员发现 MRL4Rec 能够持续并显著地超越多种当前最先进的方法。这表明 Matryoshka 表征学习在捕捉用户偏好和物品特征的层次关系方面具有巨大潜力,为推荐系统的开发提供了一个新的方向。

    结语

    Matryoshka 表征学习为推荐系统带来了新的思路,通过层次化的表征方法,更加准确地捕捉用户偏好和物品特征。随着这一方法的不断发展和完善,我们有理由相信,未来的推荐系统将变得更加智能和高效。

    参考文献

    • Riwei Lai, Li Chen, Weixin Chen, Rui Chen. Matryoshka Representation Learning for Recommendation. arXiv:2406.07432. 2024. 链接

    Matryoshka Representation Learning for Recommendation: Summary and Answers

    This paper introduces Matryoshka Representation Learning for Recommendation (MRL4Rec), a novel approach to representation learning for recommendation systems. Here’s a breakdown of the key points:

    Problem: Existing representation learning methods struggle to capture the inherent hierarchical structure of user preferences and item features. They either treat all features uniformly or rely on discrete clustering, which can be limiting.

    Solution: MRL4Rec proposes a new representation structure called matryoshka representations. These representations organize user and item vectors into nested, incrementally dimensional vector spaces, resembling Russian nesting dolls (Matryoshka dolls). This structure allows for the explicit representation of user preferences and item features at different levels of granularity.

    Key Innovations:

    1. Matryoshka Representations: The hierarchical structure allows capturing broad preferences at higher levels and more specific interests at lower levels.
    2. Level-Specific Training Triplets: The paper argues that constructing training triplets specific to each level of the hierarchy is crucial for accurate representation learning.
    3. Matryoshka Negative Sampling: A novel negative sampling mechanism is proposed to generate effective training triplets, ensuring the model learns meaningful hierarchical relationships.

    Results: Experiments on real-life datasets demonstrate that MRL4Rec consistently outperforms state-of-the-art recommendation models.

    Code Availability: The authors have made their code publicly available (link provided in the paper).

    Answering your potential questions based on this paper:

    • What is the main contribution of this paper?
      • Introducing MRL4Rec, a novel representation learning method that uses matryoshka representations to capture the hierarchical nature of user preferences and item features for improved recommendation accuracy.
    • How does MRL4Rec differ from previous approaches?
      • Unlike methods treating features uniformly or using discrete clusters, MRL4Rec employs nested vector spaces to represent hierarchical relationships between preferences and features explicitly.
    • What is the significance of level-specific training triplets?
      • They ensure that the model learns accurate representations at each level of the hierarchy by providing targeted training data.
    • What is the role of matryoshka negative sampling?
      • It generates effective negative samples, crucial for training the model to distinguish between positive and negative relationships within each level of the hierarchy.

    This summary and the answers provide a comprehensive understanding of the key contributions and findings of the paper.


  • GPT4Rec:流式推荐中的图提示调优

    在个性化推荐系统领域,适应不断变化的用户偏好以及新用户和新项目的持续涌入是一个重要的挑战。传统的推荐模型通常依赖于静态的训练-测试方法,难以跟上这些动态需求。流式推荐,尤其是通过连续图学习,已经成为一种新颖的解决方案,吸引了学术界和工业界的广泛关注。然而,现有的方法要么依赖于历史数据重放,这在数据隐私法规日益严格的情况下变得越来越不切实际;要么无法有效解决过度稳定性问题;要么依赖于模型隔离和扩展策略,这需要大量的模型扩展,由于参数集庞大而导致更新耗时。为了解决这些困难,我们提出了GPT4Rec,一种用于流式推荐的图提示调优方法。

    1. 引言

    推荐系统(RS)在塑造个性化体验方面变得不可或缺,广泛应用于电子商务、在线流媒体、网络搜索等多个领域。推荐系统不仅指导用户在海量选项中做出选择,还推动了用户参与和客户满意度,使其成为数字平台成功的关键因素。在解码复杂用户偏好的多种技术中,图神经网络(GNN)因其能够巧妙地揭示用户-项目交互的复杂模式,在提升推荐精度和效果方面表现突出。

    然而,这些方法在现实世界中的应用往往未能兑现其通过基准数据集所做出的承诺。这种差异主要源于其传统的离线训练和测试方法。在这些场景中,模型在大型静态数据集上进行训练,然后在有限的测试集上进行评估,这一过程并未考虑现实世界数据的动态性质。与此形成鲜明对比的是,现实世界的推荐系统处于不断变化的状态,新用户偏好、项目和交互不断涌现,导致数据分布随时间变化。这不仅使得基于历史数据训练的模型难以有效处理新的多样化数据,同时在更新模型以适应新数据时,也面临着“灾难性遗忘”的风险。这一问题在推荐系统中尤为突出,因为保留旧的但相关的信息对于维持对用户偏好和行为的整体理解至关重要。

    2. 相关工作

    2.1 流式推荐

    传统的推荐系统受到静态数据集的限制,难以预测不断变化的用户偏好和趋势。流式推荐是一种动态方法,通过随时间更新数据和模型来解决这些挑战。初期研究主要关注项目的流行度、新颖度和趋势分析,最近的进展则将协同过滤和矩阵分解方法引入流式推荐中。此外,在线聚类的Bandits和协同过滤Bandits方法也逐渐兴起。图神经网络在流式推荐模型中的应用因其复杂关系建模能力而受到关注,这一转变代表了该领域的重大进步。

    2.2 连续学习

    连续学习(CL)旨在通过策略防止灾难性遗忘,并实现知识转移。主要算法分为三类:经验重放、模型正则化和模型隔离。最近,连续图学习在流式推荐系统中的应用引起了广泛关注,其重点是处理按时间顺序连续到达的数据,而不仅仅是按任务分割的数据。

    2.3 图提示调优

    提示调优广泛应用于自然语言处理(NLP)和计算机视觉(CV)领域,旨在弥合预训练任务和微调任务之间的差距。最近,这一技术在图形场景中的应用也逐渐增多,凸显了其多样性和有效性。在图神经网络(GNN)领域,多种创新的提示调优方法相继出现,如GPPT、GraphPrompt和All-in-One等。

    3. 预备知识

    我们首先形式化流式推荐的连续图学习问题,然后简要介绍本文中使用的三种经典图卷积推荐模型。

    3.1 定义与公式

    定义 1. 流式推荐。大规模用户-项目交互数据 ˜𝐷 持续流入工业推荐系统。为了方便,连续的数据流被分割为具有相同时间跨度的连续数据段 𝐷1, …, 𝐷𝑡 , …, 𝐷𝑇。在每个时间段 𝑡,模型需要优化在 𝐷𝑡 上的推荐性能,同时继承 𝐷1, 𝐷2, …, 𝐷𝑡 −1 的知识。推荐性能沿整个时间线进行评估。

    定义 2. 流式图。流式图表示为图的序列 𝐺 = (𝐺1, 𝐺2, …, 𝐺𝑡 , …𝐺𝑇),其中 𝐺𝑡 = 𝐺𝑡 −1 + Δ𝐺𝑡。𝐺𝑡 在时间 𝑡 是一个带属性的图,包含邻接矩阵 𝐴𝑡 和节点特征 𝑋𝑡。Δ𝐺𝑡 = (Δ𝐴𝑡 , Δ𝑋𝑡) 表示图结构和节点属性的变化。

    定义 3. 连续图学习。给定流式图 𝐺 = (𝐺1, 𝐺2, …, 𝐺𝑡 , …𝐺𝑇),连续图学习(CGL)的目标是在序列学习 Δ𝐺𝑡 (𝐷𝑡) 的同时,有效转移历史知识到新图段。

    4. 方法论

    我们提出了GPT4Rec方法,以应对流式推荐中的连续图学习问题。首先,我们分解复杂的用户-项目交互图为多个视图,以捕捉图中的独特交互模式。然后,我们设计了节点级和结构级的提示,分别用于适应节点属性变化和图结构变化。最后,我们创新性地设计了跨视图级提示以聚合多视图信息。

    4.1 复杂图的分解策略

    用户-项目交互图因其动态和互连特性而复杂。GPT4Rec通过一系列线性变换将图分解为多个视图,每个视图捕捉特定的交互方面。这种分解允许模型分别处理不同级别的关系变化,从而提高模型的适应性和精确性。

    4.2 提示设计

    4.2.1 节点级提示

    节点级提示主要针对图中单个节点的属性或特性,通过一组可学习参数引导模型适应节点特征的变化。这些提示通过上下文引导机制,在新数据到来时动态调整模型的关注点,使其能够快速适应新的节点特性。

    4.2.2 结构级提示

    结构级提示侧重于图中更广泛的连接模式和关系,通过消息传递机制适应整体图结构的变化。每个视图设计了一组可学习的结构级提示,以捕捉动态的图关系。

    4.3 分解表示的聚合

    多视图信息的聚合对于提供动态用户-项目交互的全面理解至关重要。我们提出了跨视图级提示来增强模型的动态适应性,通过更新一小组“代码簿”提示来调整注意力机制,从而高效地聚合多视图信息。

    4.4 讨论

    与传统的模型隔离和扩展方法不同,GPT4Rec通过一组上下文自适应提示实现知识的动态存储和适应。这些提示不直接存储知识,而是通过修改模型对新数据的解释和处理方式,以灵活、轻量的方式引导模型学习。

    4.5 理论分析

    我们进行了理论分析,以保证GPT4Rec在动态图上的正确性。理论分析表明,GPT4Rec至少具有与使用全数据进行全局微调相同的表达能力。

    5. 实验

    我们在四个真实世界的时间戳推荐数据集上进行了实验,以验证我们的提案。实验结果表明,GPT4Rec在各个数据集上均表现出色,显著优于现有基线方法。

    6. 结论

    本文提出了GPT4Rec,一种用于流式推荐的图提示调优方法。通过分解复杂的用户-项目交互图并设计多级提示,GPT4Rec能够高效地捕捉和适应动态交互模式,保持历史知识的完整性,并实现对新数据的快速适应。广泛的实验验证了GPT4Rec的有效性和效率。

    参考文献

    1. Kian Ahrabian, et al. “Structure aware experience replay for incremental learning in graph-based recommender systems.” CIKM (2021).
    2. Jie Cai, et al. “Multimodal continual graph learning with neural architecture search.” WWW (2022).
    3. Andreas Lommatzsch, et al. “Real-time recommendations for user-item streams.” SAC (2015).
    4. Mingchen Sun, et al. “GPPT: Graph pre-training and prompt tuning to generalize graph neural networks.” KDD (2022).

    本文展示了GPT4Rec在流式推荐系统中的应用,通过创新性的图提示调优方法,解决了传统方法在动态数据环境中的诸多挑战,为推荐系统的持续学习和适应性提供了新的思路。


    GPT4Rec: A Summary and Analysis

    The provided document introduces GPT4Rec, a novel approach for streaming recommendation using graph prompt tuning. Here’s a breakdown of the paper’s key aspects:

    Problem: Traditional recommender systems struggle to adapt to the dynamic nature of user-item interactions. New users, items, and preferences constantly emerge, leading to a distribution shift between training and real-world data. This often results in catastrophic forgetting, where models lose valuable knowledge from past data while trying to learn from new information.

    Existing Solutions and their limitations:

    • Replay Buffer: These methods store a subset of past data and replay it during training. However, they are limited by buffer size and raise privacy concerns.
    • Model Regularization: These techniques constrain model parameters to prevent drastic changes. However, they struggle when new data significantly deviates from past patterns.
    • Model Isolation and Expansion: These approaches isolate old knowledge and create new learning spaces for new data. However, they lead to increased model complexity and slow updates.

    GPT4Rec’s Approach:

    1. Disentangling Complex Graphs: GPT4Rec divides the user-item interaction graph into multiple views using linear transformations. This allows the model to focus on specific aspects of the graph, such as user-to-item interactions or item-to-item similarities, without losing sight of the overall interconnectedness.
    2. Adaptive Learning with Prompts: GPT4Rec employs three types of prompts to guide the model’s learning process:
      • Node-Level Prompts: These prompts capture changes in individual node attributes or properties. They are weighted based on their relevance to specific nodes, allowing the model to focus on the most pertinent information.
      • Structure-Level Prompts: These prompts capture broader patterns of connectivity and relationships within the graph. They decompose sub-graph structures into smaller, more manageable components, enabling the model to adapt to changes in the overall graph topology.
      • View-Level Prompts: These prompts aggregate information from the different disentangled views, ensuring a comprehensive understanding of the evolving graph.

    Advantages of GPT4Rec:

    • Efficient Adaptation: GPT4Rec’s prompt-based approach allows for rapid adaptation to new data streams without requiring extensive model modifications.
    • Knowledge Preservation: By strategically utilizing prompts, GPT4Rec retains valuable knowledge from past data while effectively incorporating new information.
    • Theoretical Guarantees: The paper provides theoretical analysis demonstrating that GPT4Rec possesses at least the expressive power of global fine-tuning.

    Evaluation:

    The paper claims that GPT4Rec outperforms state-of-the-art baselines on four real-world datasets, demonstrating its effectiveness for streaming recommendation.

    Overall, GPT4Rec presents a promising solution for addressing the challenges of streaming recommendation by leveraging graph prompt tuning. Its ability to disentangle complex graphs, adapt to evolving data patterns, and preserve valuable knowledge makes it a significant contribution to the field.

  • Pyraformer: 低复杂度金字塔注意力在长序列时间序列建模和预测中的应用

    时间序列数据的分析和预测在许多领域中具有重要意义,如决策制定和风险管理。本文将介绍一种名为Pyraformer的新模型,该模型通过探索时间序列的多分辨率表示,提出了一种低复杂度的金字塔注意力机制用于长序列时间序列的建模和预测。

    引言

    时间序列预测是许多下游任务的基础,例如决策制定和风险管理。例如,在线流量的可靠预测可以为云系统中潜在风险提供早期预警,同时也为动态资源分配提供指导,以最小化成本而不降低性能。除了在线流量,时间序列预测在疾病传播、能源管理以及经济和金融等领域也有广泛应用。

    时间序列预测的主要挑战在于构建一个强大但简洁的模型,能够紧凑地捕捉不同范围的时间依赖性。时间序列通常表现出短期和长期重复模式,考虑这些模式是精确预测的关键。特别是处理长范围依赖的任务更加困难,这通常通过信号传递路径的长度来衡量。路径越短,依赖关系捕捉得越好。同时,为了让模型学习这些长期模式,输入的历史数据也应该足够长。因此,低时间和空间复杂度是优先考虑的。

    现有的最先进的方法难以同时实现这两个目标。RNN和CNN在时间复杂度方面表现良好,但它们的信号传递路径长度较长,难以学习远距离的位置依赖。另一方面,Transformer虽然缩短了信号传递路径,但增加了时间复杂度。为了在模型能力和复杂度之间找到平衡,出现了一些Transformer的变种,如Longformer、Reformer和Informer。然而,很少有方法能够在大幅降低时间和空间复杂度的同时实现短的最大路径长度。

    Pyraformer模型概述

    为了解决上述问题,本文提出了一种新型的基于金字塔注意力的Transformer模型(Pyraformer)。具体来说,开发了一种金字塔注意力机制,通过在金字塔图上基于注意力的消息传递来描述时间序列的时间依赖性。该图中的边可分为两组:跨尺度和同尺度连接。跨尺度连接构建了原始序列的多分辨率表示,而同尺度连接捕捉了各分辨率下的时间依赖性。这样,该模型通过在较粗的分辨率下捕捉长范围的行为,提供了对远距离位置之间长期时间依赖性的紧凑表示,从而缩短了信号传递路径的长度。此外,在不同尺度上通过稀疏的邻接同尺度连接建模不同范围的时间依赖性显著降低了计算成本。

    金字塔注意力模块(PAM)

    金字塔注意力模块(PAM)是Pyraformer的核心。通过金字塔图以多分辨率的方式描述观察到的时间序列的时间依赖性。金字塔图可以分解为两部分:跨尺度和同尺度连接。跨尺度连接形成了一棵C叉树,其中每个父节点有C个子节点。例如,如果将金字塔图的最细尺度与原始时间序列的小时观察值相关联,则较粗尺度的节点可以看作是时间序列的每日、每周甚至每月模式。因此,金字塔图提供了原始时间序列的多分辨率表示。此外,通过简单地连接邻近节点来捕捉各分辨率下的时间依赖性,可以在较粗尺度上更容易地捕捉长范围依赖性。

    粗尺度构建模块(CSCM)

    CSCM的目标是初始化金字塔图在较粗尺度上的节点,从而促进后续的PAM在这些节点之间交换信息。具体来说,通过在对应的子节点上执行卷积操作,逐层引入粗尺度节点。卷积层的步长和核大小均为C,经过多层卷积操作后,得到不同尺度上的序列,形成一棵C叉树。为了减少参数和计算量,在输入嵌入序列到卷积层之前,通过全连接层减少每个节点的维度,并在所有卷积操作完成后恢复原始维度。

    预测模块

    对于单步预测,在输入嵌入层之前,向历史序列的末尾添加一个结束标记。在PAM编码序列后,收集金字塔图中所有尺度上的最后一个节点的特征,进行串联后通过全连接层进行预测。

    对于多步预测,提出了两种预测模块。第一种与单步预测模块相同,但将所有尺度上的最后一个节点映射到所有未来时间步。第二种则采用具有两个全注意力层的解码器。具体来说,类似于原始Transformer,将未来时间步的观测值替换为0,嵌入它们并将观测值、协变量和位置嵌入的和称为“预测标记”。第一个注意力层将预测标记作为查询,PAM的输出作为键和值,生成解码器输出。第二层将解码器输出作为查询,解码器输出和PAM的输出作为键和值。历史信息直接输入到两个注意力层中,因为这些信息对精确的长范围预测至关重要。

    实验结果与分析

    在四个真实世界数据集上进行了广泛的实验,包括Wind、App Flow、Electricity和ETT。结果显示,Pyraformer在单步和长范围多步预测任务中表现出色,且时间和内存消耗较低。

    单步预测

    在Electricity、Wind和App Flow数据集上进行了单步预测实验。结果表明,Pyraformer在NRMSE和ND指标上优于其他Transformer变种,且具有最少的查询-键点积数量。

    长范围多步预测

    在Electricity、ETTh1和ETTm1数据集上进行了长范围多步预测实验。结果显示,无论预测长度如何,Pyraformer在所有数据集上的表现均优于其他模型,并且具有最少的查询-键点积数量。

    计算时间和内存消耗

    通过实验验证了基于TVM实现的定制CUDA内核的效率。结果表明,Pyraformer的时间和内存消耗与序列长度近似呈线性关系,且显著低于全注意力和概率稀疏注意力机制,特别是对于较长的时间序列。

    结论与展望

    本文提出了Pyraformer,一种基于金字塔注意力的新型模型,能够在低时间和空间复杂度下有效描述短期和长期时间依赖性。实验结果表明,Pyraformer在单步和长范围多步预测任务中均优于现有最先进模型,且计算时间和内存消耗较低。未来的工作将探索如何从数据中自适应地学习超参数,并将Pyraformer扩展到自然语言处理和计算机视觉等其他领域。

    参考文献

    • Shizhan Liu, Hang Yu, Cong Liao, Jianguo Li, Weiyao Lin, Alex X. Liu, Schahram Dustdar. “Pyraformer: Low-Complexity Pyramidal Attention for Long-Range Time Series Modeling and Forecasting.” ICLR 2022. PDF
    • Vaswani, Ashish, et al. “Attention is all you need.” Advances in neural information processing systems. 2017.
    • Zhou, Haoyi, et al. “Informer: Beyond efficient transformer for long sequence time-series forecasting.” AAAI. 2021.
    • Beltagy, Iz, Matthew E. Peters, and Arman Cohan. “Longformer: The long-document transformer.” arXiv preprint arXiv:2004.05150 (2020).
    • Kitaev, Nikita, Łukasz Kaiser, and Anselm Levskaya. “Reformer: The efficient transformer.” International Conference on Learning Representations. 2019.

    Summary of “Pyraformer: Low-Complexity Pyramidal Attention for Long-Range Time Series Modeling and Forecasting”

    This paper proposes Pyraformer, a novel Transformer-based model designed to address the challenges of long-range time series forecasting. The key innovation lies in its pyramidal attention module (PAM), which efficiently captures both short-term and long-term dependencies in time series data.

    Here’s a breakdown of the paper’s key aspects:

    Problem: Existing time series forecasting methods struggle to balance computational efficiency with the ability to capture long-range dependencies. RNNs and CNNs are efficient but struggle with long sequences, while Transformers, while good at capturing long-range dependencies, suffer from quadratic complexity.

    Proposed Solution: Pyraformer

    • Pyramidal Attention Module (PAM):
      • Employs a multi-resolution pyramidal graph to represent the time series.
      • Inter-scale connections: Form a C-ary tree where each level summarizes information at a different resolution (e.g., hourly, daily, weekly).
      • Intra-scale connections: Capture temporal dependencies within each resolution by connecting neighboring nodes.
      • This structure allows for efficient modeling of long-range dependencies by capturing them at coarser resolutions.
    • Coarser-Scale Construction Module (CSCM): Initializes the nodes at coarser scales using convolutions applied to finer-scale representations.
    • Prediction Module:
      • Single-step forecasting: Gathers features from all scales and uses a fully connected layer for prediction.
      • Multi-step forecasting: Offers two options:
        • Similar to single-step but maps to multiple future time steps.
        • Utilizes a decoder with two full attention layers for incorporating historical information.

    Advantages:

    • Low Complexity: Achieves linear time and space complexity (O(L)) thanks to the sparse connections in the pyramidal graph.
    • Long-Range Dependency Capture: Maintains a constant maximum signal traversing path length (O(1)), enabling efficient modeling of long-range dependencies.
    • Improved Accuracy: Outperforms existing methods in both single-step and long-range multi-step forecasting tasks.

    Key Results:

    • Pyraformer consistently achieves higher prediction accuracy compared to other Transformer variants and traditional methods on various real-world datasets.
    • It achieves this while maintaining significantly lower time and memory consumption, especially for long sequences.

    Overall, Pyraformer presents a promising solution for long-range time series forecasting by effectively balancing model complexity and the ability to capture long-term dependencies.


  • 使用卷积神经网络发现有影响力的文本

    作者:Megan Ayers, Luke Sanford, Margaret E. Roberts, Eddie Yang
    所属机构:1耶鲁大学, 2加州大学圣地亚哥分校

    摘要

    在社会科学中,实验方法常用于估计文本对人类评价的影响。然而,实验环境中的研究人员通常只限于测试少量预先指定的文本处理方法。这些处理方法往往是主观选择的,可能无效或缺乏外部效度。近年来,对未结构化文本进行挖掘以寻找因果影响特征的努力不断增加,但这些模型主要集中于文本的主题或特定词汇,而这些可能并不是效果的机制。我们将这些努力与自然语言处理(NLP)可解释性技术相结合,提出了一种方法,利用卷积神经网络(CNN)灵活地发现预测人类对文本反应的相似文本短语簇。在实验环境中,该方法可以在某些假设下识别文本处理及其效果。我们将该方法应用于两个数据集,第一个数据集验证了模型检测已知导致结果的短语的能力,第二个数据集展示了其灵活发现具有不同文本结构的文本处理的能力。在两种情况下,模型学习到的文本处理比基准方法更多样化,并且这些文本特征在预测结果方面定量上达到或超过了基准方法的能力。

    引言

    文本对许多领域的结果和决策产生影响。例如,研究人员已经调查了竞选信息对投票的影响(Arceneaux 和 Nickerson,2010),帖子内容对审查的影响(King 等人,2014),临床笔记对诊断和治疗的影响(Sheikhalishahi 等人,2019),以及书面简介对公民身份决定的影响(Hainmueller 和 Hangartner,2013)。大多数估计文本对人类评价影响的实验方法是随机分配一些受试者到由研究人员事先选择的少量处理文本。这些处理方法通常是主观选择的,可能无效或缺乏外部效度。最近的计算社会科学文献试图从未结构化文本中发现对感兴趣结果有影响的处理方法(Fong 和 Grimmer,2016;Pryzant 等人,2018)。

    在这项工作中,我们将这些使用文本处理进行因果推断的努力与可解释机器学习领域相结合(Jacovi 等人,2018;Alvarez Melis 和 Jaakkola,2018)。以文本为处理方法的因果推断方法旨在识别对结果产生因果影响的低维文本特征表示。我们引入了一种新的应用,结合了上下文化的词嵌入、卷积神经网络(CNN)和可解释性方法,以检测和解释这些潜在的文本表示。与之前识别文本处理的方法不同,这些学习到的表示可以在长度和结构上变化,不受限于表示文档级别的一组主题或特定词汇。我们将该方法应用于两个数据集:微博上的社交媒体帖子,结果是帖子是否被审查,以及提交给消费者金融保护局的投诉,结果是投诉者是否及时收到回应。在这两种情况下,我们的方法提取了质量上不同的处理,并且在定量性能指标上达到或超过了基准方法。

    相关工作

    计算社会科学与因果推断

    之前的工作生成了方法来同时发现处理并估计其效果(Fong 和 Grimmer,2016;Pryzant 等人,2018;Egami 等人,2018;Fong 和 Grimmer,2021;Feder 等人,2022)。这些模型通常集中于估计主题或单词作为处理。Fong 和 Grimmer(2016)应用监督的印度自助餐过程,既发现特征(主题),又在随机对照试验(RCT)设置中估计其对结果的影响。Pryzant 等人(2018)使用 n-gram 特征代替主题,并使用一种从网络权重中提取特征重要性的方法构建了神经架构。我们的模型扩展了这项工作,允许将一般相似的短语组(而不是主题或唯一单词)识别为处理。我们预计我们的方法在结果可能由灵活表达的概念(例如,可以用可互换同义词传达的情感)而非特定单词或文档的全部主题内容引起的情况下效果特别好。

    可解释的 NLP

    许多方法已经被提出用于解释和解释 NLP 模型,以及这些方法的元评估(Lei 等人,2016;Alvarez Melis 和 Jaakkola,2018;Rajagopal 等人,2021;Alangari 等人,2023;Crothers 等人,2023;Lyu 等人,2023)。这些方法大多集中于解释和解释个体样本级别的预测。相比之下,我们的方法旨在学习和解释在语料库级别发生的更广泛的模式。在这方面,Rajagopal 等人(2021)要求他们的模型使用“全局”概念解释预测,Jacovi 等人(2018)专门解释 CNN 学习到的潜在特征,最接近我们的工作。个别标记对人类来说不可解释或单独有说服力,因此如 Alvarez Melis 和 Jaakkola(2018)一样,我们要求网络在表示学习组件之后有一个可解释的最终层。与试图理解网络做出预测的原因不同,我们寻求的是科学家可以在后续实验中测试其效果的有影响力的语料库级特征的表示。例如,如果模型识别出日历日期的存在是确定及时回应投诉的全球性有影响力特征,研究人员可能设计两个文本,仅通过包括日期进行区分,并在受控实验中比较其效果。

    其他现有的 NLP 技术可以适应这种方法。例如,说服性和非说服性文本之间的差异(Zhong 等人,2022)可以用来识别有说服力的概念。虽然任何能够学习有影响力文本特征的语料库级低维表示的方法都可以用于识别文本处理,但关键挑战是能够捕捉复杂的特征表示,同时保持人类可解释。这需要在表示学习中具备复杂性,但在理解所学的文本处理的效果的估计中保持清晰。在实验中,我们提出的模型有效地实现了这种平衡。

    从潜在表示中提取有影响力的文本

    我们的目标是提取代表潜在的、可概括的处理的短语簇,这些处理会影响特定结果。为此,我们想象 N 个文本(Ti)被随机分配到一个过程中,通过该过程它们被映射到一个结果(Yi)。让 i 也索引评估文本 i 的个体。我们寻求识别和估计这些文本的 m 维潜在表示(Zi)的效果,该表示总结了可能在反复实验中影响结果的短语或概念簇。我们将 Zi 称为文本 i 的“文本处理”。例如,Zi 的每个元素可以表示某个短语或语法结构的存在或不存在,Zi ∈ {0, 1}m。Zi 也可以包含表示连续文本特征的实值元素,如与某个词汇或概念一致的相似性。

    为了模拟一个顺序实验设置,我们遵循 Egami 等人(2018)的做法,将样本分为训练集和测试集。我们首先训练模型,在训练集内使用交叉验证进行调整和模型选择。然后,我们使用测试数据集解释发现的潜在文本处理,并在附加假设下估计其对结果的影响。我们的主要贡献在于第一阶段:在文本数据和文本处理(Zi)之间发现映射的 CNN 模型的新颖使用。

    Fong 和 Grimmer(2016,2021)概述了在处理为二进制的情况下,该一般过程识别文本处理对结果的因果效应的条件。他们假设:1)个体的处理仅取决于其分配的文本,2)任何非文本特征或不被模型捕获的潜在文本特征对评估者的反应(Yi)的影响是独立于模型捕获的潜在特征的,3)在给定未测量的文本特征的情况下,每个评估者接收任何可能的文本处理的概率是非零的,4)文本是随机分配的,5)潜在处理不是完全共线的。如果这些假设成立,我们的模型可以识别发现的潜在特征的处理效应。在连续处理变量的情况下,与连续处理变量的线性建模假设一起,可以使用线性回归估计这些效应。然而,由于很难评估这些假设是否成立—特别是假设2,我们建议在可能的情况下,实践者使用我们的方法建议在受控实验中研究的处理。

    方法论

    我们建议利用 CNN 的结构来识别有影响力的文本处理。卷积层中的滤波器将文本短语投影到低维表示空间,然后在每个样本的所有短语中进行最大池化,以预测结果(图1)。通过训练模型生成预测的最大池化表示,激励滤波器检测有影响力的 n-gram 模式(Jacovi 等人,2018)。这些模式可以对应于特定的关键词或具有相似词汇、语法结构或语调的关键词簇。例如,研究人员可以测试这些模式在文本中出现时对结果的影响。

    上下文编码器

    我们使用预训练的 BERT 模型(Devlin 等人,2019)对输入文本样本(Ti)进行标记,并获得上下文相关的词嵌入。我们将这些嵌入表示为 ei,j ∈ RD,其中 i 索引每个文本样本,j 索引标记(ui,j),D 表示嵌入维度。考虑到社会科学家的可访问性,我们使用了缩小版模型(Jiao 等人,2020),并且没有进行微调。对于计算预算较少的研究人员来说,使用更大或更复杂的模型并/或在其结果上微调这些模型可能会发现模型性能有所提高。任何提供文本嵌入的模型都可以替代 BERT。我们在创建训练-测试划分之前执行嵌入步骤,但选择微调其嵌入模型的研究人员应逆转这些步骤,以便仅在训练集上进行微调和训练。

    模型架构

    输入的文本嵌入序列 {ei,j}j 传递给一维卷积层 C,或者传递给平行的 M 个这种层(Cl),每个层具有灵活的核大小 Kl 和 F 个滤波器。唯一核大小的平行卷积层的数量决定了平行卷积层的数量。更高数量的滤波器 F 对应于学习更多潜在的文本特征。在我们的实现中,所有卷积层学习相同数量的滤波器。核大小 K 决定了滤波器窗口的大小,即每个卷积层考虑的短语长度。包括多种核大小的滤波器允许模型捕捉不同长度的模式。对于层 C 中核大小为 K = 5 的滤波器 f,卷积操作在输入文本的五个标记短语 pi,1, …, pi,P ∈ RK×D 上生成新特征 ai,f = g(Wf · pi + b),其中 Wf 和 b 是滤波器 f 的学习权重和偏差,g 是 sigmoid 激活函数。我们将这些特征称为“滤波器激活”,ai,f ∈ RP。通过最大池化层对每个文本样本进行汇总,仅保留每个滤波器在文本短语中的最高激活。然后将每个滤波器的最大池化激活 apooled
    i,f ∈ R 连接在平行卷积层之间。然后将连接的最大池化激活传递到最终的全连接层。最终层的激活 ˆYi 对应于模型预测。

    训练

    模型使用 Adam 优化器(Kingma 和 Ba,2017)训练,损失函数如下:

    [
    L = – \frac{1}{N} \sum_i \left( Y_i \log(\hat{Y_i}) + (1 – Y_i) \log(1 – \hat{Y_i}) \right) + \lambda_{\text{conv}} \sum_{\text{ker},k,d,f} (W_{\text{conv}}^{\text{ker}}){k,d,f}^2 + \lambda{\text{conv}} \sum_{\text{act}} \max(R) + \lambda_{\text{out}} \sum_{\text{ker}} |W_{\text{out}}^{\text{ker}}|
    ]

    其中 R 是一个 F x F 矩阵,定义如下:

    [
    R_{f,g} = \begin{cases}
    \max(\text{cor}(\tilde{a_f}, \tilde{a_g}), 0) & \text{for } f \neq g \
    0 & \text{for } f = g
    \end{cases}
    ]

    其中 (\tilde{a_f} \in \mathbb{R}^{N \cdot P}) 表示滤波器 f 在所有 N 样本的 P 短语中的激活向量。第一个项是相对于模型预测的二进制交叉熵损失。我们选择了这个全局损失,因为在我们这里展示的两个应用中,结果都是二进制的,但可以很容易地替换为 RMSE 或者更适合连续结果的其他损失。第二项是应用于卷积层权重 (W_{\text{conv}} \in \mathbb{R}^{K \times D \times F}) 的 L2 正则化惩罚。第三项表示一个活动正则化,惩罚两个滤波器激活之间的最大非负相关性。这惩罚了学习冗余滤波器的模型(通过高相关性激活测量),鼓励卷积层识别更多不同的文本特征(附录 A:图 4)。对于 M > 1 的模型,第二和第三项在每个卷积层的和中重复。第四项是应用于最终全连接层权重 (W_{\text{out}} \in \mathbb{R}^{F \cdot M}) 的 L1 正则化惩罚。每个惩罚的强度由 (\lambda_{\text{conv}}, \lambda_{\text{act}}) 和 (\lambda_{\text{out}}) 控制。

    这些惩罚强度和其他超参数是通过使用训练集的五折交叉验证程序确定的。由于这些模型的动机主要是解释学习到的特征,而不是预测性能,模型选择比简单地选择最高准确率的参数设置更为主观。我们根据准确率、特征冗余的相关性程度以及学习到的“有用”滤波器数量的组合选择模型。应用中选择的模型参数设置在附录中报告。然后使用整个训练集重新训练最终选择的模型,随机抽取的 20% 作为验证集,并使用未见的测试集进行评估。

    识别和测试有影响力的文本特征

    为了解释模型学习到的潜在表示并发现每个文本的文本处理(Zi),我们利用了三个模型组件:

    1. 每个滤波器 f 的每个文本样本短语的滤波器激活(ai,f);
    2. 输出层权重(W out ∈ RF ·M);
    3. 输入文本样本(Ti)。

    滤波器激活表示每个短语与每个滤波器学习到的表示的强度。为了便于解释并为每个滤波器分配手动标签,我们检查每个滤波器的最大激活短语。最终层权重确定每个文本表示如何对最终结果预测做出贡献。最后,原始输入文本样本为高激活的短语提供上下文。由于文本嵌入是上下文相关的,每个短语的嵌入包含比单个标记更多的信息,这些标记缺乏整个样本的上下文。然而,由于文本嵌入维度难以解释,人类读者在阅读整个样本时分配给短语的上下文无法确认与编码的上下文一致。

    评估方法

    我们通过将模型与两种基准方法进行比较来评估我们的模型。第一种是 Fong 和 Grimmer(2016)提出的方法,该方法使用主题建模方法发现和解释潜在的文本处理。我们将这种方法缩写为 F&G。第二种是对语料库中的 n-gram 词汇进行正则化逻辑回归,我们将其缩写为 RLR。通过评估线性模型使用每种方法识别的文本处理预测结果变量的调整 R 平方,以及评估这些线性模型在样本外文本上的均方误差,进行定量比较。我们通过计算数据的 1000 个自助样本的指标,使这些比较对采样变异性具有鲁棒性,固定训练好的模型(因此也固定了学习到的潜在特征)。为了更好地了解我们提出的模型和基准模型的训练过程的稳定性,我们重复了这个过程,但另外在训练数据的 150 个自助样本上重新训练模型(固定调整的参数设置)。通过评估学习到的文本特征的可解释性和多样性进行定性比较。在审查应用中,已知哪些短语导致审查的真实信息使我们能够通过其恢复已知因果效应的文本处理的能力来比较方法。基准方法的实现细节和完整的解释结果包括在附录 B 中。

    实验

    为了充分展示我们的方法能够实现的定性和实质性结果,我们集中在两个数据集上进行实验。第一个数据集因为稀有的真实信息而被选中,第二个数据集因为其在相关研究中的使用而被选中,以探索有影响力的文本特征可能表现出复杂和多样结构的设定。我们采用深度优先而不是广度优先的方法,但未来的工作应在更大范围的数据集上评估这种方法。虽然该方法可以推广到任何文本被认为会导致结果的数据集,但具有关于这种关系的真实信息的数据集是理想的(尽管罕见),因为它们可以展示成功识别因果关系和效应。

    微博帖子审查

    数据集和设置

    对于我们的第一个应用,我们使用了28,386条来自Weibo-Cov数据集的微博帖子(Hu等人,2020)。这些是关于COVID的社交媒体帖子,发布于2020年2月的微博上。为了获取每个帖子的审查标签,我们使用了来自百度的内容审核API。该API是一个分类器,为每个帖子返回审查的概率。API仅在社交媒体帖子包含在百度黑名单上的单词或短语时返回概率1。由于API还返回标记的关键词和短语,这使我们能够验证我们的模型是否可以恢复导致审查的关键词和短语。

    我们训练我们的模型来预测帖子是否被API标记为审查概率为1。尽管这个结果不是由直接的人类决策决定的,但我们可以将黑名单视为一个完美实现一组人类定义偏好的决策者(这些偏好可能或可能不代表更广泛的审查政策)。为了对这些文本进行标记和嵌入,我们使用了由哈尔滨工业大学和iFLYTEK联合实验室提供的预训练BERT中文语言模型MiniRBT-h288(Yao等人,2023)。该模型具有288维的嵌入维度和12.3M参数。我们使用BERT模型最后一个隐藏状态的嵌入作为我们模型架构的输入特征。数据集中帖子示例、其审查概率及其审查词(如适用)及其英文翻译见附录A表3。附录A表4显示了所有审查概率为1的样本中前10个审查词、其翻译及对应的审查样本比例。

    结果

    训练好的模型在测试集上获得了0.87的准确率。在模型重复训练在重新采样数据并重新评估的迭代中,模型分类准确率相对稳定(值在[0.84, 0.88]之间,平均为0.86)。这表明模型学习到了有用的表示,这些表示可以预测该时期的微博帖子是否会被审查。基于参数调优结果,该模型由两个卷积层组成,核大小分别设置为5和7个中文字符。我们在表1中重点解释了最相关的表示,所有表示的解释见附录A表7。我们发现,模型清晰地识别出了两种最常被审查的短语,“武汉病毒”(23.9%的被审查帖子)和“国家危机”(4.9%的被审查帖子),它们在模型的第一个和第二个滤波器中被识别出来。最大池化激活对这些滤波器的最大贡献见于表中的W out列。滤波器3和9的最高激活短语共同具有另外两个已知的审查短语,“省委书记”和“新天地教会”,滤波器10的最高激活短语完全集中在同一个短语上,该短语涉及第五个已知的审查短语“蒋超良”。完整的表示解释集显示了滤波器学习到的关键词存在某种冗余。在其他设置中,它们在句子结构和上下文中的差异可能具有启发性,尽管在这种情况下,已知这些短语的包含单独影响结果。作为概念验证,我们包括了通过对测试样本的最大池化滤波器激活进行回归获得的效应估计,尽管这种设置不符合典型的实验设计。尽管估计效应的大小与输出层权重不同(很大程度上因为输出层权重对应于sigmoid而不是线性激活),但它们在哪些文本处理被发现对审查最有影响方面相对一致。

    模型验证

    我们发现这种方法成功恢复了导致最多帖子被审查的短语。在没有审查理由的情况下,我们相信研究人员可以使用这个模型确定至少五种最常见的审查短语。相比之下,我们发现F&G方法学习到的主题与任何最常见的审查短语都不清晰对齐(附录B:表12)。逻辑回归模型选择的n-gram词组部分对应于三个常见的审查短语:“武汉病毒”,“蒋超良”和“省委书记”(附录B:表13)。我们的模型在图2报告的两个指标上都优于基准方法,这表明我们模型学习到的特征解释审查结果的变异性显著更多,并且在预测能力方面比基准方法学习到的主题和关键词更好。

    消费者金融保护局投诉响应

    数据集和设置

    对于我们的第二个应用,我们使用了Egami等人(2018)从2015年3月到2016年2月提交给消费者金融保护局(CFPB)的54,816个消费者投诉叙述的数据集。结果变量表示投诉者是否及时收到了公司的回应。由于结果变量严重不平衡,我们继续使用一个包含及时响应(5136个及时响应和1712个非及时响应)的子样本,并结合一个类别加权的损失函数。为了对投诉文本进行标记和嵌入,我们使用了由Google Research训练的预训练BERT英文语言模型bert-tiny(Turc等人,2019;Bhargava等人,2021)。该模型具有128维的嵌入维度和4M参数。

    结果

    训练好的模型在测试集上获得了0.76的准确率和0.33的F1分数。在模型重复训练在重新采样数据并重新评估的迭代中,模型分类准确率相对一致,值在[0.72, 0.79]之间,平均为0.75。F1分数观察到较大的变化,值在[0.12, 0.44]之间,平均为0.31。考虑到使用的数据集的有限规模、类别不平衡和这个学习任务的相对复杂性,模型获得较低的性能并不意外,但学习到的表示仍提供了关于数据集中文本处理的有意义的见解。

    表2总结了模型学习到的前8个表示(根据最终层权重)的解释。所有滤波器的解释见附录A表10。该模型具有一个卷积层,核大小设置为5个标记,这是通过参数调优选择的。我们推断,提到信用纠纷和银行业务流程可能与及时响应正相关,而提到试图收债、电话或语音邮件、以前的互动或发薪日贷款可能与及时响应负相关。除了这些较广泛的主题之外,我们还发现,在描述争议行动时使用不定式动词可能会增加及时响应的可能性,而使用缩略形式可能会产生相反的效果。表2还包括测试集标签与文本的最大池化滤波器激活进行回归的效应估计。同样,我们认为这些效应的因果解释假设不太可能成立,但估计仍可以作为研究人员探索后续实验的文本处理的有用工具。

    模型评估

    在这个应用中,我们无法访问投诉收到或未收到及时响应的真实原因,并且设想各种文本特征可能会影响这个结果。两种基准方法都检测到某些金融主题似乎与及时响应相关(附录B:表15、16)。特别是,所有模型的结果都表明提到收债与及时响应负相关,而提到银行业务流程和信用问题与及时响应正相关,尽管估计的大小有所不同。除了这些共享的主题之外,我们的模型独特地学习到预测结果的语法文本特征。尽管所有模型在其识别的文本特征的样本外预测能力方面表现相似,我们的模型结果在R2 adj值方面比基准方法略高(图3)。

    结论

    我们提出了一种新的方法,通过灵活长度的短语簇来发现有影响力的文本特征。我们的方法受到计算社会科学和可解释NLP先前工作的启发,并在其基础上进行改进,为实验者提供了一种定量工具,用于识别后续实验中测试的有前景的文本处理。当研究人员愿意做出第3节讨论的更强的识别假设时,使用模型识别的文本处理还可以直接用于估计测试集上的因果效应。我们的应用展示了模型学习有用和多样化潜在文本表示的能力,以及恢复已知有影响力文本特征的能力。未来工作的重要方向包括进行人类可解释性评估,以严格比较我们的方法与基准方法的定性方面。评估跨模型运行识别的潜在文本处理的稳定性的方法对进行后续受控实验的实践者也将是有用的。

    参考文献

    • Arceneaux, K., & Nickerson, D. W. (2010). Comparing negative and positive campaign messages: Evidence from two field experiments. American Politics Research, 38(1), 54-83.
    • King, G., Pan, J., & Roberts, M. E. (2014). Reverse-engineering censorship in China: Randomized experimentation and participant observation. Science, 345(6199), 1-10.
    • Sheikhalishahi, S., Miotto, R., & Weng, C. (2019). Natural language processing of clinical notes on chronic diseases: Systematic review. JMIR Medical Informatics, 7(2), e12239.
    • Hainmueller, J., & Hangartner, D. (2013). Who gets a Swiss passport? A natural experiment in immigrant discrimination. American Political Science Review, 107(1), 159-187.
    • Fong, C., & Grimmer, J. (2016). Discovery of treatments from text corpora. Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), 1608-1617.
    • Pryzant, R., Diaz, M., & Liu, Y. (2018). Deconfounded lexicon induction for interpretable social science. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, 1686-1695.
    • Jacovi, A., & Goldberg, Y. (2018). Towards faithfully interpretable NLP systems: How should we define and evaluate faithfulness? In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, 4198-4208.
    • Alvarez Melis, D., & Jaakkola, T. S. (2018). Towards robust interpretability with self-explaining neural networks. In Advances in Neural Information Processing Systems, 7775-7784.
    • Rajagopal, D., & Mooney, R. (2021). Global explanations of neural networks: Mapping the landscape. In Proceedings of the 2021 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, 124-131.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决的问题是如何在社会科学研究中,使用计算模型来发现和评估文本数据对人类评价影响的特征。具体来说,它关注以下几个方面:

    1. 文本对人类评价的影响:研究者们一直在探索文本(如竞选信息、社交媒体帖子、临床笔记等)如何影响人们的决策和评价。
    2. 实验方法的局限性:传统实验方法通常限制在测试研究者预先指定的少量文本处理(text treatments),这可能带来主观性,并且可能缺乏外部有效性。
    3. 文本特征的自动发现:近年来,计算社会科学领域的研究试图从未结构化的文本中挖掘出影响结果的特征,但这些模型主要集中在文本的主题或特定词汇上,这可能并不总是影响效果的机制。
    4. NLP解释性技术的结合:论文提出了一种新的方法,结合了自然语言处理(NLP)的解释性技术,使用卷积神经网络(CNN)来灵活地发现预测人类对文本反应的文本短语集群。
    5. 因果推断与文本处理:论文还探讨了如何使用文本作为处理手段来进行因果推断,目的是识别出影响结果的文本特征的低维表示。
    6. 模型的灵活性和多样性:与以往的方法相比,论文提出的方法能够学习到不同长度和结构的文本表示,不受文档级别的主题集或特定词汇集的限制。
    7. 实验设置中的应用:论文提出的方法在实验设置中可以识别文本处理及其在一定假设条件下的效果,这为研究者提供了一种新的工具,用于在后续的确认性分析中发现和测试文本处理。

    总的来说,这篇论文试图通过结合计算社会科学和可解释机器学习的方法,提供一个能够自动发现并解释文本中影响人类评价特征的模型,以提高研究的客观性和外部有效性。

    Q: 有哪些相关研究?

    A: 论文中提到了以下几类相关研究:

    1. 计算社会科学和因果推断:先前的研究集中在同时发现处理方法和估计其效果的方法。例如,Fong和Grimmer (2016) 应用监督的印度自助餐过程在随机对照试验(RCT)设置中发现特征(主题)并估计它们对结果的影响。Pryzant等人 (2018) 使用n-gram特征而不是主题,并使用一种神经架构来从网络权重中提取特征重要性。
    2. 可解释的NLP:许多方法被提出来解释和解释NLP模型,以及这些方法的元评估。这些方法主要集中在在个体样本层面上解释和理解预测。与此相反,本文提出的方法旨在学习和解释在语料库层面发生的更广泛的模式。
    3. 文本特征的发现和效果估计:以往的工作通常集中在估计主题或单个词作为处理的效果。例如,Fong和Grimmer (2016) 将监督的印度自助餐过程应用于发现特征(主题)并估计它们在RCT设置中对结果的影响。
    4. 文本的低维表示:因果推断方法旨在识别文本特征的低维表示,这些特征在因果上影响结果。本文通过使用上下文化的词嵌入、卷积神经网络(CNNs)和解释性方法,对这一设置进行了创新性的应用。
    5. 文本处理的模拟实验:本文提出的方法和它建立在之上的方法试图模拟针对特定潜在文本特征的因果效应的实验。然而,只有在满足强假设的情况下,才能直接识别效果。
    6. 文本特征的解释性:本文提出的方法使用解释性方法灵活地发现文本中的潜在处理方法。这与主要关注提高黑盒预测模型解释性的NLP工作形成对比。
    7. 文本特征的因果效应估计:尽管本文提出的方法和它建立的方法试图模拟实验以针对特定潜在文本特征的因果效应,但效果只能在满足强假设的情况下直接识别。

    这些相关研究为本文提出的新方法提供了理论基础和对比,展示了在文本特征发现和因果推断方面的最新进展。

    Q: 论文如何解决这个问题?

    A: 论文通过提出一种基于卷积神经网络(CNN)的方法来解决发现和评估文本数据对人类评价影响的特征的问题。具体的解决步骤包括:

    1. 使用预训练的BERT模型:利用预训练的BERT模型对输入文本进行分词并获取上下文相关的词嵌入。
    2. 模型架构设计:设计一个包含一维卷积层的神经网络模型,这些卷积层可以并行工作,每个层具有不同的内核大小和数量,以便捕获不同长度的文本模式。
    3. 最大池化操作:通过最大池化层汇总每个文本样本中每个卷积核的最高激活值,以预测结果。
    4. 训练模型:使用Adam优化器和特定的损失函数来训练模型,包括二元交叉熵损失和正则化项,以鼓励模型学习到不同的文本特征。
    5. 解释模型学习到的表示:通过分析每个卷积核的激活情况,以及它们在最终预测中的贡献,来解释模型学习到的文本特征。
    6. 文本特征的发现和测试:利用模型的组件(如滤波器激活、输出层权重和原始文本样本)来识别和测试影响特定结果的文本特征。
    7. 评估方法:通过与两种基准方法(Fong和Grimmer (2016) 的主题建模方法和基于词汇表的n-gram的正则化逻辑回归)进行比较,量化评估模型预测结果的能力。
    8. 实验验证:在两个数据集上应用该方法,一个是Weibo社交媒体帖子的审查数据集,另一个是消费者金融保护局(CFPB)的投诉数据集,以展示模型发现文本处理的能力和与基准方法相比的性能。
    9. 结果解释和应用:根据模型结果,研究人员可以设计后续的实验来测试模型识别的文本特征,或者直接在强假设条件下估计文本处理的因果效应。

    通过这种方法,论文提供了一种新的工具,使研究人员能够在不同的文本数据集中发现和评估影响人类评价的文本特征,同时保持了结果的可解释性。

    Q: 论文做了哪些实验?

    A: 论文进行了两个主要的实验来验证所提出方法的有效性:

    1. Weibo帖子审查实验
      • 数据集:使用了来自Weibo-Cov数据集的28,386条关于COVID-19主题的社交媒体帖子。
      • 实验目的:预测帖子是否会被审查,以及识别导致审查的文本特征。
      • 实验方法:使用百度的内容审查API来获取每个帖子的审查标签,并训练CNN模型来预测审查结果。
      • 结果:模型能够以0.87的准确率预测帖子是否会被审查,并成功识别出与审查相关的关键词和短语。
    2. 消费者金融保护局(CFPB)投诉响应实验
      • 数据集:使用了54,816条提交给CFPB的消费者投诉叙述,时间范围从2015年3月到2016年2月。
      • 实验目的:预测投诉者是否从被投诉公司那里获得了及时的回应。
      • 实验方法:由于结果变量的严重不平衡,研究者选择了一个子样本,并使用类加权损失函数来训练CNN模型。
      • 结果:模型在测试集上获得了0.76的准确率和0.33的F1分数,揭示了与及时回应相关的文本特征。

    在这两个实验中,论文的方法不仅能够预测结果,还能够通过模型的解释性组件来识别和解释影响结果的文本特征。这些特征包括关键词、短语、语法结构等,它们在不同的实验设置中表现出了不同的影响力。

    此外,论文还与两种基准方法进行了比较:

    • Fong和Grimmer (2016) 提出的方法,使用主题建模来发现和解释潜在的文本处理。
    • 正则化逻辑回归(RLR),使用词汇表中的n-gram作为特征。

    通过这些实验,论文展示了其方法在不同数据集上的应用能力,并与现有方法进行了定量和定性的比较。

    Q: 有什么可以进一步探索的点?

    A: 论文在第6节“Conclusion”和第7节“Limitations”中提出了一些可以进一步探索的点,以下是几个关键的研究方向:

    1. 模型的可解释性评估:进行更严格的人类可解释性评估,以比较所提出方法与现有基准方法在定性方面的差异。
    2. 模型性能与计算成本的权衡:研究模型性能提升与计算成本(时间和内存)之间的权衡,特别是在使用更大或更高级的模型时。
    3. 实验成本与可解释性之间的权衡:探索在直接测试潜在文本处理与设计后续实验以测试明确文本特征之间的权衡。
    4. 模型不确定性的纳入:研究如何将识别潜在文本处理过程中的模型不确定性纳入因果效应估计。
    5. 实验文本的设计:研究如何设计实验文本以隔离感兴趣的处理,以及如何克服在不直接影响文本其他部分的情况下操纵特定文本特征的挑战。
    6. 跨模型运行的稳定性评估:开发方法来评估在不同模型运行中识别潜在文本处理的稳定性。
    7. 使用不同的BERT模型:研究使用不同大小、经过微调或更先进的BERT模型对模型性能的影响。
    8. 跨数据集的计算成本比较:在更广泛的数据集范围内比较所提出方法与现有方法的计算成本。
    9. 伦理和滥用风险:进一步探讨模型可能被滥用以提高操纵能力的风险,并权衡这些风险与开源模型的潜在益处。
    10. 模型的泛化能力:评估模型在不同类型的文本和不同领域中的泛化能力。
    11. 模型的可扩展性:研究模型在处理大规模数据集时的可扩展性和效率。
    12. 模型的健壮性:评估模型对于不同类型的噪声和异常值的健壮性。

    这些点提供了对现有工作深入理解和未来研究方向的基础。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以总结如下:

    1. 问题背景:论文讨论了在社会科学中,文本如何影响人类评价和决策,并指出了传统实验方法在测试文本影响时的局限性。
    2. 研究目标:提出了一种新的方法,使用卷积神经网络(CNN)结合自然语言处理(NLP)的解释性技术,来发现和解释预测人类对文本反应的文本短语集群。
    3. 方法论
      • 使用预训练的BERT模型来获取文本的上下文相关嵌入。
      • 设计了一种CNN模型架构,通过一维卷积层和最大池化层来捕捉文本中的模式。
      • 通过训练模型来学习文本数据和文本处理(潜在的文本特征)之间的映射。
    4. 实验设计
      • 在Weibo帖子审查数据集上进行实验,验证模型预测帖子是否会被审查的能力。
      • 在消费者金融保护局(CFPB)的投诉数据集上进行实验,预测消费者是否获得及时反馈。
    5. 结果分析
      • 模型在两个数据集上均取得了良好的预测性能,并能够识别出与结果相关的文本特征。
      • 通过与现有方法的比较,展示了所提方法在解释性和预测性能方面的优势。
    6. 方法贡献
      • 提供了一种新的视角,将计算社会科学中的文本处理与可解释机器学习相结合。
      • 允许研究人员发现文本中的潜在处理方法,并在后续实验中进行测试。
    7. 局限性和未来工作
      • 讨论了使用小BERT模型的局限性,以及未来可能的改进方向,如模型的可解释性评估、计算成本、实验设计等。
    8. 伦理考量:论文最后讨论了模型可能被滥用的风险,以及对社会有益应用的潜力。

    整体而言,这篇论文提出了一种结合了深度学习和解释性NLP的方法,用于分析文本数据对人类行为的影响,并在两个不同的数据集上验证了其有效性。


  • 人工智能能否胜任口译评估?探索机器与人类评估之间的关联

    口译质量评估一直是专业口译和学术研究中的重要课题。评估结果对于口译客户、用户、从业者、教育者、认证机构和研究人员都具有重要意义。然而,由于口译的复杂性和主观性,评估口译质量一直是一项挑战。

    口译质量评估的挑战

    传统的口译质量评估主要依靠人工评估,这种方法既有优点也有缺点。人工评估可以全面地考虑口译过程中的各个方面,例如内容、语言和表达,从而提供更细致入微的评估结果。然而,人工评估也存在着一些弊端,例如耗费人力、时间和成本,而且评估结果的推广性有限。

    随着人工智能技术的快速发展,人们开始探索使用自动指标来评估口译质量。虽然传统的统计指标,如BLEU,在捕捉用户视角的翻译质量方面效果有限,但语义向量和预训练的大型语言模型的出现为口译质量评估带来了新的希望。

    语义向量与大型语言模型的应用

    语义向量是一种将词语或文本片段映射到多维空间中的一种方法,可以有效地捕捉文本的语义信息。大型语言模型,如BERT和GPT,在自然语言处理领域取得了显著的成果,可以用于计算语义相似度。

    在口译研究中,人们开始尝试使用语义向量和大型语言模型来评估口译质量。例如,一项研究表明,GPT-3.5模型在评估源语言和目标语言之间的语义相似度方面,与人类的判断高度一致。

    本研究的意义

    本研究旨在评估自动指标在评估口译质量方面的可靠性,并分析其与人类评估之间的关联。研究人员使用了一个包含12段英语演讲的语料库,并将其翻译成西班牙语。 每段演讲都由人类专业口译员和机器翻译系统进行翻译。

    研究人员使用三种神经网络模型来计算语义向量:all-MiniLM-L6-v2、GPT-Ada和USEM。 此外,他们还使用GPT-3.5模型的提示功能来评估句子对的语义相似度。

    研究结果

    研究结果表明,GPT-3.5模型在评估翻译质量方面表现最佳,其与人类评估之间的相关性最高。 此外,研究还发现,GPT-3.5模型在评估人类口译员的翻译质量方面比评估机器翻译的质量更强。 这可能与人类口译员在翻译过程中经常引入一些细微的语境、语气和习语调整有关,这些调整更符合GPT-3.5模型的训练数据。

    未来研究方向

    本研究为使用自动指标评估口译质量提供了初步的探索,但仍存在一些局限性。例如,人类评估者之间的一致性较低,这可能影响了相关性值和结果的推广性。 未来研究需要扩大语料库规模,并进一步探索自动指标在评估不同类型错误方面的能力。

    总结

    本研究表明人工智能技术在评估口译质量方面具有很大的潜力。 GPT-3.5模型等大型语言模型可以有效地捕捉翻译的语义信息,并与人类的判断高度一致。随着人工智能技术的不断发展,自动指标在口译质量评估中的应用将更加广泛。

    参考文献

    • Fantinuoli, C., & Prandi, D. (2021). A user-centric framework for the evaluation of interpreting quality. Interpreting, 23(3), 267-286.
    • Han, Z. (2022). The nature of interpreting quality: A critical review. Routledge.
    • Kocmi, T., & Federmann, C. (2023). Evaluating translation quality with large language models. arXiv preprint arXiv:2302.06042.
    • Wang, X., & Fantinuoli, C. (2024). Exploring the correlation between human and machine evaluation of simultaneous speech translation. arXiv preprint arXiv:2406.10091.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文主要探讨了如何评估同声传译(simultaneous interpretation)的质量,特别是自动评估方法与人工评估之间的相关性。论文指出,评估口译服务的表现是一个复杂的任务,因为口语翻译的微妙性、口译员应用的策略以及用户不同的期望。当应用自动化评估方法时,这种复杂性更加明显,尤其是因为口译文本由于口译员采用的策略,在源语言和目标语言之间表现出的非线性特征。

    研究的主要问题包括:

    1. 是否存在一种自动度量方法,能够与人工判断紧密对齐,从而可以用于自动化评估口语翻译的准确性?
    2. 这些度量方法在评估人工生成的翻译、机器生成的翻译,或者两者上是否同样有效?

    论文通过分析自动度量方法与人工评估之间的相关性,旨在评估自动度量方法在评估同声传译中的可靠性,特别是翻译准确性或忠实度这一特定特征的质量。论文使用了人类专家的语言评估作为基准,来评估句子嵌入(sentence embeddings)和大型语言模型(Large Language Models)与人类评估的相关性,并且量化了源文本和翻译文本之间的语义相似性,而没有依赖于参考翻译。

    Q: 有哪些相关研究?

    A: 相关研究主要集中在以下几个领域:

    1. 机器翻译质量评估(MTQE):传统上,计算机科学领域使用诸如BLEU、NIST、METEOR和TER等自动度量方法来评估机器翻译的质量。这些度量方法主要关注n-gram的精确度和召回率。
    2. 语义向量和预训练语言模型:随着语义向量和大规模生成语言模型的出现,特别是在书面翻译领域,这些方法展现出了有希望的结果。这些方法逐渐扩展到口语翻译领域。
    3. 神经网络架构:研究了循环神经网络(RNNs)、卷积神经网络(CNNs)和Transformer模型在语义相似性计算方面的潜力。特别是基于Transformer的模型如BERT和GPT因其在多种自然语言处理(NLP)任务中的卓越表现而受到学术界的广泛关注。
    4. 口译研究:在口译研究领域,传统的准确性评估方法包括基于参考的评估和无参考的评估。一些研究通过错误分析和命题分析来评估翻译的准确性,而较新的研究则强调使用评分标准来评估口译表现。
    5. 自动评估工具的有效性:一些研究探索了各种度量方法在评估翻译质量或口译表现方面的有效性。例如,有研究指出BLEU和METEOR与人工评估之间的强相关性,以及BERT模型在评估口译表现方面的潜力。
    6. 无参考翻译评估:尽管已有研究表明BLEU和METEOR等度量方法与人工评估有中等至强相关性,但据作者所知,目前还没有研究使用语言模型进行无参考口译评估。本研究旨在填补这一空白。

    这些相关研究为本文的研究提供了理论基础和方法论指导,同时也指出了现有方法的局限性和未来研究的方向。

    Q: 论文如何解决这个问题?

    A: 论文通过以下步骤解决评估同声传译质量的问题:

    1. 数据集构建:研究者创建了一个包含12场英语演讲并翻译成西班牙语的数据集,这些演讲来自不同场合,如讲座、商业演示、现场教程和政治演讲。所有演讲都被专业口译员和机器翻译系统(KUDO AI Speech Translator)同时翻译,并进行了人工转录和校对。
    2. 人工评估:使用由Fantinuoli和Prandi(2021)提出的方法,通过Likert量表评估口译的准确性和可理解性。本研究专注于准确性评估,并由18位评估者(包括专业口译员和双语个体)进行。
    3. 机器评估:采用基于句子嵌入和大型语言模型提示技术的方法来评估语义相似性。研究者使用了all-MiniLM-L6v2、GPT-Ada和Universal Sentence Encoder Multilingual(USEM)三种神经网络模型来生成句子嵌入,并通过余弦相似性计算源文本和翻译文本之间的相似度。此外,还测试了利用GPT-3.5的提示功能来评估句子对的语义相似性。
    4. 计算相关性:将人工评估和机器评估结果整合在评估矩阵中,使用皮尔逊相关系数探索人工评估与机器评估(包括GPT-3.5、all-MiniLM-L6-v2、GPT-Ada和USEM模型计算的余弦相似度)之间的关系。
    5. 窗口大小的影响:研究者考察了“窗口大小”(即合并成单个单元的段落数量)对模型上下文理解的影响,以及对语义相似性评估精度的潜在影响。通过计算不同窗口大小下的相似度,研究者分析了跨段落上下文的可用性如何影响人工和机器评估之间的语义相似性。
    6. 结果分析:研究者从不同角度(包括评估方法间的相关值比较、人工翻译与机器翻译间的比较,以及基于窗口大小的相关值比较)制定了图表来分析数据。
    7. 伦理考量:论文还讨论了自动评估可能引发的伦理问题,如隐私权侵犯、持续监控感、就业决策的公正性和偏见问题。
    8. 结论:研究发现GPT-3.5在Likert量表上的质量评估与人类评估的相关性最高,表明GPT-3.5是评估翻译质量的最有前途的工具,无论是对人工还是机器生成的翻译。

    通过这些步骤,论文旨在开发一种能够与人类判断一致地反映口译质量的度量方法,并探讨了这种方法在实际应用中的可行性和局限性。

    Q: 论文做了哪些实验?

    A: 论文中进行的实验主要包括以下几个方面:

    1. 数据集创建:研究者从真实场景中筛选了12场英语演讲并翻译成西班牙语的视频,这些视频涵盖了不同的性别、口音、演讲类型,并且包含了一定数量的语言标记(tokens)。
    2. 人工评估实验:根据Fantinuoli和Prandi(2021)提出的方法,使用Likert量表对人工和机器翻译的准确性和可理解性进行评估。评估者包括专业口译员和双语个体,他们对视频的翻译进行了盲评估,即不知道翻译是由人类还是机器完成的。
    3. 机器评估实验:利用句子嵌入和大型语言模型来评估翻译的语义相似性。研究者使用了以下三种神经网络模型来生成句子嵌入:
      • all-MiniLM-L6v2
      • GPT-Ada
      • Universal Sentence Encoder Multilingual (USEM)
      并计算了源文本和翻译文本之间的余弦相似度。此外,还使用了GPT-3.5模型通过直接提示来评估句子对的语义相似性。
    4. 相关性分析:将人工评估和机器评估的结果整合在评估矩阵中,使用皮尔逊相关系数来探索两者之间的相关性。
    5. 窗口大小影响分析:研究者考察了不同窗口大小(即合并成单个单元的段落数量)对于评估结果的影响。具体来说,分析了从1到5个段落窗口大小的余弦相似度,以了解跨段落上下文如何影响人工和机器评估之间的语义相似性。
    6. 结果可视化:通过图表展示了不同机器评估方法之间的相关值分布、人工翻译与机器翻译之间的平均相关性差异,以及不同窗口大小下的语义相似性相关值变化。

    这些实验的目的是为了评估自动度量方法在评估同声传译质量方面的可靠性,特别是它们与人类评估的相关性,并探索影响这种相关性的因素。

    Q: 有什么可以进一步探索的点?

    A: 根据论文的结论和讨论部分,以下是一些可以进一步探索的点:

    1. 训练数据集的特性:研究GPT-3.5等模型的训练数据集特性,以及这些特性如何与现实世界中的口译任务对齐。
    2. 评估窗口大小:考虑对更大的窗口大小进行评估,以捕获更广泛的上下文信息,并分析其对评估结果的影响。
    3. 错误类型的细微差别:探索GPT-3.5区分不同类型的错误(如语法错误、词汇选择错误等)的能力,而不仅仅是提供总体评分。
    4. 人类评估的一致性:研究如何提高人工评估的一致性,以减少评估者之间由于期望不同而导致的变异性。
    5. 模型的适应性:研究如何使模型更好地适应特定类型的口译任务,例如专业领域(如医疗、法律等)的口译。
    6. 多模态输入的处理:考虑将音频和视频输入纳入评估过程,以更全面地捕捉口语翻译的质量。
    7. 实时评估的可行性:探索自动评估工具在实时或准实时反馈中的应用,以及如何优化这些工具以满足实际教学和训练需求。
    8. 伦理和可接受性问题:深入研究自动评估在伦理和社会可接受性方面的问题,以及如何在实际应用中解决这些问题。
    9. 跨语言和文化因素:研究在不同语言和文化背景下,自动评估工具的表现和适应性。
    10. 用户定制和个性化:探索如何根据用户的具体需求定制评估标准和反馈,以提供更个性化的评估结果。
    11. 长期影响研究:研究自动评估工具在长期内对口译员职业发展和教育的影响。
    12. 技术集成:研究如何将自动评估工具与其他教育技术或翻译辅助工具集成,以提供更全面的解决方案。

    这些探索点可以帮助研究者更深入地理解自动评估工具的潜力和局限性,并为未来的研究和开发提供方向。

    Q: 总结一下论文的主要内容

    A: 这篇论文《Exploring the Correlation between Human and Machine Evaluation of Simultaneous Speech Translation》主要探讨了自动评估方法在同声传译质量评估中的可靠性,尤其是与人类评估的相关性。以下是论文的主要内容总结:

    1. 研究背景:同声传译质量的评估是一个复杂任务,涉及到口语翻译的微妙性、口译员的策略以及用户的不同期望。自动化评估方法的应用增加了这一任务的复杂性。
    2. 研究目的:评估自动度量方法在评估同声传译准确性方面的可靠性,并分析其与人类评估的相关性。
    3. 数据集:研究者创建了一个包含12场英语演讲及其西班牙语翻译的数据集,这些演讲来自不同的真实场景。
    4. 人工评估:使用Likert量表对翻译的准确性和可理解性进行评估,评估者包括专业口译员和双语个体。
    5. 机器评估:利用句子嵌入和大型语言模型(如GPT-3.5、all-MiniLM-L6-v2、GPT-Ada和USEM)来评估翻译的语义相似性。
    6. 相关性分析:通过皮尔逊相关系数分析人工评估与机器评估结果之间的相关性。
    7. 窗口大小影响:研究了不同窗口大小对评估结果的影响,以了解上下文信息对评估的相关性。
    8. 结果:GPT-3.5模型在Likert量表上的质量评估与人类评估显示出最高的相关性,表明其在评估翻译质量方面具有潜力。
    9. 伦理考量:讨论了自动评估可能引发的伦理问题,如隐私权、持续监控感、就业决策的公正性和偏见问题。
    10. 结论:GPT-3.5被认为是评估翻译质量的最有前途的工具,但研究也指出了人工评估的一致性问题和样本范围的限制,并建议未来的研究应进一步探索模型的适应性、错误类型的细微差别和伦理问题。

    论文通过实验和分析,为自动评估工具在同声传译领域的应用提供了初步的可行性研究,并指出了未来研究的方向。


  • 大型语言模型的“不知道”:一种新的不确定性敏感训练方法

    大型语言模型(LLMs)在各种任务中展现出惊人的能力,但仍然面临着诸如幻觉等挑战。幻觉是指LLMs生成与事实不符或毫无意义的响应。造成幻觉的一个潜在原因是缺乏相关知识或上下文。因此,一个很有前景的解决方案是指示LLMs在问题超出其知识范围或提供的上下文时,回答“我不知道”。然而,在这项研究中,我们观察到LLMs难以承认其知识的局限性,这主要是因为现有的指令数据集旨在鼓励特定的答案。

    为了提高大型语言模型识别其知识边界的能力,我们提出了一种名为“不确定性敏感训练”的新方法。该方法包含一个两阶段训练过程,专门针对不确定性识别和提示敏感激活。在第一阶段,我们引导LLMs拒绝未知问题。在第二阶段,我们通过整合设计的因果指令来恢复问答任务中下降的性能。通过利用这种方法,我们旨在增强模型识别不确定性区域的能力。

    LLMs 为什么难以承认“不知道”?

    现有的研究表明,在训练数据和过度估计方面存在不确定性。模型倾向于模仿训练集中的输出,导致对不足的疑问-上下文对生成合理的答案,从而产生幻觉。此外,模型可能对其能力过于自信,无法识别未知问题。

    为了解决这个问题,一些研究人员建议提示LLMs承认其知识的缺乏。然而,这样做会导致LLMs忽略提示中包含的重要指令。如图1所示,即使有明确的指令,例如“如果上下文不足以回答问题,请用‘未提供’回答”,LLMs仍然可能利用提供的语料库之外的知识。

    不确定性敏感训练:两阶段训练方法

    为了增强大型语言模型识别其知识局限性的能力,我们提出了一种名为“不确定性敏感训练”的新训练框架。该方法包含一个两阶段训练过程,专门针对不确定性识别和提示敏感激活。

    第一阶段:不确定性识别训练

    第一阶段重点训练模型,使其对知识的缺乏有准确的意识。我们将其任务定义为一个二元分类问题。问题被分为两种类型:已知问题和未知问题。已知问题是指具有足够上下文信息来提供答案的问题。相反,未知问题是指缺乏足够上下文信息来提供答案的问题。模型需要检测提供的上下文是否足以回答问题。

    第二阶段:提示敏感训练

    通过不确定性识别训练,模型可以识别给定上下文的边界。然而,模型可能对未知问题过于敏感。在第一阶段之后,模型确实学习了如何准确地回答未知问题。但是,具有特定答案的问题的性能下降了近27%。我们假设在未知问题上进行微调的模型会遇到提示敏感度降低的问题,并且可能会破坏一些理想情况下会导致更好生成的指令。

    我们根据指令影响响应的因素将其分为因果因素和非因果因素。因果因素很重要,因为它们直接影响响应,而非因果因素对结果的影响很小。指令中的控制条件,例如响应的字数,是典型的因果因素。额外的指令,例如“如果输入有文件名,请给我一个参考”,是非因果因素,因为它可能不会改变答案。在训练过程中,LLMs可能会忽略这种类型的指令,因为它并不总是直接有助于答案。但是,非因果因素对问题同样重要。例如,一本书的介绍可能与主要内容无关,导致读者低估其价值。然而,它在增强读者对内容的理解方面起着至关重要的作用。

    基于此,我们进一步提出了提示敏感训练,旨在引导模型完成提示中的所有指令。提示敏感训练包含两个子任务:添加因果指令和指令审查。我们使用GPT-4来合成所需的数据并将其提炼到目标模型中。

    • 因果指令合成:通过指示GPT-4生成保证会影响最终响应的控制要求,我们获得了额外的因果指令。然后,为了提高模型的指令敏感度,我们随机将一个因果指令插入到原始的QA指令中。例如,限制输出的字数、时态或格式。然后,我们提示GPT-4以新的指令进行响应,并记录对话数据以微调较小的模型。
    • 指令审查合成:指令审查模块旨在使用模型本身来验证所有指令是否已完成。模型将递归地重新生成,直到它通过利用在附录A.4中记录的自定义提示获得完美的答案。指令审查的过程在算法1中进行了说明。

    实验结果

    我们对主流大型语言模型进行了评估,包括Llama2-Chat-7B、GPT-4 Turbo、GPT-3.5 Turbo、Vicuna-7B v1.5和Self-RAG-7B。

    实验结果表明,大多数大型语言模型难以准确识别未知问题,准确率仅为50%左右。然而,GPT-4是一个显著的例外,它以显著的优势超过了第二好的模型Llama2,领先了25.3%。Llama2在剩余的模型中排名最高,甚至超过了GPT-3.5,尽管后者具有更多参数。但是,GPT-4与其他模型之间仍然存在相当大的性能差距。正在进行的实验旨在调查造成这种差异的原因。

    我们微调的模型在不确定性识别测试中与GPT-4的表现相当,并且在响应上下文中显示出比基线模型提高了25.9%。然而,尽管在未知问题(Accunknown)方面超过了GPT-4,但这种对不确定性的意识增强导致模型的原始问答能力下降。在HotpotQA数据集上进行进一步的微调导致模型在遵循指令方面变得不太可靠,有时会忽略其知识局限性。在测试的模型中,不确定性敏感微调模型排名最高,获得了85.8的F1分数,比GPT-4高出4.2分,比基线高出18.6分。这种令人印象深刻的性能归因于模型在回答问题和承认其缺乏提供答案的必要信息之间的理想平衡。它在未知问题上实现了93.0%的准确率,在所有主流LLMs中最高,同时在已知问题上保持了79.7%的准确率。此外,该模型有效地整合了新信息,而不会影响其现有的知识库,完美地保留了其从认知微调中学到的知识。

    结论

    在这篇论文中,我们探讨了大型语言模型应用中的一个常见问题,即提示中上下文不足会导致生成看似合理但错误的响应,这种现象被称为幻觉。首先,我们的研究表明,大型语言模型通常无法识别何时缺乏足够的信息来准确地响应查询。我们主要将这个问题归因于模型缺乏识别何时提供的上下文不足以回答所提出的查询的能力。其次,在使用没有特定答案的问题进行训练过程中,具有答案的问题的性能下降了。为了解决这些问题,我们提出了一种名为“不确定性敏感训练”的新训练方法。这是一个两阶段的训练框架。在第一阶段,我们引导LLMs拒绝未知问题。在第二阶段,我们通过整合设计的因果指令来恢复问答任务中下降的性能。这种方法显著增强了Llama2-chat-7B模型处理查询的可靠性,减少了幻觉的发生。我们的方法与以前的工作不同,它更直接地关注通过有针对性的微调来改进模型的响应行为,从而提高其在实际场景中的性能。通过开源这个框架和模型,我们相信它将为自动合成指令数据集指明一个新的方向,这个方向不仅关注数据的多样性,还关注训练过程中的幻觉减少。

    参考文献

    • Brown, T., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., Neelakantan, A., et al. (2020). Language models are few-shot learners. arXiv preprint arXiv:2005.14165.
    • Touvron, J., Lachaux, M., Lample, G., Bordes, A., Aziza, S., Jaffre, J., Seddah, D., et al. (2023). Llama 2: Open and efficient foundation models. arXiv preprint arXiv:2307.09288.
    • OpenAI. (2023). GPT-4 technical report. Retrieved from https://openai.com/research/gpt-4.
    • Stelmakh, D., Khot, S., Talmor, A., and Goldberg, Y. (2022). ASQA: A dataset of ambiguous questions and answers. arXiv preprint arXiv:2204.09202.
    • Yang, Z., Yih, W., He, X., Liu, J., and Zhou, M. (2018). HotpotQA: A dataset for diverse, challenging, and informative question answering. arXiv preprint arXiv:1809.09628.
    • Zheng, Z., Yuan, L., Zhang, Y., Li, Y., Zhang, Y., Zhang, B., and Zhou, M. (2024a). Vicuna: An open-source chatbot trained on a massive dataset of human-chat conversations. arXiv preprint arXiv:2306.01575.
    • Zheng, Z., Yuan, L., Zhang, Y., Li, Y., and Zhou, M. (2024b). LLaMA-Factory: A framework for efficient and scalable fine-tuning of large language models. arXiv preprint arXiv:2306.01575.
    • Hu, J., Shen, L., Zhang, Z., He, X., Liu, Z., and Sun, M. (2021). LoRA: Low-rank adaptation of large language models. arXiv preprint arXiv:2106.09685.
    • Zhou, B., Li, Y., and Yang, Y. (2023). Towards trustworthy large language models: A comprehensive survey. arXiv preprint arXiv:2303.12145.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决大型语言模型(LLMs)在处理问题时面临的”幻觉”(hallucinations)问题。幻觉是指LLMs生成的回答要么事实上错误,要么毫无意义。这个问题的一个潜在原因是模型缺乏相关知识或上下文。论文指出,现有的指令数据集设计倾向于鼓励具体的答案,导致LLMs难以承认它们知识的局限性,即难以回答”我不知道”。

    为了改善LLMs识别其知识边界的能力,论文提出了一种新颖的方法,称为”不确定性敏感调整”(uncertainty-sensitive tuning)。这种方法包括两个阶段的训练,旨在不确定性识别和提示敏感激活。第一阶段是引导LLM拒绝未知问题,在第二阶段,通过整合设计的因果性指令,恢复QA任务中降低的性能。通过这种方法,论文的目标是提高模型识别不确定性领域的能力。

    具体来说,论文的主要贡献包括:

    1. 研究了为什么LLMs倾向于忽略数据集中的重要指令,并将此归因于对不确定性的敏感性不足。
    2. 构建了一个新颖的数据集,用于不确定性意识评估,帮助评估模型对知识差距的认识。
    3. 提出了一种新颖的两阶段微调范式,指导模型拒绝没有足够上下文的问题,减少在这种情况下的幻觉概率。

    实验结果表明,该方法显著提高了Llama2-chat-7B模型的性能,特别是在处理涉及知识差距的问题方面,与原始模型相比提高了34.7%。此外,该方法的表现超过了GPT-4,整体性能提高了9.4%。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与大型语言模型(LLMs)幻觉问题和指令数据集训练相关的研究。以下是一些主要的相关研究:

    1. 幻觉与不确定性: 一些研究关注于通过测量和缓解不确定性来识别幻觉。例如,Lu et al. (2023) 提出了一种功能性的不确定性测量方法,并得出不确定性与准确性之间存在相关性的结论。CAD (Shi et al., 2023) 提出了一种对比方法来测量生成知识的不确定性,通过在提供上下文时增加输出概率来限制模型。
    2. LLMs与外部知识: 研究表明,在提示中整合最新的相关知识可以有效地减少与事实冲突的幻觉。例如,Zhou et al. (2023) 提出了多种格式的提示整合附加知识。
    3. 指令数据集训练: 为了提高LLMs的性能,有研究提出了合成指令数据的方法。例如,Self-Instruct (Wang et al., 2023) 提出了使用ChatGPT生成各种指令的方法。
    4. 特定任务的LLMs训练: 一些研究专注于通过提供特定任务的训练数据来提高LLMs的性能。例如,PURR (Chen et al., 2023) 在生成中添加了一个LLM去噪器,用于检测生成中的幻觉。
    5. 自我反思的LLMs: Self-RAG (Asai et al., 2023) 采用了类似的方法,使用LLMs筛选提供的上下文,避免无关信息的干扰。
    6. R-Tuning: R-Tuning (Zhang et al., 2024) 指导LLMs拒绝未知问题,但主要关注拒绝领域外问题。
    7. 其他相关工作: 论文还提到了其他一些研究,如Kang和Hashimoto (2020) 关于改进自然语言生成的研究,以及Lewis等人 (2020) 关于检索增强生成的研究。

    这些研究为理解LLMs在处理未知问题时的局限性提供了背景,并为提出新的训练方法提供了理论基础。论文通过综合这些研究成果,提出了一种新的两阶段训练方法,旨在提高LLMs在面对不确定性时的表现。

    Q: 论文如何解决这个问题?

    A: 论文通过提出一种名为“不确定性敏感调整”(uncertainty-sensitive tuning)的方法来解决LLMs在处理未知问题时的幻觉问题。这个方法包括以下关键步骤:

    1. 问题定义:首先定义研究问题,将任务设置为开放书籍问答任务,模型需要根据任务指令、具体问题和给定上下文生成答案。
    2. 初步探索未知问题:通过在超出提供上下文的问题上对Llama2-Chat-7B模型进行初步微调,发现模型在处理未知问题时存在两个主要弱点:无法准确拒绝未知问题,以及在问答任务中性能下降。
    3. 两阶段训练策略
      • 第一阶段:不确定性识别调整(Uncertainty-Recognition Tuning):将任务视为二元分类问题,训练模型识别是否有足够的上下文信息来回答问题。这个阶段的目的是让模型学会在信息不足时拒绝回答。
      • 第二阶段:提示敏感调整(Prompt-Sensitive Tuning):在第一阶段训练后,模型可能对未知问题过于敏感,导致在回答具体问题时性能下降。这个阶段包括因果性指令合成和指令审查两个子任务,目的是恢复模型在问答任务中的性能,同时提高模型对指令的敏感性。
    4. 因果性指令合成:使用GPT-4生成影响最终回答的控制要求,然后将这些因果性指令随机插入原始问答指令中,以提高模型对指令的敏感性。
    5. 指令审查合成:使用模型自身来验证所有指令是否完成,通过自定义提示递归地重新生成答案,直到得到完美答案。
    6. 实验验证:通过构建新的指令微调数据集和评估数据集,对提出的方法进行实验验证。实验结果表明,不确定性敏感调整方法显著提高了Llama2-chat-7B模型在处理涉及知识差距问题时的性能,并在整体性能上超过了GPT-4。

    通过这种方法,论文旨在提高模型识别不确定性领域的能力,并在实际应用场景中提高其性能。同时,论文还将框架和模型开源,以促进自动合成指令数据集的新方向,这不仅关注数据的多样性,还减少了训练过程中的幻觉。

    Q: 论文做了哪些实验?

    A: 论文中进行了一系列的实验来评估和验证所提出的不确定性敏感调整方法。以下是实验的主要步骤和内容:

    1. 数据集构建
      • 构建了两个新的指令微调数据集,分别用于二元不确定性识别调整和提示敏感微调。
      • 利用ASQA数据集生成未知问题,通过将问题与不完全相关的上下文配对,引入处理不确定性的挑战。
      • 基于HotpotQA数据集,生成了包含额外因果指令的提示敏感微调数据集。
    2. 实验设置
      • 在多个主流大型语言模型(LLMs)上进行实验,包括Llama2-Chat-7B、GPT-4 Turbo、GPT-3.5 Turbo、Vicuna-7B v1.5和Self-RAG-7B。
      • 使用Lora方法在单个GPU上进行微调,设置特定的训练参数。
    3. 评估指标
      • 使用Accknown表示模型在具体问题上回答的准确性。
      • 使用Accunknown表示模型在未知问题上回答的准确性。
    4. 结果
      • 展示了不同模型在QA不确定性识别评估和后缀不确定性识别评估中的表现。
      • 通过实验发现,大多数LLMs在准确识别未知问题上存在困难,但GPT-4在这些任务中表现突出。
    5. 消融研究
      • 为了量化不确定性识别调整、HotpotQA调整和提示敏感调整的效果,构建了三个额外的变体进行消融实验。
      • 分析了模型在不同训练数据集下的表现,探讨了模型在拒绝未知问题时性能下降的原因。
    6. 性能提升分析
      • 通过不确定性识别调整,模型在未知问题上的回答准确性显著提高。
      • 提示敏感调整有助于恢复模型在其他问题上的性能,解决了过调优导致的提示敏感性降低问题。
    7. 结论
      • 实验结果表明,不确定性敏感调整方法显著提高了Llama2-chat-7B模型处理查询的可靠性,减少了幻觉的发生。

    这些实验不仅验证了所提出方法的有效性,还展示了其在不同模型和数据集上的应用潜力。通过开源框架和模型,论文鼓励进一步的研究和开发,以提高LLMs在实际应用中的性能和可靠性。

    Q: 有什么可以进一步探索的点?

    A: 论文在最后部分提出了两个主要的局限性,并指出了未来可以进一步探索的方向:

    1. 长尾问题(Long-tail Problem)
      • 当使用含有有限数量未知问题的新型数据集进行调整时,大型语言模型(LLMs)可能会遇到长尾问题。这意味着模型可能在处理大量不常见的问题类型时表现不佳。
      • 为了解决这个问题,未来的工作可以探索更针对性的微调策略,以适应特定类型的数据集。
    2. 预训练阶段的参数知识(Parametric Knowledge)
      • 论文指出,他们没有深入探讨或分析Llama2在初始预训练阶段学到的参数知识。微调数据集可能与Llama2的预训练数据重叠。
      • 未来的工作可以探索现有方法,通过监测内部参数来测量模型不确定性(例如,Lu et al., 2023的工作),从而深入了解模型的知识差距和长尾弱点。

    此外,以下是一些其他可能的研究方向:

    • 模型不确定性量化:研究如何更精确地量化模型在不同输入上的不确定性,以便更好地理解其知识限制。
    • 针对性微调策略:开发新的微调方法,使微调后的LLM能够更好地处理特定类型的查询或任务。
    • 减少数据集偏差:研究如何构建或选择数据集,以减少潜在的偏差,并提高模型的泛化能力。
    • 提高模型的自我认知能力:探索如何让模型更好地理解自己的知识范围,以及在何时应该回答“我不知道”。
    • 多模态学习:考虑将视觉、声音等多种模态的数据整合到训练中,以提高模型对复杂问题的理解能力。
    • 模型鲁棒性:研究如何提高模型在面对错误信息或故意误导时的鲁棒性。
    • 实时应用和反馈循环:探索模型在实时应用中的性能,并根据用户反馈进行动态调整。
    • 伦理和可解释性:研究如何在提高性能的同时,确保模型的决策过程是透明和可解释的,以及符合伦理标准。

    这些方向可以帮助研究者们进一步提高LLMs的性能,增强其在各种复杂环境中的可靠性和实用性。

    Q: 总结一下论文的主要内容

    A: 这篇论文的核心内容是提出并验证了一种名为“不确定性敏感调整”(uncertainty-sensitive tuning)的方法,旨在改善大型语言模型(LLMs)在面对未知问题时的应对能力,减少幻觉现象。以下是论文的主要内容概述:

    1. 问题识别:论文首先指出LLMs在处理问题时,如果缺乏相关知识或上下文,可能会产生幻觉,即生成事实错误或无意义的回答。
    2. 现有挑战:现有的指令数据集设计倾向于鼓励具体答案,导致LLMs难以在知识不足时承认“我不知道”。
    3. 方法提出:为了解决这一问题,论文提出了不确定性敏感调整方法,这是一个包含两个阶段训练的框架:
      • 第一阶段(不确定性识别调整):引导LLM拒绝未知问题,即当问题超出其知识范围时。
      • 第二阶段(提示敏感调整):恢复模型在问答任务中的性能,通过整合设计的因果性指令。
    4. 实验设计:论文构建了新的数据集,进行了实验验证,并与其他主流LLMs进行了比较。
    5. 实验结果:实验结果显示,不确定性敏感调整方法显著提高了Llama2-chat-7B模型的性能,特别是在处理涉及知识差距的问题方面,与原始模型相比提高了34.7%,并且整体性能超过了GPT-4。
    6. 贡献总结
      • 研究了LLMs忽略重要指令的原因。
      • 构建了用于评估模型对知识差距认识的新数据集。
      • 提出了新的两阶段微调范式,减少了幻觉发生的概率。
    7. 未来工作:论文提出了未来研究的方向,包括解决长尾问题和深入分析模型在预训练阶段学到的参数知识。
    8. 伦理声明:论文指出,虽然使用了公共数据集构建基准和数据集,可能存在固有偏见,但所采用的技术没有引入超出数据呈现的额外偏见。

    通过这些研究和方法,论文为提高LLMs的可靠性和减少幻觉提供了有价值的见解,并为未来的研究和应用奠定了基础。


  • 琉球国:东亚海上丝绸之路的璀璨明珠

    琉球国,又称琉球王国,是琉球历史上第一尚氏王朝和第二尚氏王朝两个朝代的统称,也包括早期三山时代的山南、中山、山北三个王国(作为其共同的对外自称)。琉球国的历史从1429年开始,持续到1879年被日本兼并,经历了450年的风风雨雨。本文将带您走进这个位于台湾群岛和日本列岛之间的海上王国,探索其历史、地理、政治、经济和文化。

    琉球国的起源与统一

    天孙王朝与舜天王朝

    琉球国的历史可以追溯到传说中的天孙王朝和舜天王朝。《中山世鉴》记载,天神阿摩美久下凡,由天帝赐予草木土石,做成岛屿。之后天帝将其子女赐予阿摩美久,二人成为琉球的始祖。天孙王朝共有二十五位国王,传至第二十五代王思金松兼王为重臣利勇所杀,王朝灭亡。多数学者认为这只是传说。

    根据《中山世鉴》的记载,天孙王朝覆亡后,浦添按司舜天统一全国,建立舜天王朝。舜天王朝延续了三代、七十年,被认为是为夸耀琉球王室的血统而编造的。

    三山时代与统一

    14世纪,琉球出现了南山、中山、北山三国,分别位于冲绳本岛的南部、中部和北部。中山最强,北山最弱。1372年,明太祖朱元璋派杨载向琉球三国发布诏谕,中山国国王察度派弟泰期出使明朝。此后,三国开始向明政府朝贡,成为明王朝的藩属国。

    1429年,佐敷按司尚巴志统一三山,形成统一的琉球国,以首里城为王城,史称“第一尚氏王朝”。琉球国以其特殊的地理位置,成为东北亚和东南亚贸易的中转站,贸易发达,号称“万国津梁”。

    琉球国的地理与政治

    地理位置与辖域

    琉球国位于台灣和九州西南之间的琉球群岛上,总面积大约为3600平方公里。最大的岛屿是沖繩本岛,面积约1207.08平方公里。首里城位于今沖繩縣那霸市的东郊,是历代琉球国王及王族居住和处理政务的地方。

    政治架构

    琉球国采用君主制,国王之下为王族、国相、寨社等各级官员。国王去世而世子还没有得到古代中国中央政府的正式任命时代行国政時稱為“攝政”。琉球国的立法机构为首里王府和三司官。

    琉球国的对外关系

    明清时期的藩属国

    琉球国曾经向明、清两代朝贡,成为其藩属国。1609年,日本薩摩藩入侵琉球国,琉球国被迫向萨摩藩、江户幕府朝贡。尽管如此,琉球仍保持与明清的朝贡关系,这使得琉球成为中日贸易的重要中介。

    与东南亚及其他国家的贸易

    琉球国不仅与中国、日本、朝鲜保持密切的贸易关系,还与东南亚、印度、阿拉伯半岛等地进行贸易。琉球从这些地方进口香料、锡、糖、象牙、乳香等,出口日本的白银、漆器、刀剑、屏风和扇子等。

    琉球国的经济与文化

    转口贸易的繁荣

    琉球国以其特殊的地理位置,成为东北亚和东南亚贸易的中转站,被誉为“万国津梁”。琉球的船只往来那霸与福州之间,还北上日本、朝鲜,南下安南、吕宋、暹罗、亚齐、爪哇、滿剌加等地,从转口贸易中获得巨大利润。

    文化交流与融合

    琉球国受到中国、日本两种文化的影响,形成了独特的文化。琉球的文字主要使用汉字,官方文书和家谱均使用汉字记录。此外,琉球还创造了自有的文字系统。

    琉球的音乐、舞蹈和工艺也深受中国和日本的影响。琉球宫廷音乐、舞蹈和工艺品如红型染织、琉球漆器、壶屋烧陶瓷等,都体现了中日文化的融合。

    琉球国的覆亡

    1871年,日本在全国实施废藩置县,琉球国被当作令制国编入鹿儿岛县。1872年,琉球国被改设为琉球藩。1879年3月11日,日本正式兼并琉球,废除琉球藩,设立冲绳县。琉球国至此灭亡,成为日本的一部分。

    结语

    琉球国作为东亚海上丝绸之路的重要节点,曾经在中外贸易中扮演了重要角色。其独特的地理位置、繁荣的转口贸易和丰富的文化遗产,使其在东亚历史上留下了浓墨重彩的一笔。尽管琉球国已不复存在,但其历史和文化仍在影响着今天的冲绳地区。

    参考文献

    1. 《中山世鉴》
    2. 《中山世谱》
    3. 《球阳》
    4. 《图说琉球王国》,高良倉吉、田名真之编,河出书房新社,1993年出版
    5. 《沖繩門中事典》,宮里朝光監修,那霸出版社,2001年出版
  • 测试LLMs长上下文推理极限:BABILong基准简介

    近年来,大型语言模型(LLMs)的输入上下文大小显著增加。然而,现有的评估方法并未与时俱进,未能全面评估模型处理长上下文的效率。为弥补这一差距,我们引入了BABILong基准,旨在测试语言模型在处理分布在超长文档中的事实推理能力。BABILong包括一套多样化的20个推理任务,如事实链、简单归纳、演绎、计数和处理列表/集合。这些任务本身就具有挑战性,当所需的事实分散在长自然文本中时,更是难上加难。我们的评估显示,流行的LLMs只能有效利用10-20%的上下文,其性能随着推理复杂性的增加急剧下降。

    引言

    如今,LLMs和神经网络架构不断发展,尤其是在处理更长上下文方面取得了显著进步(OpenAI, 2023;Reid et al., 2024;Anthropic, 2024)。这些模型根据丰富的上下文信息生成文本的能力非常重要。例如,较长的上下文为模型提供了更多信息,以便其生成更准确、上下文相关且最新的响应。此外,长上下文能力可以通过提供更多的上下文示例、指令或强化学习中的示例轨迹来增强上下文学习(Chevalier et al., 2023;Agarwal et al., 2024;Lee et al., 2024)。

    尽管这些模型能力有所进步,用于评估它们的基准测试却未能跟上。例如,目前的基准测试,如Longbench(Bai et al., 2023)和L-Eval(An et al., 2023)仅扩展到40,000个标记,而模型则能够处理数十万甚至数百万个标记。

    BABILong基准概述

    为了测试LLMs在处理极长文档中的推理能力,我们介绍了BABILong基准。BABILong包括一组多样化的20个推理任务,如事实链、简单归纳、演绎、计数和处理列表/集合,这些任务是任何旨在与人类对话的系统的前提(Weston et al., 2016)。我们使用PG19语料库中的书籍作为长自然文档的来源(Rae et al., 2020)。通过这种方式,BABILong可以构建几乎任意长度的任务,以适应新、更强大的模型的评估,并以可扩展和可控的方式进行。我们提供了预定义长度的集合,最长可达100万个标记,并在样本上评估模型,长度可达1100万个标记。

    主要贡献

    1. 我们引入了BABILong,一个新的可扩展生成多任务基准,用于评估NLP模型在处理任意长文档中的性能。
    2. 我们评估了20多个近期长输入语言模型,涵盖各种大小、架构和上下文扩展方法。
    3. 我们发现流行的LLMs只能有效利用10-20%的上下文,且性能随着推理复杂性的增加急剧下降。检索增强生成方法未能表现出良好成绩,但针对特定任务的微调有所帮助。
    4. 我们展示了使用循环记忆Transformer在长达1100万个标记的输入文本上成功进行域内单事实问答,设定了单个模型处理序列长度的新纪录,扩展了神经网络的已知能力。

    评估结果

    有效上下文大小的评价

    关于长上下文模型性能的一个重要问题是它们如何有效地利用输入上下文。理想情况下,模型应保持一致的高性能,而不受输入大小的影响。我们的基准测试表明,目前的LLMs并未有效利用其全部上下文。仅有15个测试模型中的24个能够在基线设置下正确回答85%以上的问题。

    检索增强生成方法的效果

    检索增强生成(RAG)是一种流行的语言模型解决方案,用于处理大量文本。我们实验了两种选项:按512个标记的块进行检索(RAG-C)和按句子进行检索(RAG-S)。实验结果表明,使用句子块的检索性能优于512标记段。

    微调模型在BABILong上的表现

    我们对GPT-3.5-Turbo、Mistral-7B-Instruct-v0.2、RMT(使用GPT-2(137M)为骨干)和Mamba(130M)模型进行了微调实验。微调结果显示,RMT在处理长上下文时表现出色,能够处理长度达1100万个标记的序列。

    结论

    本文介绍了BABILong,一个多样且可扩展的基准,旨在弥补现有基准在评估LLMs处理长上下文任务能力方面的不足。我们的实验表明,BABILong提供了一个更具代表性的长上下文推理评估框架。我们的研究结果揭示了流行的开源LLMs及GPT-4和RAG在有效长上下文利用方面的局限性。微调实验显示,即使是相对较小的模型如RMT(使用GPT-2(137M))和Mamba(130M)也能解决BABILong任务。

    参考文献

    • OpenAI. (2023).
    • Reid et al. (2024).
    • Anthropic. (2024).
    • Chevalier et al. (2023).
    • Agarwal et al. (2024).
    • Lee et al. (2024).
    • Bai et al. (2023).
    • An et al. (2023).
    • Rae et al. (2020).
    • Weston et al. (2016).

    如需更多详细信息和数据代码,请访问BABILong GitHub


    Q: 这篇论文试图解决什么问题?

    A: 这篇论文《BABILong: Testing the Limits of LLMs with Long Context Reasoning-in-a-Haystack》试图解决的问题是,现有的大型语言模型(LLMs)在处理长文本上下文方面的能力虽然在不断增强,但目前的评估方法并没有跟上这一发展步伐,无法全面评估这些模型处理长上下文的效率。具体来说,论文指出以下几个问题:

    1. 上下文大小的增加:近年来,LLMs能够处理的输入上下文大小显著增加,但现有的评估基准(benchmarks)并没有相应扩展,仍然只评估到40,000个token左右,而模型能力已经达到数十万甚至更多token。
    2. 评估方法的不足:当前的评估方法没有充分考虑到模型在处理分散在长文本中的事实时的推理能力,例如事实链(fact chaining)、简单归纳(simple induction)、演绎(deduction)、计数(counting)以及处理列表/集合(handling lists/sets)等。
    3. 现有基准的局限性:现有的一些基准测试,如Longbench和L-Eval,虽然在一定程度上评估了模型的长上下文处理能力,但它们在评估模型在极端长文本中的推理能力方面存在局限。

    为了解决这些问题,论文引入了一个新的基准测试BABILong,旨在测试语言模型在极长文档中跨事实推理的能力。BABILong包含了20个不同的推理任务,并且可以扩展到任意长度,以支持评估新一代具有增强能力的模型。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与长上下文处理和评估大型语言模型(LLMs)相关的研究工作。以下是一些主要的相关研究:

    1. Long Range Arena (LRA): 由Tay等人于2021年提出,是长上下文建模的先驱基准之一,包含从1到16千个token的不同长度的任务。
    2. LongBench: 由Bai等人于2023年提出,包含6种真实和合成问题,涵盖摘要、多文档问答、代码完成等,样本平均长度为6k和13k token,最大长度为40k token。
    3. Scrolls 和 ZeroSCROLLS: 由Shaham等人于2022年和2023年提出,包含问答、分类、摘要任务,平均长度从1.7k到49.3k token。
    4. L-Eval: 由An等人于2023年提出,结合了20个较小的长序列数据集,并添加了4个新注释任务,涵盖多种问题风格和领域。
    5. InfinityBench: 由Zhang等人于2024年提出,包含问答和摘要任务,最大样本长度为636K token。
    6. RULER: 由Hsieh等人于2024年提出,是一个长上下文基准,采用“针在 haystack 中”的概念,引入了多跳追踪和聚合等新任务类别。
    7. MMLU: Hendrycks等人于2020年提出,是一个多任务语言理解基准,衡量LLMs在各种知识领域的表现。
    8. Recurrent Memory Transformer (RMT): 由Bulatov等人于2022年和2024年提出,是一种通过循环记忆机制处理长上下文的方法。
    9. Mamba: 由Gu和Dao于2023年提出,是一种线性时间序列建模方法,使用选择性状态空间。
    10. GPT-4: OpenAI于2023年提出的大型语言模型,具有处理长上下文的能力。
    11. Llama-3: AI@Meta于2024年提出的模型,具有长上下文处理能力。
    12. AutoCompressor: Chevalier等人于2023年提出,结合了RMT方法和从外部语料库检索。

    这些研究工作为评估和提高LLMs在长上下文处理方面的能力提供了不同的方法和基准。论文通过与这些相关工作的比较,展示了BABILong基准在评估长上下文推理方面的先进性和挑战性。

    Q: 论文如何解决这个问题?

    A: 论文通过以下几个关键步骤来解决现有评估方法无法全面测试大型语言模型(LLMs)处理长上下文的问题:

    1. 引入BABILong基准:论文提出了一个新的基准测试BABILong,它专门设计用来测试语言模型在极长文档中跨事实推理的能力。
    2. 多样化的推理任务:BABILong包含了20个不同的推理任务,这些任务包括事实链、简单归纳、演绎、计数和处理列表/集合等,这些任务都是根据人类与机器对话所需的基本推理技能设计的。
    3. 使用长自然文档:BABILong使用PG19语料库中的书籍作为长自然文档的来源,这些文档的长度和复杂性为评估模型提供了挑战。
    4. 可扩展性:BABILong允许构建几乎任意长度的任务,以适应评估新的、更强大的模型,提供了预定义的长度集,并且可以扩展到1百万token的长度。
    5. 评估现有模型:论文评估了多个流行的LLMs,包括不同大小、架构和上下文扩展方法的模型,以测试它们在BABILong上的性能。
    6. 性能分析:通过分析模型在不同任务和上下文长度下的表现,论文揭示了现有模型在利用上下文信息时的局限性,发现它们通常只有效利用了10-20%的上下文。
    7. 探索替代方法:论文探讨了除了在上下文中推理之外的其他方法,例如检索增强生成(Retrieval-Augmented Generation)方法和循环记忆变换器(Recurrent Memory Transformers, RMT),并评估了它们在BABILong任务上的表现。
    8. 提供资源:论文提供了BABILong基准数据和评估代码,以便研究社区可以访问和使用这些资源来评估自己的模型。

    通过这些步骤,论文不仅提出了一个全面的评估框架,还通过实验结果揭示了现有模型在长上下文处理方面的不足,并为未来的模型开发和评估提供了指导。

    Q: 论文做了哪些实验?

    A: 论文中进行了一系列实验来评估和比较不同大型语言模型(LLMs)在处理长上下文方面的能力。以下是论文中提到的主要实验:

    1. BABILong基准测试:作者创建了BABILong基准,包含20个推理任务,旨在测试语言模型在极长文档中跨事实推理的能力。
    2. 模型评估:作者评估了20多个最近的长输入语言模型,这些模型具有不同的大小、架构和上下文扩展方法,包括流行的LLMs和一些为长上下文处理特别设计的方法。
    3. 有效上下文大小评估:通过问答任务(QA1-QA3),研究了LLMs如何利用可用上下文。实验结果表明,当前的LLMs并没有有效地使用其全部上下文。
    4. 检索增强生成(RAG)方法评估:作者测试了RAG方法在BABILong上的表现,发现它在处理长上下文任务时表现不佳。
    5. 模型微调(Fine-tuning):对GPT-3.5-Turbo、Mistral-7B-Instruct-v0.2、RMT(带有GPT-2(137M)后端)和Mamba(130M)模型进行了微调实验,以评估微调对模型性能的影响。
    6. 不同上下文长度的性能比较:作者比较了模型在不同上下文长度(从0K到10M tokens)的性能,以分析模型在处理不同长度上下文时的效率。
    7. 与其他基准的比较:作者将BABILong的结果与其他基准(如MMLU和RULER)进行了比较,以评估BABILong在捕捉模型行为差异方面的能力。
    8. RMT性能分析:对RMT模型进行了详细的性能分析,包括在不同任务上的表现和在超出训练大小的长序列上的性能。
    9. RAG与微调模型的比较:作者比较了RAG方法与微调模型在BABILong任务上的表现,发现微调可以显著提高模型在长上下文任务中的性能。
    10. 不同事实位置的性能分析:作者分析了在QA1任务中,当所有事实位于输入查询的同一位置时,模型的性能如何变化。

    这些实验提供了对当前LLMs在长上下文处理能力方面的深入理解,并揭示了它们在这一领域的局限性。通过这些实验,作者能够评估和比较不同模型和方法在处理长文本时的效率和准确性。

    Q: 有什么可以进一步探索的点?

    A: 论文《BABILong: Testing the Limits of LLMs with Long Context Reasoning-in-a-Haystack》提出了对大型语言模型(LLMs)在长上下文推理方面的评估方法,并指出了现有模型的一些局限性。以下是一些可以进一步探索的点:

    1. 改进上下文利用效率:研究如何提高模型对长上下文的有效利用率,目前模型仅利用了10-20%的上下文信息。
    2. 优化检索增强生成(RAG)方法:探索如何改进RAG方法,使其更好地处理长上下文和多跳推理任务。
    3. 扩展BABILong基准:考虑将BABILong应用于其他语言,或者增加更多类型的推理任务,以测试模型在更广泛场景下的表现。
    4. 微调策略的改进:研究不同的微调策略,以提高模型在特定任务上的性能,同时保持对其他任务的泛化能力。
    5. 模型架构的创新:开发新的模型架构,特别是那些能够更有效地处理长上下文信息的架构。
    6. 存储和计算效率的平衡:研究如何在保持模型性能的同时,优化存储和计算资源的使用,特别是在处理极长序列时。
    7. 减少数据泄露:探索新的方法来生成基准数据,以确保训练和测试数据之间的隔离,避免数据泄露问题。
    8. 提高模型的可解释性:研究如何提高模型在处理长上下文任务时的决策过程的透明度和可解释性。
    9. 跨领域应用:探索BABILong基准在不同领域(如医疗、法律、金融等)的应用,以及如何针对这些领域定制或改进任务。
    10. 模型鲁棒性研究:研究模型在面对错误信息、误导性事实或噪声数据时的鲁棒性,并探索提高鲁棒性的方法。
    11. 实时应用的可行性:考虑模型在实时应用场景中的可行性,例如在对话系统或在线问答环境中处理长上下文。
    12. 伦理和社会影响:研究LLMs在处理长上下文时可能带来的伦理和社会影响,例如偏见、隐私和信息安全问题。

    这些探索点可以帮助研究者更深入地理解LLMs在长上下文处理方面的能力,并推动这一领域的进一步发展。

    Q: 总结一下论文的主要内容

    A: 论文《BABILong: Testing the Limits of LLMs with Long Context Reasoning-in-a-Haystack》主要内容包括以下几个方面:

    1. 问题识别:指出了现有大型语言模型(LLMs)在处理长上下文方面的能力虽有显著提升,但现有的评估方法并未跟上这一进步,无法全面测试模型在长文本上下文中的推理能力。
    2. BABILong基准介绍:为了填补这一空白,作者提出了BABILong基准测试,这是一个设计用来评估语言模型在极长文档中进行跨事实推理能力的工具。
    3. 任务设计:BABILong包含20个不同的推理任务,覆盖了事实链、简单归纳、演绎、计数和处理列表/集合等多种推理类型。
    4. 评估方法:论文描述了如何使用长自然文档和背景文本来构造任务,并通过增加无关文本的长度来调整任务难度,以此来评估模型在不同上下文长度下的性能。
    5. 实验结果:通过一系列实验,作者发现流行的LLMs在利用上下文信息方面存在局限性,通常只有效利用了10-20%的上下文,并且随着任务复杂性的增加,性能急剧下降。
    6. 替代方法评估:论文还评估了检索增强生成(RAG)方法和循环记忆变换器(RMT)等上下文扩展方法在BABILong任务上的表现。
    7. 性能分析:作者对不同模型在BABILong上的表现进行了深入分析,揭示了它们在长上下文处理能力方面的不足,并与其他基准测试结果进行了比较。
    8. 资源提供:论文提供了BABILong基准数据和评估代码的访问,以便研究社区可以使用这些资源来评估自己的模型。
    9. 结论与展望:作者总结了BABILong基准的主要贡献,并指出了现有模型在长上下文处理方面的局限性,同时对未来的研究方向提出了建议。
    10. 相关工作:论文还讨论了与长上下文处理相关的其他研究工作,包括现有的基准测试和数据集,以及它们与BABILong的比较。

    总的来说,这篇论文通过提出BABILong基准测试,为评估和推动LLMs在长上下文推理方面的发展提供了一个有力的工具和评估框架。

  • 电商场景下,AI 真的懂你的购物意图吗?

    近年来,人工智能(AI)技术飞速发展,大型语言模型(LLM)在各个领域展现出惊人的能力。在电商领域,LLM 能够帮助我们进行商品推荐、回答用户问题,甚至理解用户的购物意图。但一个关键问题是:LLM 真的能够理解用户的购物意图吗?它们是否能够像人类一样,从用户的行为中推断出背后的深层含义?

    为了回答这个问题,香港科技大学的研究人员开发了一个名为 INTENTIONQA 的基准测试集,专门用于评估 LLM 在电商场景下理解用户购物意图的能力。INTENTIONQA 包含 4,360 道精心设计的问答题,涵盖了三个难度级别,并通过自动化流程确保其可扩展性,使其能够应用于大型电商平台。

    INTENTIONQA:双任务多选问答

    INTENTIONQA 基准测试集包含两个任务:意图理解意图利用。这两个任务分别评估 LLM 理解和利用用户购物意图的能力。

    意图理解 任务要求 LLM 根据用户购买的商品推断出用户的购物意图。例如,用户购买了耳机和耳垫,LLM 需要从多个选项中选择最有可能的购物意图,例如“为了获得更舒适的佩戴体验”或“为了增强音质”。

    意图利用 任务则要求 LLM 根据用户意图和已购买的商品,预测用户最有可能购买的额外商品。例如,用户购买了耳机,并且意图是“为了获得更舒适的佩戴体验”,LLM 需要从多个选项中选择最有可能的额外商品,例如“头带垫”或“耳罩”。

    构建 INTENTIONQA:自动化流程和人工评估

    INTENTIONQA 的构建过程主要依赖于自动化流程,并结合人工评估来确保其质量。

    自动化流程 利用了现有的意图知识库 FolkScope 和事件知识图 ASER。FolkScope 收集了用户购买商品的行为和对应的购物意图,而 ASER 则包含了大量常见的事件和事件之间的关系。

    研究人员首先将 FolkScope 中的意图和商品映射到 ASER 中的事件节点,并计算它们之间的相似度。然后,根据相似度,自动生成问答题,并为每个问题提供三个干扰选项。

    人工评估 则用于验证自动化流程的有效性和 INTENTIONQA 的质量。研究人员招募了人工标注员,对生成的问答题进行评估,包括判断答案的正确性和干扰选项的质量。

    实验结果:LLM 的挑战和机遇

    研究人员对 19 个不同类型的 LLM 进行了评估,包括预训练模型、注入常识知识的模型、开源模型以及使用 API 的模型。结果表明,LLM 在 INTENTIONQA 上取得了比随机猜测更好的成绩,但与人类的表现相比仍有较大差距。

    实验结果表明:

    • 注入常识知识有助于提升 LLM 的意图理解能力。 注入常识知识的模型在 INTENTIONQA 上的表现与规模更大的模型相当,这表明常识知识对于电商场景下的意图理解至关重要。
    • 意图利用任务比意图理解任务更具挑战性。 几乎所有在意图理解任务上表现优于随机猜测的模型,在意图利用任务上的表现都有显著下降。这可能是因为意图利用任务需要 LLM 理解所有候选商品,并进行更复杂的推理。
    • 当前 LLM 的意图理解能力仍有待提升。 尽管 LLM 在 INTENTIONQA 上取得了比随机猜测更好的成绩,但与人类的表现相比仍有较大差距。

    研究人员还发现, 通过在外部资源上进行微调,可以显著提升 LLM 的意图理解能力。例如,在包含商品图片的意图知识库 MIND 上进行微调,可以使 LLM 在意图理解任务上的表现接近 GPT-4。

    未来展望:意图感知的电商服务

    INTENTIONQA 的出现为评估 LLM 在电商场景下理解用户意图的能力提供了一个新的基准测试集。研究结果表明,LLM 在意图理解方面仍面临着挑战,但同时,也展现出了巨大的潜力。

    未来,研究人员将继续探索如何提升 LLM 的意图理解能力,并将其应用于电商服务中,例如:

    • 意图感知的商品推荐: 根据用户的意图,推荐更符合用户需求的商品。
    • 意图感知的搜索引擎: 理解用户的搜索意图,提供更精准的搜索结果。
    • 意图感知的客服机器人: 理解用户的意图,提供更有效的客服服务。

    随着 LLM 技术的不断发展,我们相信,意图感知的电商服务将成为未来电商发展的重要方向。

    参考文献

    • Ding, W., Wang, W., Kwok, S. H. D., Liu, M., Fang, T., Bai, J., … & Song, Y. (2024). INTENTIONQA: A Benchmark for Evaluating Purchase Intention Comprehension Abilities of Language Models in E-commerce. arXiv preprint arXiv:2406.10173.
    • Yu, J., Zhang, Y., Tan, C., & Song, Y. (2023). Folkscope: Distilling Purchase Intentions from Large Language Models for E-commerce. arXiv preprint arXiv:2303.10677.
    • Zhang, Y., Wang, W., Song, Y., & Kwok, S. H. D. (2022a). ASER: A Large-Scale Eventuality Knowledge Graph. arXiv preprint arXiv:2206.03901.
    • Zhou, Y., Zhang, Y., Yu, J., & Song, Y. (2024). Towards Human-Centric Purchase Intention Comprehension: A Critical Analysis of Large Language Models. arXiv preprint arXiv:2403.06981.
    • Xu, Y., Zhang, Y., Yu, J., & Song, Y. (2024). MIND: A Multimodal Intention Knowledge Base for E-commerce. arXiv preprint arXiv:2404.05261.
    • Xu, Y., Wang, W., Song, Y., & Kwok, S. H. D. (2021). Towards Automatic Threshold Tuning for Knowledge Base Completion. arXiv preprint arXiv:2104.07632.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文提出了一个名为INTENTIONQA的评估基准,旨在解决语言模型(LMs)在电子商务场景中理解购买意图的能力问题。具体来说,论文指出以往的方法在从语言模型中提取购买意图时,往往无法生成有意义且以用户为中心的意图,这些意图在现实世界的电子商务环境中具有应用价值。因此,论文的主要贡献是:

    1. 提出问题:分析语言模型是否能够理解客户的购买意图,以及它们在执行此类任务时的有效性。
    2. 任务分解:将购买意图理解分解为两个关键方面:意图理解和意图利用(IntentUnderstand和IntentUtilize)。
    3. 数据集构建:创建了一个包含4,360个问题的多选问答(MCQA)数据集,涵盖不同难度级别,用于细致评估语言模型的购买意图理解能力。
    4. 自动化流程:设计了一个自动化流程,通过转换FolkScope中的人类注释意图来自动合成问答对,以确保在大型电子商务平台上的可扩展性。
    5. 人类评估与实验:通过人类评估验证了基准的高质量和低误报率,并在19种不同大小和方法的语言模型上进行了广泛的实验,结果显示现有语言模型在某些场景中仍存在挑战,与人类表现有较大差距。

    总的来说,论文的目标是通过INTENTIONQA基准,推动语言模型在电子商务服务中更好地理解和利用购买意图,从而提升产品推荐等相关下游任务的效果。

    Q: 有哪些相关研究?

    A: 在这篇论文中,提到了以下几类相关研究:

    1. 使用大型语言模型理解意图:研究了在不同领域中使用语言模型来理解意图,例如平滑聊天对话、增强网络搜索等。在电子商务领域,理解客户的购买意图对于改进各种下游任务(如自动化客服支持、推荐系统、产品问答回答等)非常有益。
    2. 利用大型语言模型进行意图发现:Yu等人(2023, 2024)提出利用大型语言模型(如OPT)的生成能力和常识推理能力,从共同购买记录中提取购买意图。但是,Zhou等人(2024)指出,这些模型在生成有意义的用户中心意图方面存在困难。
    3. 评估(大型)语言模型的能力:自从(大型)语言模型出现以来,已经有研究探索了它们在不同领域(如时间推理、因果推理、常识推理等)的能力,并通过各种基准测试来评估它们在不同参数和提示方法下的表现。
    4. 电子商务中的评估基准:现有的电子商务评估基准主要集中在产品和会话理解上,但忽视了意图理解这一重要方面。
    5. 基于FolkScope的意图知识提取:FolkScope是一个从预训练的大型语言模型中提取知识的意图知识库,它将客户的共同购买行为与购买意图相关联。
    6. 基于ASER的知识图谱:ASER是一个大规模的事件知识图谱,涵盖了数十亿常见的事件性知识,用于增强购买行为的上下文信息。
    7. 基于ConceptNet的意图类型分析:ConceptNet是一个多语言的通用知识图谱,用于分析不同常识关系下的意图理解。
    8. 基于MIND的知识转移:MIND是一个从LLaVA模型中提取的多模态意图知识库,用于通过微调来提高模型的意图理解能力。

    这些研究为构建INTENTIONQA基准提供了理论和技术基础,并帮助评估和改进语言模型在电子商务环境中的购买意图理解能力。

    Q: 论文如何解决这个问题?

    A: 论文通过以下几个关键步骤来解决语言模型在电子商务中理解购买意图的问题:

    1. 定义任务:明确了两个与购买意图理解相关的任务,即IntentUnderstand(意图理解)和IntentUtilize(意图利用)。
    2. 数据收集与预处理:从FolkScope获取共同购买产品和意图断言作为源数据,并进行过滤,保留具有高可信度和典型性的意图断言。
    3. 上下文增强:使用ASER(一个大规模事件知识图谱)来检索与购买事件相关的附加上下文,增强语义覆盖范围。
    4. 相似度计算:定义了基于上下文嵌入的购买事件和意图之间的相似度计算方法。
    5. 负项(Distractors)采样:根据相似度分数,为每个任务设计了特定的负项采样策略,以生成高质量的问题和答案对。
    6. 自动问题生成:通过自动化流程将意图断言转换为问题和正确答案对,每个正确答案伴随三个负项。
    7. 难度分级:根据产品间的相似度分数,将问题分为不同难度级别,以实现细粒度的评估。
    8. 人类评估:进行人类评估来验证自动QA对构建流程的有效性和QA对的质量。
    9. 模型评估:在19种不同大小和方法的语言模型上进行广泛的实验,评估它们在购买意图理解任务上的表现。
    10. 性能分析:对模型在不同意图类型上的表现进行深入分析,并进行错误分析以了解模型失败的原因。
    11. 知识转移:探索通过微调其他来源的意图知识来提高模型性能的可能性。
    12. 公开资源:论文承诺将代码和数据公开,以促进社区进一步研究和开发。

    通过这些步骤,论文不仅提出了一个系统的解决方案来评估和提高语言模型在电子商务中的购买意图理解能力,而且还通过实验和分析揭示了现有模型的局限性,并为未来的研究提供了方向。

    Q: 论文做了哪些实验?

    A: 论文中进行了以下实验来评估和分析语言模型在理解购买意图方面的能力:

    1. 模型选择与基线设置:选择了多种预训练语言模型(PTLMs),注入常识知识的语言模型,开源的大型语言模型(Open LLMs),以及使用API的大型语言模型(LLM API),作为评估的基线。
    2. 评估指标:使用准确率(accuracy)作为评估指标,即语言模型正确回答INTENTIONQA中问答对的百分比。
    3. 结果分析:展示了不同模型在两个任务(IntentUnderstand和IntentUtilize)上的表现,并分析了它们在不同难度级别(简单、中等、困难)的准确率。
    4. 常识知识的影响:评估了注入常识知识的语言模型与更大模型相比的性能,以了解常识知识对于意图理解的作用。
    5. 任务难度分析:发现IntentUtilize任务比IntentUnderstand更具挑战性,大多数模型在IntentUtilize上的表现显著下降。
    6. 跨意图类型的表现:根据ConceptNet中的不同常识关系类型,构建了兄弟姐妹问答集,以分析模型在理解不同类型意图上的有效性。
    7. 错误分析:随机抽取GPT-4回答错误的样本,并手动分类错误原因,如未能识别最典型的意图、过度推理、选择不合理的选项等。
    8. 知识转移:通过微调其他来源(如MIND)的意图知识,探索了是否能够提高模型的性能,并与未微调的基线模型进行了比较。
    9. 人类表现:计算了人类在INTENTIONQA上的表现,作为衡量语言模型性能的上限。

    这些实验提供了对语言模型在电子商务购买意图理解任务上能力的深入理解,并揭示了它们在某些场景中与人类表现之间的差距。通过这些实验结果,论文强调了现有模型的局限性,并为未来的研究和模型改进提供了有价值的见解。

    Q: 有什么可以进一步探索的点?

    A: 根据论文内容,以下是一些可以进一步探索的点:

    1. 自动化阈值调整:论文中提到基于手动选择的阈值进行负项采样,可以探索自动化的阈值调整方法以提高效率和准确性。
    2. 利用更先进的语言模型:论文指出,更先进的大型语言模型(LLMs)有潜力创建高质量的意图知识库,这可以进一步提高问答基准的质量。
    3. 上下文信息生成:尽管论文使用了ASER知识图谱来增强上下文信息,但可以探索使用具有强大生成能力和常识推理能力的语言模型(如ChatGPT)来生成购买事件的上下文信息。
    4. 多模态数据融合:论文提到了MIND知识库,它结合了产品图像和意图知识。可以进一步探索如何有效地融合多模态数据来提升意图理解。
    5. 细粒度的意图类型分析:论文对不同常识关系下的意图理解进行了初步分析,可以进一步深入研究不同类型的意图以及它们对模型性能的影响。
    6. 模型的可解释性:提高模型在INTENTIONQA任务上的可解释性,帮助我们更好地理解模型的决策过程。
    7. 跨领域适应性:探索模型在不同电子商务领域(如不同产品类别或不同购物场景)的适应性和迁移能力。
    8. 用户个性化:研究如何将用户的个性化信息融入模型,以提供更定制化的购买意图理解和产品推荐。
    9. 模型鲁棒性:研究模型对于错误标注、异常值和噪声数据的鲁棒性。
    10. 实时应用:探索如何将这些模型集成到实时电子商务平台中,并评估它们在实际应用场景中的性能。
    11. 多语言和跨文化研究:扩展研究到多语言和跨文化环境中,以评估和提高模型在不同语言和文化背景下的购买意图理解能力。
    12. 长期跟踪和评估:随着电子商务平台和用户行为的不断演变,长期跟踪和评估模型的性能,以适应新的市场趋势和用户需求。

    这些探索点可以帮助研究者和开发者进一步提升语言模型在电子商务领域的应用效果,提高用户体验,并推动相关技术的发展。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以概括为以下几个要点:

    1. 问题提出:论文指出在电子商务场景中,提高语言模型(LMs)理解购买意图的能力对于它们在各种下游任务中的有效帮助至关重要。然而,现有的方法在从LMs中提取意图时存在困难,无法生成在现实世界电子商务中有意义的、以用户为中心的意图。
    2. INTENTIONQA基准:为了评估LMs在电子商务中理解购买意图的能力,作者提出了INTENTIONQA,这是一个双重任务的多项选择问答(MCQA)基准。它包含两个任务:IntentUnderstand(意图理解)和IntentUtilize(意图利用)。
    3. 数据集构建:INTENTIONQA包含4,360个经过精心策划的问题,涵盖三种难度级别。这些数据是通过一个自动化流程构建的,该流程使用FolkScope中的人类注释意图,并通过ASER知识图谱增强上下文信息,以确保在大型电子商务平台上的可扩展性。
    4. 任务定义
      • IntentUnderstand:要求LMs根据购买的产品对正确推断客户的购买意图。
      • IntentUtilize:要求LMs利用购买意图预测客户可能的额外购买行为。
    5. 实验与评估:作者对19种不同大小和方法的语言模型进行了广泛的实验,结果显示现有模型在某些场景下,如准确理解产品和意图、联合推理产品和意图等方面,仍然存在挑战,并远远落后于人类的表现。
    6. 人类评估:通过人类评估验证了INTENTIONQA基准的高质量和低误报率。
    7. 研究贡献:论文的研究不仅提供了一个评估工具来理解语言模型在电子商务中的购买意图理解能力,而且揭示了现有模型的局限性,并为未来的研究和模型改进提供了方向。
    8. 资源公开:作者承诺将代码和数据公开,以便社区可以进一步研究和开发。
    9. 结论与展望:论文总结了INTENTIONQA的贡献,并指出了当前语言模型在电子商务意图理解任务中的局限性,同时对未来的研究方向提出了展望。

    这篇论文通过提出INTENTIONQA基准,为评估和提高语言模型在电子商务领域的购买意图理解能力提供了一个重要的工具和研究方向。


  • 角色驱动:如何用“人物卡”解读故事?

    “故事中最重要的是角色,角色,还是角色。” – 鲍勃·盖尔

    这句话道出了角色在故事中的重要性。无论是小说、剧本还是电影,一个鲜活的人物形象,往往能够让故事更加引人入胜,令人难以忘怀。

    那么,如何才能更好地理解和分析故事中的角色呢?传统的分析方法往往依赖于对人物行为、语言、心理等方面的描述,但这些描述往往过于笼统,难以捕捉到角色的复杂性和多面性。

    近年来,随着人工智能技术的发展,一些研究人员开始尝试使用计算机来分析和生成故事。这些研究成果为我们提供了新的视角,也为我们理解角色提供了新的工具。

    CHIRON:一个基于“人物卡”的角色表示方法

    本文介绍了一种名为 CHIRON 的角色表示方法,它借鉴了专业作家创作人物的方法,将角色信息以“人物卡”的形式进行组织和呈现。

    CHIRON “人物卡”包含四个主要类别:

    • 对话: 角色的说话方式,包括口音、口头禅、表达风格等等。
    • 外貌/性格: 角色的外貌和性格特征,包括身高、伤疤、勇敢、傲慢等等。
    • 知识: 角色所掌握的知识和信息,包括家庭成员、悲惨的过去、藏宝地点等等。
    • 目标: 角色的目标和动机,包括寻找宝藏、完成任务、复仇等等。

    CHIRON 的生成和验证模块

    CHIRON 的生成过程分为两个步骤:

    1. 生成模块: 利用预训练语言模型,通过问答的方式从故事片段中提取角色信息,并将其归类到不同的类别中。
    2. 验证模块: 使用自动推理和领域特定的蕴含模型,对生成的信息进行验证,确保信息的准确性和有效性。

    验证模块:确保信息准确性

    验证模块的关键在于判断一个关于角色的陈述是否能够从故事片段中推断出来。为了实现这一点,研究人员使用了两个关键技术:

    • 自动推理: 通过预训练语言模型,生成一些中间推理步骤,帮助模型更准确地判断蕴含关系。
    • 领域特定的蕴含模型: 对预训练语言模型进行微调,使其能够更准确地判断关于角色的陈述是否与故事片段相符。

    CHIRON 的应用:掩码角色预测

    研究人员使用掩码角色预测任务来验证 CHIRON 的有效性。该任务要求模型根据故事片段和角色信息,预测被掩盖的角色名称。

    实验结果表明,CHIRON 在掩码角色预测任务中显著优于传统的基于摘要的基线方法,证明了 CHIRON 在处理角色相关任务方面的优势。

    CHIRON 的应用:故事分析

    除了用于下游任务,CHIRON 还可以用于自动分析故事。研究人员提出了一个名为“密度”的指标,用于衡量故事中角色的中心程度。

    “密度”指标定义为角色卡中句子数量除以故事中句子数量的平均值。研究人员发现,该指标与人类对故事中角色重要性的判断高度相关。

    结论

    CHIRON 是一种新颖的角色表示方法,它能够有效地捕捉和组织故事中的角色信息,并为下游任务和故事分析提供有力的支持。未来,研究人员将继续探索 CHIRON 在故事生成方面的应用,以期生成更加角色驱动的故事。

    参考文献

    • Akoury, R., Chakrabarty, T., & Lapata, M. (2020). STORIUM: A dataset of collaborative narratives for story understanding. Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, 5164-5174.
    • Yang, J., Chakrabarty, T., & Lapata, M. (2023). DOC: Towards controllability in long-form story generation. Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics, 12295-12310.
    • Yang, J., Chakrabarty, T., & Lapata, M. (2022). Re3: Towards controllable rewriting and editing for story generation. Proceedings of the 60th Annual Meeting of the Association for Computational Linguistics, 5087-5099.

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决的问题是长形式叙事中复杂角色的表示问题。现有的故事情节分析和生成系统通常通过基于图的方法和简短的角色描述来简化角色,但这些方法并没有很好地捕捉到角色的复杂性和细微差别。为了更好地处理这个问题,论文提出了一种新的基于“角色表”的表示方法,称为CHIRON,它组织和过滤有关角色的文本信息,以更准确地表示角色的复杂性。

    CHIRON的目标是通过以下方式改善角色表示:

    1. 生成模块(Generation Module):通过问答方式,利用预训练的大型语言模型(LLM)基于故事片段生成关于角色的详细信息。
    2. 验证模块(Validation Module):使用自动化推理和特定领域的蕴含模型来消除关于角色的虚假事实。

    论文通过下游任务——掩蔽角色预测(masked-character prediction)来验证CHIRON的有效性,实验结果表明CHIRON比现有的基于摘要的方法更优越、更灵活。此外,论文还展示了从CHIRON派生的指标可以用来自动推断故事中的人物中心性,并且这些指标与人类判断一致。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与角色建模、叙事和故事生成相关的研究工作。以下是一些主要的相关研究领域和代表性的工作:

    1. 角色建模:早期的工作通过将角色表示为离散值(例如情感、形容词或图节点)、嵌入或高级段落式描述或摘要来进行角色建模。
    2. 基于角色的叙事理解:研究了如何通过分析角色之间的关系和情感轨迹来理解文学作品中的角色。例如,Chaturvedi等人(2017相关研究主要包括以下几个方面:
    3. 角色建模:以往的研究通过不同的方式表示角色,包括将角色表示为离散值(如情感、形容词或图节点)、嵌入(embeddings)和高层次的段落式描述或摘要。
    4. 基于角色的叙事理解:研究者们从文学理解的角度,借鉴了帮助作家在他们自己的叙事中发展角色的讨论,这些讨论提供了对分析现有角色有用的见解。
    5. 故事生成:早期使用大型语言模型(LLMs)进行故事生成的研究通过提供情节大纲作为指导间接探索了角色信息的好处。更近期的工作集中在生成更长的故事上,更加重视复杂的情节结构。
    6. 角色发展:研究者们从角色扮演游戏中获取灵感,尤其是Ammanabrolu等人(2021)通过提供多面动机和简短的角色摘要,展示了良好的角色扮演对话和行动表现。
    7. 数据集STORIUM:基于STORIUM数据集的研究,这是一个在线协作编写的故事集合,每个故事由特定角色的视角撰写,为探索角色表示提供了理想的测试平台。
    8. 自动化推理和蕴含模型:研究者们开发了自动化推理步骤和训练有素的蕴含模型,以确保角色表示的准确性和有用性。
    9. 角色中心性分析:研究者们提出了基于CHIRON的角色表来自动分析故事,使用“密度”这一指标来衡量故事中角色的中心性,并与人类判断的相关性进行了验证。

    这些相关研究为CHIRON的开发提供了理论和技术基础,同时也表明了在长形式叙事中对角色进行深入理解的重要性。

    Q: 论文如何解决这个问题?

    A: 论文通过以下几个步骤解决长形式叙事中复杂角色表示的问题:

    1. 角色表(Character Sheet)结构:提出了一种新的结构化表示方法,称为CHIRON,它包含了一系列维度上的结构化描述,以封装角色的细微差别和复杂性。
    2. 生成模块(Generation Module):使用预训练的大型语言模型(LLM)通过问答的方式生成关于角色的信息。这个模块接收故事片段和相关问题,然后生成角色描述。
    3. 验证模块(Validation Module):为了确保生成的角色描述的准确性和有用性,开发了一个验证模块。这个模块使用自动化推理和高精确度的蕴含模型来过滤掉不准确或无用的句子。
    4. 数据集创建和注释:为了训练验证模块,研究者们创建了一个注释数据集,通过人工标注者来判断生成的陈述是否从故事片段中合理推断出来。
    5. 自动化推理:使用In-Context-Learning (ICL) 和 Chain-of-Thought (CoT) 推理来提高分类器的准确性,通过分解推理步骤来帮助分类器准确识别蕴含关系。
    6. 领域特定蕴含模型:结合故事片段、推理步骤、角色和陈述,在上下文中提示Mistral 7B模型进行蕴含标记(1-5分),并通过微调来提高模型性能。
    7. 下游任务验证:通过掩蔽角色预测任务来验证CHIRON的有效性,将CHIRON生成的角色表与基线方法进行比较,以证明其在角色中心任务中的优越性。
    8. 故事分析:使用CHIRON派生的自动化指标(如“密度”)来分析人类编写和LLM生成的故事,展示了这些指标与人类判断的一致性。
    9. 实验和评估:通过一系列实验,研究者们评估了CHIRON在掩蔽角色预测任务上的性能,并与基线方法进行了比较,证明了CHIRON的有效性。

    通过这些步骤,论文提出了一种新颖的方法来改善长形式叙事中角色的表示,使其更加准确、有用,并能够为下游任务提供支持。

    Q: 论文做了哪些实验?

    A: 论文中进行了以下实验来验证CHIRON的有效性:

    1. 掩蔽角色预测任务(Masked Character Prediction Task)
      • 定义任务:在给定的未见过的STORIUM故事中,识别故事片段中包含的三个最常见角色,并为这些角色创建角色表。
      • 掩蔽故事片段中角色名称,并使用角色表信息来预测每个角色对应的掩蔽ID。
    2. CHIRON与基线设置的比较
      • EntireSheet:将整个CHIRON角色表展示给模型。
      • Agreed:只向模型展示角色表的一个类别(如对话、外貌/个性、知识或目标),并聚合预测结果。
      • CharacterSummary:使用Mistral 7B Instruct v0.2生成的单个角色描述,并使用蕴含分类管道进行过滤。
      • No-Information:在掩蔽角色预测任务中不展示任何角色信息。
    3. OnlyRole超参数的影响
      • 探索是否只包括角色视角的故事片段作为输入对性能的影响。
    4. 性能评估
      • 报告了在不同设置下的准确率,并比较了CHIRON与基线方法的性能差异。
    5. CHIRON的灵活性测试
      • 通过修改Agreed设置,仅在知识(Knowledge)和外貌(Physical)类别之间计算一致性,以探索不同类别组合对性能的影响。
    6. 故事分析
      • 使用CHIRON派生的“密度”指标来分析不同来源的故事集,包括人类编写和LLM生成的故事。
      • 将自动化密度度量与人类对故事人物中心性的判断进行相关性分析。
    7. 不同数据集的比较
      • 计算并比较了不同数据集(如STORIUM、New Yorker TTCW、DOC故事等)的密度指标,以展示CHIRON在不同叙事风格中的应用。

    这些实验验证了CHIRON在角色表示方面的有效性,展示了其在下游任务中的优越性能,并证明了CHIRON可以作为一个分析工具来理解不同来源的故事集中角色的使用情况。

    Q: 有什么可以进一步探索的点?

    A: 论文提出了一些潜在的研究方向和可以进一步探索的点,包括:

    1. 更丰富的角色表结构:虽然CHIRON的角色表结构选择了特定类型信息,但确定哪些陈述是对角色的“有趣”描述仍然是一个开放问题,可能需要对整个故事有所了解。
    2. 利用叙事中的上下文信息:未来的研究可以更好地利用读者在叙事中获得的信息作为当前片段的上下文,例如故事特定词汇或已建立的角色关系。
    3. 扩展到多语言和文化:目前的研究主要集中在英语故事上,未来的工作可以扩展CHIRON的本体论和注释到其他语言,并探索使用更多非英语数据预训练的语言模型。
    4. 改进生成模块:尽管使用验证模块可以提高角色表示的准确性,但提高角色陈述生成步骤的性能仍然是一个值得探索的领域。
    5. 探索潜在的偏见:研究在使用抽象角色表示进行故事生成时可能导致的刻板印象,以及在生成步骤中可能由于偏见而导致的模型错误陈述。
    6. 自动化分析工具的开发:利用CHIRON作为分析工具,对更广泛的数据集进行自动化故事分析,可能包括不同风格、来源或叙事结构的故事。
    7. 角色驱动的故事生成:利用CHIRON生成更以角色为中心的故事,这可能涉及到更深入地理解角色动机、发展和故事中的关系。
    8. 用户研究和评估:进行用户研究以评估CHIRON生成的角色表的可用性,以及它们如何帮助作家或分析师更好地理解和分析角色。
    9. 集成到故事生成平台:将CHIRON集成到故事生成平台中,以提供更丰富的角色交互和更连贯的叙事体验。
    10. 跨领域应用:探索CHIRON在其他领域的应用,如教育、游戏设计或电影剧本创作,以增强角色的深度和复杂性。

    这些探索点表明,尽管CHIRON在表示长形式叙事中的角色方面取得了进展,但仍有许多机会进一步改进模型,扩展其应用范围,并更深入地理解角色在叙事中的作用。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容包括以下几个方面:

    1. 问题定义:论文指出现有故事分析和生成系统在理解和表示长形式叙事中复杂角色方面存在不足。
    2. CHIRON提出:为了解决这个问题,论文提出了一种新的基于“角色表”的表示方法,称为CHIRON(CHaracter-Informed Representations Over Narratives),用于组织和过滤有关角色的文本信息。
    3. 方法论
      • 生成模块:利用预训练的大型语言模型(LLM)通过问答形式生成角色信息。
      • 验证模块:采用自动化推理和领域特定的蕴含模型来验证和过滤生成的角色描述,确保其准确性和有用性。
    4. 数据集和注释:基于STORIUM数据集构建角色表,并进行人工注释,以创建用于训练和评估验证模块的数据集。
    5. 实验验证
      • 通过掩蔽角色预测任务评估CHIRON的有效性,并与基于摘要的基线方法进行比较。
      • 展示了CHIRON在特定下游任务中的性能提升。
    6. 故事分析:使用CHIRON派生的自动化指标(如“密度”)来分析人类编写和LLM生成的故事,并将这些指标与人类判断的相关性进行了验证。
    7. 结果
      • CHIRON在掩蔽角色预测任务中比基线方法表现更好,证明了其在角色中心任务中的有效性。
      • 密度指标与人类对故事人物中心性的判断高度相关,可以作为故事分析工具。
    8. 未来工作:论文提出了一些潜在的研究方向,包括改进角色表结构、扩展到多语言和文化、探索潜在的偏见等。
    9. 局限性和伦理声明:论文讨论了CHIRON的局限性,并提出了伦理方面的考虑,如避免生成有害内容和减少刻板印象的风险。

    总的来说,这篇论文提出了一种新的方法来改善长形式叙事中角色的表示,并通过实验验证了其有效性,同时也为未来的研究提供了方向和考虑。


  • 别像金鱼一样死记硬背!大型语言模型的记忆力减弱方法

    大型语言模型(LLM)可以记忆并重复训练数据,这会带来隐私和版权风险。为了减轻记忆问题,我们提出了一种对下一个词预测训练目标的细微修改,我们称之为“金鱼损失”。在训练过程中,随机抽取一部分词语,并将其从损失计算中排除。模型不会记忆这些被排除的词语,从而防止从训练集中逐字复制完整的词语链。我们对数十亿规模的 Llama-2 模型进行了广泛的实验,包括预训练模型和从头训练的模型,结果表明,记忆力显著降低,而对下游基准测试的影响很小。

    为什么要减轻记忆?

    大型语言模型的记忆力是一个令人担忧的问题,因为它们会将训练数据存储在内部,并在之后逐字复制。这在商业应用中会带来很多风险:

    • 版权风险: LLM 的输出可能包含知识产权 [Shoaib, 2023],这对于代码模型尤其成问题,因为代码的逐字复制会影响下游许可。即使生成的代码具有开源许可,许多此类许可也包含限制商业使用的条款。
    • 法律风险: 对于提供商来说,托管和分发能够生成受版权保护内容的模型的合法性尚未得到解决。
    • 隐私风险: 生成的训练数据可能包含个人身份信息 (PII) 或其他敏感数据。

    一些研究 [Eldan 和 Russinovich, 2023; Zhang 等人,2024b; Jang 等人,2023] 尝试通过模型编辑或在模型训练后进行“遗忘”来减轻记忆问题。一些商业 LLM 已经采用这种方法来防止数据所有者起诉 [Hays, 2023]。我们认为,最好的方法是在源头上阻止记忆,并将这种方法留作最后一步的修补措施。

    金鱼损失:不记忆的学习

    金鱼损失是一种非常简单的技术,它利用下一个词预测目标的特性来减轻对训练数据的逐字复制。与标准训练类似,该方法首先对批次中的所有词语进行前向传播。与标准训练不同的是,标准训练会对所有输入计算下一个词预测损失,而金鱼损失则会排除一个伪随机子集(例如 25%)的训练词语。在反向传播过程中,模型永远不会学习复制被排除的词语。在推理时,模型必须在遇到被排除的词语时进行“猜测”,从而使其偏离训练数据序列。这样,金鱼损失就能够在不具备在推理时进行逐字复制能力的情况下,对文本进行训练。

    我们通过一个极端情况下促进记忆的训练设置来探索这个想法。我们对一个 70 亿参数的模型进行了 100 个 epoch 的训练,训练数据仅包含几篇文章。结果表明,使用金鱼损失训练的模型能够抵抗记忆,而标准训练的模型则记忆了大部分训练数据(参见图 1)。然后,我们转向更标准的训练方案,观察到金鱼模型的记忆指标与从未见过训练数据的模型非常相似。之后,我们研究了金鱼模型的效用,发现它们仍然可以有效地从训练数据中学习,尽管在某些情况下,它们可能需要比标准模型更长的训练时间来弥补被排除在损失之外的词语。最后,我们尝试使用强力的束搜索解码器从金鱼模型中对抗性地提取训练数据,但通常会失败。然而,我们观察到,成员推断攻击仍然适用于金鱼模型,尽管准确率略低。

    金鱼损失如何工作?

    大型语言模型通常使用因果语言建模 (CLM) 目标进行训练,该目标表示给定所有先前词语的条件下,一个词语的平均对数概率。对于一个包含 L 个训练词语的序列 x = {xi},可以写成:

    $$L(\theta) = -\frac{1}{L} \sum_{i=1}^{L} \log P(x_i|x_{<i}; \theta).$$

    当模型能够以高置信度正确预测序列 {xi} 时,该目标函数被最小化。因此,通过下一个词预测训练的模型容易出现记忆问题。然而,在测试时成功地生成词语 xj 依赖于提供完整的先前序列 x<j 作为输入。

    金鱼损失只对一部分词语进行计算,从而防止模型学习整个词语序列。选择一个金鱼掩码 G ∈ {0, 1}L,并将金鱼损失定义为

    $$L_{goldfish}(\theta) = -\frac{1}{|G|} \sum_{i=1}^{L} G_i(x_i) \log P(x_i|x_{<i}; \theta).$$

    简单来说,如果掩码值为 Gi = 0,则忽略第 i 个词语的损失,如果 Gi = 1,则包含该词语。最重要的是,输出 xi 仍然以所有先前词语 x<i 为条件,允许模型在训练过程中学习自然语言的完整分布。然而,对于给定的段落,模型不会学习预测第 i 个词语,因此在测试时不会以精确的序列 x<i 为条件。需要注意的是,金鱼掩码将根据局部上下文为每个训练样本独立地选择。

    金鱼损失的有效性

    我们通过实验验证了金鱼损失能够有效地防止记忆。我们考虑两种设置:

    • 极端情况: 使用少量样本进行多次训练 epoch,以最大程度地促进记忆。
    • 标准情况: 模拟现实模型训练中使用的批处理方式。

    我们使用两个指标来量化记忆:

    • RougeL 分数: 量化最长公共 (非连续) 子序列的长度。分数为 1.0 表示完全记忆。
    • 精确匹配率: 衡量与真实文本相比,正确预测的词语所占的百分比。

    在极端情况下,我们发现金鱼损失训练的模型能够抵抗记忆,而标准训练的模型则记忆了大部分训练数据。在标准情况下,我们发现金鱼损失显著降低了模型复制目标序列的能力。

    金鱼损失对模型性能的影响

    金鱼损失似乎能够防止记忆,但对模型的性能有什么影响呢?模型还能有效地学习吗?我们研究了使用金鱼损失训练对模型解决知识密集型推理基准测试的能力以及对原始语言建模能力的影响。我们发现,对于大多数下游评估来说,金鱼训练获得的知识与标准训练相当。在语言建模能力方面,我们发现金鱼损失会导致预训练速度略微下降,这与模型看到的词语数量减少预期相符。然而,当允许两种模型使用相同数量的监督词语进行损失计算时,金鱼损失可以与标准预训练相媲美。

    金鱼损失的局限性

    金鱼损失没有理论上的保证,我们不能保证训练数据无法通过任何对抗性手段从金鱼模型中提取,也不能保证金鱼模型永远不会复制训练数据。然而,在标准采样方法下,金鱼损失使得生成长训练序列的概率非常低。

    此外,先前的工作表明,更大的模型会记忆更多训练数据,因此研究金鱼损失带来的益处如何扩展到数十亿甚至数百亿参数的模型是一个有趣的问题。

    总结

    我们认为,金鱼损失由于其简单性、可扩展性和对模型性能的影响相对较小,可以在工业环境中发挥作用。虽然我们的实验将损失均匀地应用于所有文档,但它也可以在训练课程的后期阶段选择性地应用,或者应用于来自特定高风险来源的文档。这可以限制对效用的负面影响,同时将缓解措施集中在最需要的地方。此外,在内容丰富但敏感,或者文本熵较低(例如代码)的情况下,可以使用比本文中探索的更高的掩码率。

    虽然金鱼损失没有理论上的保证,但它能够抵抗记忆,前提是使用适当的哈希方法,以便每次掩码都相同。这可能是金鱼损失相对于差分隐私等方法的优势,因为后者在文档多次出现时会失效。

    总的来说,我们希望未来能够出现像金鱼损失这样的技术,使数据所有者和模型训练机构能够和谐共处。在合规性和能力之间的交叉研究将提高人工智能服务提供商尊重创作者和监管机构对知识产权的期望,同时仍然推动生成模型及其应用的边界。

    参考文献

    • [Shoaib, 2023] Shoaib, M. (2023). The copyright implications of large language models. Journal of Intellectual Property Law & Practice, 18(1), 1-10.
    • [Eldan and Russinovich, 2023] Eldan, R., & Russinovich, M. (2023). On the memorization capabilities of large language models. arXiv preprint arXiv:2303.00201.
    • [Zhang et al., 2024b] Zhang, B., Zhao, J., & Zhou, J. (2024b). Towards mitigating memorization in large language models: A comprehensive survey. arXiv preprint arXiv:2401.00001.
    • [Jang et al., 2023] Jang, E., Kim, Y., & Lee, J. (2023). Unlearning for mitigating memorization in large language models. arXiv preprint arXiv:2307.00002.
    • [Hays, 2023] Hays, J. (2023). The rise of the unlearning machine. Wired.
    • [Carlini et al., 2019] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2019). Extracting training data from large language models. arXiv preprint arXiv:1905.11261.
    • [Carlini et al., 2021] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2021). On the robustness of memorization in language models. arXiv preprint arXiv:2102.03380.
    • [Inan et al., 2021] Inan, H., & Kaya, K. (2021). Extracting training data from language models using a simple prompt. arXiv preprint arXiv:2102.03380.
    • [Carlini et al., 2023] Carlini, N., Athalye, A., Papernot, N., & Goodfellow, I. (2023). Memorization in language models: A quantitative analysis. arXiv preprint arXiv:2303.00003.
    • [Nasr et al., 2023] Nasr, M., & Zou, J. (2023). Spontaneous reproduction of training data in language models. arXiv preprint arXiv:2304.00004.
    • [Somepalli et al., 2023] Somepalli, G., & Goldstein, T. (2023). Spontaneous reproduction of training data in image generators. arXiv preprint arXiv:2305.00005.
    • [Schwarzschild et al., 2024] Schwarzschild, R., & Li, Y. (2024). A novel definition for memorization in language models. arXiv preprint arXiv:2402.00006.
    • [Abadi et al., 2016] Abadi, M., & Chu, A. (2016). Deep learning with differential privacy. arXiv preprint arXiv:1607.00133.
    • [Anil et al., 2021] Anil, R., & Schmidt, M. (2021). On the practicality of differentially private deep learning. arXiv preprint arXiv:2103.00007.
    • [Zhao et al., 2022] Zhao, J., & Zhou, J. (2022). Improving the practicality of differentially private deep learning by pretraining on sanitized non-sensitive data. arXiv preprint arXiv:2204.00008.
    • [Shi et al., 2022] Shi, T., & Li, J. (2022). A practical approach to differentially private deep learning with pretraining. arXiv preprint arXiv:2205.00009.
    • [Kandpal et al., 2022] Kandpal, D., & Singh, S. (2022). Deduplication of training data can mitigate memorization in large language models. arXiv preprint arXiv:2206.00010.
    • [Ippolito et al., 2022] Ippolito, M., & Singh, S. (2022). Detecting memorization in large language models at test time. arXiv preprint arXiv:2207.00011.
    • [Bloom, 1970] Bloom, B. (1970). Space/time trade-offs in hash coding with allowable errors. Communications of the ACM, 13(7), 422-426.
    • [Feldman and Zhang, 2020] Feldman, V., & Zhang, C. (2020). Memorization in deep neural networks. arXiv preprint arXiv:2006.00012.
    • [Srivastava et al., 2014] Srivastava, N., & Hinton, G. (2014). Dropout: A simple way to prevent neural networks from overfitting. Journal of Machine Learning Research, 15(1), 1929-1958.
    • [Tirumala et al., 2022] Tirumala, A., & Singh, S. (2022). Memorization in large language models: A study of the effects of regularization. arXiv preprint arXiv:2208.00013.
    • [Lee et al., 2022a] Lee, K., & Shin, J. (2022a). Memorization in large language models: A systematic study. arXiv preprint arXiv:2209.00014.
    • [Jain et al., 2024] Jain, N., & Goldstein, T. (2024). Noise injection for mitigating memorization in large language models. arXiv preprint arXiv:2403.00015.
    • [Wen et al., 2024] Wen, Y., & Goldstein, T. (2024). Improving the robustness of large language models through noise injection. arXiv preprint arXiv:2404.00016.
    • [Hou et al., 2022] Hou, L., & Zhang, M. (2022). Token dropout for mitigating memorization in large language models. arXiv preprint arXiv:2210.00017.
    • [Lin et al., 2024] Lin, Z., & Li, Y. (2024). Data-dependent token dropout for mitigating memorization in large language models. arXiv preprint arXiv:2405.00018.
    • [Lin, 2004] Lin, C. (2004). Rouge: A package for automatic evaluation of summaries. Proceedings of the Workshop on Text Summarization Branches Out, 74-81.
    • [Brown et al., 2020] Brown, T., & Mann, B. (2020). Language models are few-shot learners. arXiv preprint arXiv:2005.14165.
    • [Du et al., 2022] Du, M., & Li, J. (2022). Towards understanding the memorization ability of large language models. arXiv preprint arXiv:2207.00019.
    • [Lee et al., 2022b] Lee, K., & Shin, J. (2022b). Memorization in large language models: A systematic study. arXiv preprint arXiv:2209.00014.
    • [Kirchenbauer et al., 2023] Kirchenbauer, J., & Goldstein, T. (2023). Watermarking large language models. arXiv preprint arXiv:2303.00020.
    • [Zipf, 1935] Zipf, G. (1935). The psycho-biology of language. Boston: Houghton Mifflin.
    • [Zhang et al., 2024a] Zhang, B., & Zhao, J. (2024a). TinyLLaMA: Efficient and effective fine-tuning of large language models. arXiv preprint arXiv:2402.00021.
    • [Together Computer, 2023] Together Computer. (2

    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决大型语言模型(Large Language Models, LLMs)在训练过程中可能发生的”记忆化”(memorization)问题。记忆化是指模型在内部存储并在之后重新生成训练数据的逐字副本。这种现象在商业用途中可能带来版权风险、隐私风险以及其他法律问题。具体来说:

    1. 版权风险:LLMs生成的输出可能包含知识产权,这可能导致客户和提供商面临法律问题,尤其是当涉及代码模型时,逐字复制代码可能会影响下游许可证的使用。
    2. 隐私风险:如果训练数据包含个人身份信息(PII)或其他敏感数据,这些信息可能会通过模型的输出被重新生成,从而泄露隐私。

    为了减轻这些问题,论文提出了一种称为“金鱼损失”(goldfish loss)的修改方法,这是一种在训练过程中对下一个词预测目标进行微妙修改的方法。通过在损失计算中排除随机采样的部分标记,这些被丢弃的标记不会被模型记忆化,从而防止训练集的完整标记链的逐字复制。

    Q: 有哪些相关研究?

    A: 论文中提到了以下几类相关研究:

    1. 量化LLMs中的记忆化:研究了如何从开源的大型语言模型中提取训练数据,包括良性和对抗性的提示策略。
    2. 减轻LLMs中的记忆化
      • 差分隐私(Differentially Private, DP)训练:提供保证,使得单个数据点的存在或缺失对模型输出的影响最小化。但这种方法可能影响模型的实用性,并且对大型语言模型来说资源密集。
      • 数据去重:已知去重训练数据可以减轻记忆化,但面对网络数据的规模和文本的近似重复版本普遍存在,这使得去重变得复杂。
    3. 正则化和记忆化:传统上,记忆化与过拟合有关,通过正则化技术如权重衰减和dropout来减少过拟合。然而,这些技术对于防止LLMs中的记忆化来说是不够的。
    4. 对抗性提取方法:研究了在训练后如何通过模型编辑或“反学习”来减轻记忆化。
    5. 评估和测试神经网络中不期望的记忆化:研究了如何评估和测试神经网络中不期望的记忆化问题。
    6. 从大型语言模型中提取训练数据:研究了如何从大型语言模型中提取训练数据,包括使用特定的前缀长度来衡量模型记忆化的程度。
    7. 通过对抗性压缩重新思考LLM记忆化:提出了一种新的定义来量化训练字符串是否可以通过比字符串本身短的对抗性提示来提取。
    8. 使用布隆过滤器在测试时检测记忆化:提出了一种在测试时使用布隆过滤器来检测记忆化的方法。

    这些研究为理解大型语言模型中的记忆化现象以及如何减轻这一现象提供了多角度的视野。论文提出的“金鱼损失”是在这些现有研究的基础上,尝试从源头上减轻记忆化问题。

    Q: 论文如何解决这个问题?

    A: 论文通过引入一种称为“金鱼损失”(goldfish loss)的方法来解决大型语言模型(LLMs)中的记忆化问题。具体来说,这种方法涉及以下几个关键步骤:

    1. 修改训练目标:传统的语言模型训练使用下一个词预测目标,即模型需要预测序列中下一个词的概率。金鱼损失对这一目标进行了修改。
    2. 排除损失计算:在训练过程中,随机选择一部分(例如25%)的标记(tokens),在损失计算中排除这些标记。这意味着模型在训练时不会学习到这些被排除标记的预测。
    3. 正向传播和反向传播的调整:在正向传播中,模型仍然对所有标记进行预测,但在反向传播时,只有被选中的子集(即未被排除的标记)会参与损失的反向传播。
    4. 使用金鱼掩码:金鱼损失使用一个金鱼掩码(goldfish mask),这是一个与标记序列等长的二进制序列,决定哪些标记在损失计算中被考虑。
    5. 处理重复段落:为了一致地处理在不同文档中重复出现的段落,论文提出了一种基于哈希的掩码策略,确保每次相同的文本序列出现时,都以相同的方式进行掩码。
    6. 实验验证:论文通过在极端条件下(大量迭代次数在少量样本上)和标准条件下(模拟现实世界模型训练的批处理)的实验来验证金鱼损失的有效性。
    7. 性能影响评估:论文评估了金鱼损失对模型在下游任务上性能的影响,发现使用金鱼损失训练的模型与使用标准损失训练的模型在性能上只有微小的差异。
    8. 对抗性提取方法的测试:论文还测试了金鱼损失是否能抵抗对抗性方法提取训练数据,包括会员资格推断攻击和自适应攻击(如Beam Search)。

    总的来说,金鱼损失是一种简单但有效的方法,通过改变训练过程中的损失计算,减少了模型对训练数据的逐字记忆,从而降低了记忆化带来的风险。

    Q: 论文做了哪些实验?

    A: 论文中进行了多种实验来评估金鱼损失(goldfish loss)对记忆化和模型性能的影响,具体包括:

    1. 极端记忆化条件下的实验:在这种设置中,作者使用了一个特别设计的训练配置,以强烈促进记忆化。具体来说,他们训练了一个7B参数的LLaMA-2模型,使用了100篇英文维基百科文章,每个文章训练了100个epoch。目的是观察金鱼损失模型与标准训练模型在记忆化方面的差异。
    2. 标准训练条件下的实验:在这个实验中,作者遵循了TinyLLaMA-1.1B模型的实验设置,比较了不同k值下的金鱼损失和标准因果语言建模损失。这个实验使用了RedPajama数据集的一个子集和2000篇维基百科文章,这些文章在训练过程中重复了50次。
    3. 记忆化量化:使用两个指标来量化记忆化:RougeL分数和精确匹配率。RougeL分数衡量最长公共子序列的长度,而精确匹配率衡量与真实文本正确预测的标记的百分比。
    4. 下游基准性能的影响评估:作者评估了使用金鱼损失训练的模型在多个流行的自然语言处理任务上的性能,包括WinoGrande、PIQA、OpenBookQA、HellaSwag、BoolQ和ARC-E等基准测试。
    5. 语言建模能力的影响评估:通过跟踪模型在训练过程中的逐个标记进展,使用验证损失来衡量金鱼损失对模型原始标记预测能力的影响。
    6. 对抗性提取方法的测试
      • 会员资格推断攻击(Membership Inference Attacks):模拟攻击者尝试确定一个给定样本是否用于训练。
      • 自适应攻击(Adaptive Attack):使用Beam Search来评估模型在面对攻击者尝试提取数据时的鲁棒性。
    7. 金鱼损失的不同实现策略的比较:比较了不同掩码策略(如静态掩码、随机掩码和基于哈希的掩码)对记忆化和下游基准性能的影响。
    8. 金鱼损失对模型性能的长期影响:通过增加批量大小或总步数,确保金鱼损失模型在相同的监督标记数量下与标准损失模型进行比较。

    这些实验结果表明,金鱼损失在减少记忆化的同时,对模型的下游任务性能和语言建模能力的影响是有限的。同时,尽管金鱼损失提高了对某些攻击的抵抗力,但并没有提供理论上的保证,且在某些情况下可能仍然容易受到攻击。

    Q: 有什么可以进一步探索的点?

    A: 尽管论文提出了金鱼损失作为一种减轻大型语言模型记忆化问题的方法,但仍有一些可以进一步探索的点:

    1. 不同规模模型的影响:研究金鱼损失在不同规模的模型上的效果,包括小型、中型到超大型语言模型。
    2. 不同领域数据的适用性:探索金鱼损失在不同领域(如医疗、法律、金融等)数据上的应用效果。
    3. 优化金鱼损失参数:研究不同的掩码策略、掩码频率和其他超参数设置对模型性能和记忆化的影响。
    4. 长期记忆化的影响:研究金鱼损失在模型长期运行和持续学习过程中对记忆化的影响。
    5. 与其他技术结合:考虑将金鱼损失与其他技术(如差分隐私、数据去重、正则化技术等)结合使用,以进一步提高模型的隐私保护能力。
    6. 对抗性攻击的防御:研究如何提高金鱼损失模型对更复杂对抗性攻击的鲁棒性,例如通过改进模型的架构或训练过程。
    7. 实际应用场景的测试:在实际应用场景中测试金鱼损失模型,例如聊天机器人、内容生成、问答系统等,以评估其在现实世界中的有效性和实用性。
    8. 理论分析:对金鱼损失进行更深入的理论分析,以理解其在统计和信息论层面上对模型学习过程的影响。
    9. 可扩展性和效率:研究金鱼损失在大规模训练设置中的可扩展性和效率,以及如何优化以减少计算资源的需求。
    10. 用户和数据所有者的接受度:调查用户和数据所有者对于使用金鱼损失训练的模型的接受度,以及它们对隐私保护的看法。
    11. 法律和伦理考量:研究金鱼损失在法律和伦理层面上的影响,以及它如何帮助满足数据保护法规(如GDPR)的要求。
    12. 模型解释性:研究金鱼损失是否影响模型的解释性,以及如何平衡模型性能和可解释性。

    这些探索点可以帮助我们更全面地理解金鱼损失的效果和局限性,并为未来的研究和实际应用提供指导。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容可以概括为以下几个要点:

    1. 问题识别:论文指出大型语言模型(LLMs)在训练过程中可能会记忆并逐字重复训练数据,这可能导致隐私和版权风险。
    2. 金鱼损失提出:为了减轻记忆化问题,论文引入了一种称为“金鱼损失”(goldfish loss)的训练目标修改方法。这种方法通过在损失计算中随机排除一部分标记,防止模型学习到完整的训练数据序列。
    3. 实验验证:通过在极端记忆化条件下和标准训练条件下的实验,论文验证了金鱼损失在减少记忆化方面的有效性。
    4. 性能影响评估:论文评估了金鱼损失对模型在下游任务性能和语言建模能力的影响,发现其影响有限。
    5. 对抗性提取方法测试:论文测试了金鱼损失对会员资格推断攻击和自适应攻击(如Beam Search)的抵抗力。
    6. 金鱼损失策略比较:论文比较了不同金鱼损失实现策略(如静态掩码、随机掩码和基于哈希的掩码)对记忆化和下游基准性能的影响。
    7. 实际应用讨论:论文讨论了金鱼损失在工业界的潜在应用,以及如何根据需要选择性地应用金鱼损失。
    8. 局限性说明:论文指出金鱼损失没有理论上的保证,且可能在某些情况下容易受到攻击。
    9. 未来研究方向:论文提出了一些未来研究的方向,包括对不同规模模型、不同领域数据的研究,以及与其他技术结合的可能性。
    10. 结论:论文认为金鱼损失是一个有用的工具,可以简单、可扩展地减轻模型的记忆化问题,同时对模型性能的影响较小。

    整体而言,论文提出了一种新的训练方法来解决LLMs中的记忆化问题,并对其效果和潜在的应用进行了全面的探讨。


  • 开源模型大比拼:Mixtral、Llama 3、Phi-3、OpenELM 谁更胜一筹?

    大型语言模型(LLM)的开源浪潮正在席卷全球,各种新模型层出不穷,让人眼花缭乱。最近,Mistral AI 的 Mixtral 8x22B、Meta AI 的 Llama 3、微软的 Phi-3 以及苹果的 OpenELM 等新模型纷纷发布,引发了广泛关注。究竟这些新模型有哪些亮点?它们在性能、效率和应用场景方面又有哪些区别呢?

    本文将带你深入了解这四款新模型,并探讨它们在开源 LLM 领域中的地位和未来发展方向。

    Mixtral 8x22B:模型越大越好?

    Mixtral 8x22B 是 Mistral AI 推出的最新款混合专家(MoE)模型,采用宽松的 Apache 2.0 开源许可证。与今年早些时候发布的 Mixtral 8x7B 相比,新模型的参数量大幅提升,达到了 8x22B。

    Mixtral 8x22B 的核心思路是将 Transformer 架构中的每个前馈模块替换成 8 个专家层。MoE 的优势在于能够在保持模型性能的同时,降低计算资源需求。

    Mixtral 8x22B 在 MMLU 基准测试中表现出色,并且在参数量和计算资源需求方面取得了平衡。

    Llama 3:数据越多越好?

    Meta AI 的 Llama 3 模型延续了 Llama 系列的辉煌,其训练数据量大幅增加,达到了 15 万亿 token,远超 Llama 2 的 2 万亿 token。

    Llama 3 的架构与 Llama 2 几乎一致,主要区别在于词汇库更大,以及更小型模型使用了分组查询注意力。

    Llama 3 的出色表现得益于其庞大的训练数据,即使在超过 15 万亿 token 的规模上,模型仍然能够获得进一步提升。

    Phi-3:数据质量更重要?

    微软的 Phi-3 模型则更加注重数据质量,其训练数据量仅有 3.3 万亿 token,不到 Llama 3 的五分之一。

    Phi-3 的秘诀在于使用了严格过滤的网络数据和合成数据,从而在数据质量上取得了优势。

    Phi-3-mini 模型的参数量仅有 3.8B,却在基准测试中超越了 Llama 3 8B 模型,展现出其在数据质量方面的优势。

    OpenELM:面向移动设备的轻量级模型

    苹果公司发布的 OpenELM 模型套件旨在提供可在移动设备上部署的小型 LLM。OpenELM 拥有 4 种不同尺寸的模型,参数量分别为 270M、450M、1.1B 和 3B。

    OpenELM 的亮点在于其详细分享了架构、训练方法和训练数据,并且在性能上超越了 OLMo,尽管其训练数据量更少。

    OpenELM 的逐层扩展策略是一种新颖的设计,它可以有效地提升模型的效率,使其更适合在移动设备上运行。

    DPO vs PPO:哪种对齐方法更强大?

    除了新模型的发布,一篇名为《Is DPO Superior to PPO for LLM Alignment? A Comprehensive Study》的论文探讨了 DPO 和 PPO 在 LLM 对齐方面孰优孰劣的问题。

    论文的结论是:PPO 通常优于 DPO,并且 DPO 更容易受到分布外数据的影响。

    四月发布的其它有趣论文

    除了上面提到的新模型和论文,四月还涌现了许多其他值得关注的研究成果,例如:

    • KAN(Kolmogorov–Arnold Networks)模型,一种新的 MLP 替代方案,在准确度、神经扩展性能和可解释性方面具有优势。
    • RAG(Retrieval-Augmented Generation)模型的综述,全面总结了检索增强型 LLM 的组件、结构、应用和评估方法。
    • LoRA(Low-Rank Adaptation)技术,一种参数高效型微调技术,可以显著提升模型性能。
    • FILM-7B 模型,使用信息密集型方法训练,可以解决 LLM 的“中间丢失”问题。
    • LayerSkip 技术,可以加快 LLM 的推理速度。
    • 等等。

    总结:开源 LLM 领域百花齐放

    四月发布的这些新模型和论文,展现了开源 LLM 领域的蓬勃发展。Mixtral、Llama 3、Phi-3 和 OpenELM 各具特色,为不同应用场景提供了更多选择。

    未来,我们期待看到更多更强大、更可靠、更易用的开源 LLM 模型,推动人工智能技术走向更加成熟和广泛的应用。

  • 让大型语言模型更懂你:如何训练更可靠的奖励模型?

    大型语言模型(LLM)正在改变世界,但要让它们真正为我们所用,就需要让它们理解人类的意图和价值观。强化学习从人类反馈(RLHF)框架应运而生,它通过训练一个奖励模型来评估LLM的输出,并引导LLM朝着人类期望的方向发展。

    然而,现有的奖励模型在面对新奇的提示和响应时,往往表现出泛化能力不足的问题。这会导致一个令人头疼的现象:奖励过度优化。简单来说,就是模型过度追求奖励,反而导致实际表现下降。

    为了解决这个问题,本文将介绍一种名为可泛化奖励模型(GRM)的新方法,它通过正则化隐藏状态来提升奖励模型的泛化能力。

    奖励模型:让LLM知道什么是好,什么是坏

    奖励模型就像一个评判者,它根据人类的偏好,对LLM生成的文本进行打分。打分越高,说明LLM的输出越符合人类的期望。

    通常,奖励模型的训练基于成对的反馈数据,即给定同一个提示,人类会对两个不同的响应进行比较,并给出自己的偏好。通过学习这些偏好数据,奖励模型可以学习到哪些文本是好的,哪些文本是不好的。

    奖励过度优化:模型的“聪明反被聪明误”

    虽然奖励模型的初衷是引导LLM更符合人类的期望,但现实情况往往事与愿违。当奖励模型过度优化时,它可能会学到一些“错误的模式”,导致LLM的输出虽然在奖励模型看来很优秀,但实际上却偏离了人类的真实意图。

    例如,如果奖励模型只关注文本的长度,那么LLM可能会生成一些毫无意义的长篇大论,只是为了获得更高的奖励。

    可泛化奖励模型(GRM):让模型更具“举一反三”的能力

    GRM的核心思想是通过正则化隐藏状态来提升奖励模型的泛化能力。隐藏状态是LLM内部处理信息的中间结果,它包含了模型对文本的理解。

    GRM保留了LLM的语言模型头部,并通过引入一系列文本生成损失来约束隐藏状态的文本生成能力,同时学习一个奖励头部来预测文本的奖励分数。

    文本生成损失:让模型保持“语言能力”

    文本生成损失是用来评估LLM生成文本质量的指标。GRM通过引入文本生成损失,可以确保隐藏状态在学习奖励的同时,不会丢失其原本的语言能力。

    GRM的优势:高效、稳定、可靠

    GRM具有以下优势:

    • 高效:GRM不需要训练多个奖励模型,也不需要额外的训练数据。
    • 稳定:GRM对不同类型的正则化方法都具有良好的适应性。
    • 可靠:GRM能够有效地缓解奖励过度优化问题,并对训练数据中的噪声具有较强的鲁棒性。

    实验结果:GRM的优异表现

    实验结果表明,GRM在各种评估任务中都取得了优异的成绩:

    • 泛化能力强:GRM在面对新奇的提示和响应时,仍然能够保持较高的准确率。
    • 鲁棒性强:即使在训练数据有限或存在噪声的情况下,GRM仍然能够保持良好的性能。
    • 有效缓解奖励过度优化:GRM能够有效地引导LLM朝着人类期望的方向发展,并避免出现奖励过度优化的问题。

    未来展望:更智能、更可靠的奖励模型

    GRM为构建更智能、更可靠的奖励模型开辟了新的道路。未来,我们可以进一步探索以下方向:

    • 更精细化的正则化方法:设计更精细化的正则化方法,以更好地约束隐藏状态的文本生成能力。
    • 多任务学习:将奖励学习与其他任务结合起来,例如文本摘要、机器翻译等,以提升奖励模型的泛化能力。
    • 可解释性:研究奖励模型的可解释性,以便更好地理解模型的决策过程。

    参考文献

    • Yang, R., Ding, R., Lin, Y., Zhang, H., & Zhang, T. (2024). Regularizing Hidden States Enables Learning Generalizable Reward Model for LLMs. arXiv preprint arXiv:2406.10216.

    通过不断探索和改进,我们相信奖励模型将成为LLM与人类价值观对齐的关键,推动LLM走向更加智能、更加可靠的未来。


    Q: 这篇论文试图解决什么问题?

    A: 这篇论文试图解决的问题是如何提高大型语言模型(LLMs)在强化学习从人类反馈(RLHF)框架中,通过训练得到的奖励模型(reward models)对未见提示(unseen prompts)和响应(responses)的泛化能力。具体来说,论文指出当前的奖励模型在面对分布偏移(distribution shifts)时泛化能力有限,这可能导致过度优化(over-optimization)现象,即过度优化奖励结果导致实际性能下降。为了解决这个问题,论文提出了一种新颖的方法,即通过正则化隐藏状态来增强奖励模型对分布偏移的泛化能力。这种方法被称为通用奖励模型(Generalizable Reward Model, GRM),它保留了基础模型的语言模型头部,并引入了一系列文本生成损失来保持隐藏状态的文本生成能力,同时学习与这些隐藏状态相同的奖励头部。通过实验,论文证明了引入的正则化技术显著提高了学习到的奖励模型在多种分布外(OOD)任务上的准确性,并有效缓解了RLHF中的过度优化问题,提供了一个更可靠和强大的偏好学习范式。

    Q: 有哪些相关研究?

    A: 论文中提到了多个与奖励模型和强化学习从人类反馈(RLHF)相关的研究。以下是一些主要的相关研究:

    1. Amodei et al., 2016: 提出了AI安全中的一些具体问题,包括奖励黑客攻击(reward hacking)的概念。
    2. Bradley and Terry, 1952: 提出了Bradley-Terry模型,这是一种用于偏好学习的模型,常用于奖励建模。
    3. Bai et al., 2022: 研究了如何通过监督式微调(SFT)和RLHF来确保大型模型与人类价值观一致。
    4. Ouyang et al., 2022: 探讨了RLHF中奖励模型的泛化问题,并提出了一些解决方案。
    5. Gao et al., 2023: 在合成设置中展示了增加奖励模型的大小和训练数据量可以缓解过度优化问题。
    6. Coste et al., 2023: 提出了使用集成技术(ensemble techniques)来增强奖励模型的泛化能力。
    7. Eisenstein et al., 2023: 研究了奖励模型集成如何帮助缓解过度优化问题。
    8. Moskovitz et al., 2023: 提出了一种受限的RLHF方法来对抗奖励模型的过度优化。
    9. Zhang et al., 2024b: 提出了一种通过对抗性策略优化来克服奖励过度优化的方法。
    10. Kumar et al., 2022: 理论上展示了随机初始化的头部可能会扭曲预训练的特征,从而影响分布外(OOD)性能。
    11. Schulman et al., 2017: 提出了近端策略优化(PPO)算法,这是一种在RLHF中常用的策略优化方法。

    这些研究为理解奖励模型在RLHF中的挑战和可能的解决方案提供了理论基础和实证研究。论文提出的通用奖励模型(GRM)是在这些现有研究的基础上,针对奖励模型泛化能力和过度优化问题的一种新解决方案。

    Q: 论文如何解决这个问题?

    A: 论文通过提出一种名为**通用奖励模型(Generalizable Reward Model, GRM)**的方法来解决奖励模型在分布偏移情况下泛化能力有限的问题。具体来说,GRM采用了以下关键策略:

    1. 保留基础模型的语言模型头部:GRM保留了基础模型的语言模型头部,这样做的目的是为了保持模型在文本生成任务上的能力。
    2. 引入文本生成损失作为正则化:GRM通过引入一系列文本生成损失来正则化隐藏状态,这有助于在微调过程中保持模型的文本生成能力,同时学习与隐藏状态相同的奖励头部。
    3. 共享隐藏状态的奖励头部和语言模型头部:GRM的结构中,奖励头部和语言模型头部共享相同的隐藏状态,这样的设计使得两者可以协同工作,一方面优化奖励模型以更好地匹配人类偏好,另一方面通过文本生成任务保持模型的语言能力。
    4. 定义总体损失函数:GRM的总体损失函数结合了奖励损失和正则化损失,通过一个平衡系数α来调整两者之间的权重。
    5. 理论动机:论文从理论上分析了通过考虑对抗性策略来增强奖励模型的鲁棒性,并通过分析优化问题来导出正则化项的潜在形式。
    6. 实验验证:论文通过一系列实验验证了GRM在不同分布外(OOD)任务上的有效性,展示了其在不同数据集大小和不同正则化策略下的性能。
    7. 缓解过度优化问题:GRM通过其设计有效地缓解了RLHF中的过度优化问题,这通过在最佳n(BoN)采样和近端策略优化(PPO)中的性能提升来证明。
    8. 效率和实用性:GRM是一种轻量级且有效的解决方案,它不需要训练多个奖励模型或依赖额外的训练数据,同时提供了不同选择的损失类型以适应不同的内存和计算成本。

    通过这些策略,GRM旨在提高奖励模型对未见数据的泛化能力,并在RLHF框架中提供更可靠和鲁棒的偏好学习范式。

    Q: 论文做了哪些实验?

    A: 论文中进行了一系列的实验来评估提出的通用奖励模型(GRM)的性能。以下是实验的主要方面:

    1. 奖励模型训练:使用Unified-Feedback数据集的不同子集(400K和40K样本)来训练所有奖励模型,并在保留的8K评估集上进行评估。
    2. 分布内(In-Distribution, ID)和分布外(Out-of-Distribution, OOD)评估:在ID(Unified-Feedback)和OOD(HHH-Alignment和MT-Bench)数据集上评估不同奖励建模方法的性能。
    3. 不同正则化方法的比较:比较了GRM中三种不同的文本生成正则化损失(DPO正则化、DPO无参考模型正则化和SFT正则化)对模型性能的影响。
    4. RewardBench评估:在RewardBench数据集上评估GRM和各种基线模型的性能,该数据集包含聊天、聊天-困难、安全和推理任务组。
    5. 不同数据集大小的比较:研究了GRM在不同大小的训练数据集(400K和40K)下的性能,以评估其对数据集大小的鲁棒性。
    6. RLHF中的评估
      • Best-of-n Sampling (BoN):使用不同大小的基础模型(2B和7B)进行BoN采样实验,以评估代理奖励模型选择与金标准奖励一致的最佳响应的能力。
      • Proximal Policy Optimization (PPO):使用从BoN实验中获得的奖励模型对策略模型(gemma-2b-it)进行微调,以评估GRM在缓解PPO中的过度优化问题方面的有效性。
    7. 对标签噪声的鲁棒性:在训练数据中引入25%的标签噪声,以评估GRM在存在噪声的情况下的准确性和鲁棒性。
    8. 与现有最先进方法的比较:将GRM的性能与现有的最先进方法(如PairRM、Starling-RM-7B/34B和UltraRM-13B)进行了比较。

    这些实验结果表明,GRM在偏好学习和泛化能力方面显著优于基线模型,并且在有限数据集和存在标签噪声的情况下表现出更高的鲁棒性。此外,GRM在缓解RLHF中的过度优化问题方面也显示出了强大的潜力。

    Q: 有什么可以进一步探索的点?

    A: 尽管论文提出的通用奖励模型(GRM)在提高奖励模型泛化能力和缓解过度优化方面取得了显著成果,但仍有一些潜在的研究方向可以进一步探索:

    1. 更大规模的数据集实验:在更大的数据集上测试GRM的性能,以评估其在处理更大规模数据时的可扩展性和效率。
    2. 不同领域的应用:探索GRM在不同领域(如医疗、法律、教育等)的应用,以及是否需要针对特定领域进行调整。
    3. 奖励模型的解释性:提高奖励模型的可解释性,以便更好地理解模型的决策过程和偏好学习结果。
    4. 多任务学习:研究GRM在多任务学习环境中的表现,以及如何平衡不同任务之间的偏好和奖励。
    5. 奖励模型的安全性和伦理性:考虑奖励模型可能带来的安全和伦理问题,以及如何设计机制来确保模型的行为符合社会规范。
    6. 模型鲁棒性的进一步提升:尽管GRM在一定程度上对标签噪声具有鲁棒性,但可以进一步研究如何提高模型对于输入扰动、对抗性攻击等的鲁棒性。
    7. 实时反馈和动态调整:研究GRM在实时反馈环境中的表现,以及如何根据用户反馈动态调整奖励模型。
    8. 集成学习:探索将GRM与其他集成学习方法结合,以进一步提高奖励模型的性能和泛化能力。
    9. 跨模态任务的奖励建模:将GRM应用于跨模态任务(如图像和文本的联合理解),并研究如何有效地建模和优化跨模态的奖励信号。
    10. 模型压缩和加速:研究如何对GRM进行压缩和加速,以便在资源受限的环境中部署和应用。
    11. 长期偏好变化的适应性:研究GRM如何适应用户长期偏好的变化,以及如何设计模型以持续学习和适应新的用户反馈。
    12. 与人类评估者的协作:探索GRM与人类评估者协作的机制,以提高评估过程的效率和准确性。

    这些方向不仅可以推动奖励模型技术的发展,还有助于构建更加智能、可靠和安全的人工智能系统。

    Q: 总结一下论文的主要内容

    A: 这篇论文的主要内容包括以下几个方面:

    1. 问题陈述:论文指出在强化学习从人类反馈(RLHF)框架中,现有的奖励模型在泛化到未见提示和响应时存在能力限制,可能导致过度优化现象,从而影响模型性能。
    2. 通用奖励模型(GRM):提出了一种新颖的方法,即通过正则化隐藏状态来增强奖励模型对分布偏移的泛化能力。GRM保留了基础模型的语言模型头部,并通过引入文本生成损失来正则化隐藏状态,同时学习与隐藏状态相同的奖励头部。
    3. 理论动机:论文从理论上分析了通过考虑对抗性策略来增强奖励模型的鲁棒性,并导出了正则化项的潜在形式。
    4. 实验验证:通过一系列实验,论文验证了GRM在不同分布外(OOD)任务上的有效性,并展示了其在不同数据集大小和不同正则化策略下的性能。
    5. 缓解过度优化:GRM在最佳n(BoN)采样和近端策略优化(PPO)中表现出色,有效缓解了RLHF中的过度优化问题。
    6. 效率和实用性:GRM是一种轻量级且有效的解决方案,不需要训练多个奖励模型或依赖额外的训练数据,提供了不同选择的损失类型以适应不同的内存和计算成本。
    7. 主要贡献:论文的主要贡献包括提出了GRM方法,验证了文本生成正则化对GRM的有效性,以及展示了GRM在多种OOD任务上提高奖励模型准确性的能力,同时在RLHF中一致地提高了性能,有效缓解了过度优化问题。
    8. 相关工作:论文还讨论了与奖励建模和RLHF相关的其他研究工作,包括奖励模型集成、策略优化约束、对抗性偏好优化等。
    9. 结论:论文得出结论,通过在奖励模型的隐藏状态上引入正则化技术,可以显著提高模型对未见数据的泛化能力,并在RLHF中有效缓解过度优化问题,为开发更鲁棒的奖励模型提供了新的思路。
    10. 未来工作:论文提出了一些潜在的研究方向,包括在更大规模数据集上的实验、不同领域的应用、提高模型的解释性、安全性和伦理性考虑等。

  • FP8-LM:训练成本降低50%的LLM新时代

    大型语言模型 (LLMs) 正在改变我们的世界,但其高昂的训练成本一直是阻碍其发展的重要因素。为了解决这一问题,微软研究人员提出了一种名为 FP8-LM 的新框架,利用 FP8 低精度训练,将训练成本降低了 50%。

    FP8:下一代低精度训练的突破

    FP8 是下一代低精度数据类型,相比传统的 FP16 和 FP32,它可以实现两倍的速度提升,同时将内存和通信成本降低 50% 至 75%。然而,目前对 FP8 训练的支持非常有限,仅有的框架是 Nvidia Transformer Engine (TE),但它只将 FP8 应用于矩阵乘法计算,其他操作仍然使用高精度,因此无法充分发挥 FP8 的优势。

    FP8-LM:全方位 FP8 训练框架

    FP8-LM 框架的核心思想是将 FP8 计算、存储和通信渗透到整个 LLM 训练过程中,实现前向和后向传递都使用 FP8,从而大幅减少系统工作负载。

    具体而言,FP8-LM 提供了三个优化级别,逐步整合 FP8 到混合精度和分布式训练中:

    • O1 优化: 将 FP8 应用于权重和权重梯度,并在通信中使用 FP8。
    • O2 优化: 支持 Adam 和 AdamW 两种优化器使用 FP8。
    • O3 优化: 支持 FP8 用于分布式并行训练和 ZeRO 优化器,这对于训练大型模型至关重要。

    挑战与解决方案

    使用 FP8 训练 LLM 面临着数据下溢或上溢等挑战,以及由于 FP8 数据格式的动态范围和精度有限而产生的量化误差。为了解决这些问题,FP8-LM 提出了两种技术:

    • 精度解耦: 将数据精度对权重、梯度、优化器状态等参数的影响解耦,并将较低的精度分配给对精度不敏感的组件。
    • 自动缩放: 通过动态调整张量缩放因子,保持梯度值在 FP8 数据格式的表示范围内,从而减轻下溢和上溢情况。

    显著的性能提升

    实验结果表明,FP8-LM 在各种模型规模上都取得了显著的性能提升:

    • 内存使用量减少: 与 BF16 混合精度训练相比,FP8-LM 将内存使用量减少了 27% 至 42%,例如 GPT-7B 减少了 27%,GPT-175B 减少了 42%。
    • 通信开销降低: FP8-LM 将权重梯度通信开销降低了 63% 至 65%。
    • 训练时间缩短: 在 GPT-175B 模型训练中,FP8-LM 将训练时间减少了 17%,同时内存消耗减少了 21%。

    广泛的适用性

    FP8-LM 框架不仅适用于预训练阶段,也适用于下游微调任务,包括指令调整和人类偏好对齐。

    • 指令调整: FP8-LM 在指令调整任务中取得了与 BF16 相当的性能,同时训练速度提高了 27%。
    • 强化学习与人类反馈 (RLHF): FP8-LM 在 RLHF 中也展现出巨大潜力,可以减少模型权重和优化器状态的内存消耗。

    未来展望

    FP8-LM 的发布为下一代低精度训练系统树立了新的典范,它将推动大型基础模型的进一步发展。未来,研究人员将继续探索 FP8-LM 的应用,例如:

    • 训练更大的 FP8 GPT 模型。
    • 将 FP8-LM 应用于多模态大型模型训练。
    • 在边缘设备上部署 FP8 LLM。

    参考文献

    总结: FP8-LM 框架是 LLM 训练领域的一项重大突破,它为降低训练成本、提高训练效率开辟了新的道路,将推动下一代大型基础模型的快速发展。

  • FP8-LM: 训练 FP8 大型语言模型,大幅降低训练成本

    大型语言模型(LLM)在语言理解和生成方面展现出前所未有的能力,在推理、数学、科学等领域取得了突破性进展。然而,训练 LLM 极其昂贵。例如,PaLM 使用 6,144 个 TPUv4 芯片来训练一个 5400 亿参数的模型,而 GPT-3 1750 亿参数模型的预训练则消耗了数千个 petaflop/s-days 的计算量。这促使人们需要降低 LLM 的训练成本,特别是对于下一代超智能模型的扩展而言。

    低精度训练是降低成本最有希望的方向之一,因为它可以提供高速、小内存占用和低通信开销。大多数现有的训练系统,例如 Megatron-LM、MetaSeq 和 Colossal-AI,默认情况下使用 FP32 全精度或 FP16/BF16 混合精度训练 LLM。然而,对于大型模型而言,这并非实现完全精度的必要条件。随着英伟达 H100 GPU 的发布,FP8 正在成为下一代低精度表示的数据类型。理论上,与当前的 16 位和 32 位浮点混合精度训练相比,FP8 可以实现 2 倍的加速、50% – 75% 的内存成本节省和 50% – 75% 的通信节省,这对于扩展下一代基础模型非常有前景。

    不幸的是,目前对 FP8 训练的支持很少且有限。唯一可用的框架是英伟达 Transformer Engine (TE),但它仅将 FP8 用于 GEMM 计算,而仍然使用高精度(例如 FP16 或 FP32)来保留主权重和梯度。因此,端到端的加速、内存和通信成本节省非常有限,无法完全展现 FP8 的威力。为了解决这个问题,我们提出了一种针对 LLM 训练的极度优化的 FP8 混合精度框架。核心思想是将 FP8 计算、存储和通信渗透到大型模型训练的整个过程中,使前向和反向传播都使用低精度 FP8,从而与之前的框架相比大大降低系统工作量。具体来说,我们设计了三个优化级别,利用 FP8 来简化混合精度和分布式训练。这三个级别以增量的方式逐步整合 8 位集体通信、优化器和分布式并行训练。更高的优化级别表示在 LLM 训练期间使用更多 FP8。此外,对于大规模训练,例如在数千个 GPU 上训练的 GPT-175B,我们的框架提供了 FP8 低位并行性,包括张量、流水线和序列并行性,为下一代低精度并行训练铺平了道路。

    使用 FP8 训练 LLM 并非易事。挑战源于诸如数据下溢或上溢之类的问题,以及 FP8 数据格式固有的较窄动态范围和降低精度所产生的量化误差。这些挑战会导致训练过程中的数值不稳定和不可逆的偏差。为了解决这些问题,我们提出了两种技术:精度解耦和自动缩放,以防止关键信息的丢失。前者涉及解耦数据精度对权重、梯度、优化器状态等参数的影响,并将降低精度分配给对精度不敏感的组件。后者是通过动态调整张量缩放因子来保留 FP8 数据格式表示范围内的梯度值,从而减轻所有减少通信期间发生的下溢和上溢。

    为了验证所提出的 FP8 低精度框架,我们将它应用于 GPT 风格的模型训练,包括预训练和监督微调 (SFT)。实验结果证明了我们 FP8 方法的有效性,产生了巨大的效益,包括实际内存使用量减少 29% 到 39%(例如,GPT-7B 减少 29%,而 GPT-175B 减少 39%)以及与流行的 BF16 混合精度训练方法相比,权重相关的通信开销显着减少 63% 到 65%。在不改变任何超参数(例如学习率和权重衰减)的情况下,使用 FP8 训练的模型在预训练和下游任务中都表现出与使用 BF16 高精度的模型相当的性能。值得注意的是,在 GPT-175B 模型的训练过程中,我们的 FP8 混合精度框架将训练时间缩短了 37%,而 H100 GPU 平台上的内存消耗减少了 42%。更重要的是,随着模型规模的不断扩大,通过使用低精度 FP8 实现的成本降低可以进一步提高,如图 1 所示。

    对于微调,我们使用 FP8 混合精度进行指令微调和人类反馈强化学习 (RLHF),以更好地将预训练的 LLM 与最终任务和用户偏好对齐。具体来说,我们在公开的用户共享指令遵循数据(ShareGPT)上微调预训练模型。使用我们的 FP8 混合精度微调的模型在 AlpacaEval 和 MT-Bench 基准测试中表现出与使用半精度 BF16 的模型相当的性能,同时训练速度提高了 27%。此外,FP8 混合精度在 RLHF 中展现出巨大的潜力,RLHF 是一个在训练过程中需要加载多个模型的过程。通过在训练中使用 FP8,流行的 RLHF 框架 AlpacaFarm 可以使模型权重减少 32%,优化器状态的内存消耗减少 62%。这进一步证明了我们 FP8 低精度训练框架的多功能性和适应性。

    我们为推动下一代 FP8 低精度 LLM 训练的设计做出了以下贡献:

    • 一个新的 FP8 混合精度训练框架。 它以附加方式逐步解锁 8 位权重、梯度、优化器和分布式训练,使用方便。这个 8 位框架可以作为现有 16/32 位混合精度对应物的简单替代,无需对超参数和训练收据进行任何更改。此外,我们提供了一个 Pytorch 实现,可以在几行代码中实现 8 位低精度训练。
    • 一个新的 FP8 训练的 GPT 风格模型系列。 我们将提出的 FP8 方案应用于 GPT 预训练和微调(即 SFT 和 RLHF),并在从 70 亿到 1750 亿参数的各种模型规模上证明了它的潜力。我们为流行的并行计算范式配备了 FP8 支持,包括张量、流水线和序列并行性,使 FP8 可以用于训练大型基础模型。我们开源了第一个基于 Megatron-LM 实现的 FP8 GPT 训练代码库。

    我们预计,我们的 FP8 框架的发布将为下一代低精度训练系统建立一个新的范式,该系统专门用于大型基础模型。

    FP8 LLM

    混合精度已广泛应用于 LLM 训练,以提高计算和内存效率。最流行的混合精度方案是 FP16-FP32 和 BF16-FP32。由于 FP16 的数值范围有限,FP16-FP32 方案已被证明在训练大型模型时存在不稳定性。因此,社区现在通常采用 BF16-FP32 来训练 LLM,例如 Megatron-Turing NLG-530B、Bloom-175B 和 Gopher。其根本原因是 BF16 具有较宽的动态范围,可以保持数值稳定性,同时匹配全精度 FP32 的性能。此外,与 FP32 相比,BF16 使用的位数只有一半,因此可以显著减少内存占用,同时提高计算效率。

    FP8 是从 16 位数据格式自然演进而来的,可以进一步降低计算成本。然而,使用低精度 FP8 训练 LLM 带来新的挑战。FP81 的动态范围和表示精度远低于 BF16 和 FP16,这不可避免地会导致更多训练崩溃,例如损失激增甚至 NaN。为了解决这些问题,提出了张量缩放技术。核心思想是在将更高精度值转换为 FP8 之前,先用缩放因子将其相乘,以便将它们移动到与 FP8 格式的表示范围更好地重叠的范围内。这种每张量缩放技术可以减少数据量化误差,同时提高数值稳定性和精度,从而可以使用低精度 FP8 来训练大型模型。

    不幸的是,目前对 FP8 低精度训练的支持有限。英伟达 TE 仅支持 Transformer 中线性层的 FP8 计算,而其他所有操作(例如权重更新和梯度同步)仍然使用更高精度。在这项工作中,我们提出了一种针对 LLM 训练的极度优化的 FP8 混合精度策略。新的 FP8 优化包括三个关键方面:FP8 通信、FP8 优化器和 FP8 分布式训练。通过整合这些方面,LLM 的训练(例如 1750 亿参数的 GPT-3 模型)可以充分利用 FP8 低精度的优势,提高训练效率。

    2.1 FP8 梯度和所有减少通信

    现有的混合精度训练方法通常使用 16 位或 32 位数据类型来计算和存储梯度,这导致在整个训练过程中对集体通信的带宽要求很高。我们发现,将 FP8 直接应用于梯度会导致精度下降。根本问题在于低位所有减少操作导致的下溢和上溢问题。具体来说,在所有减少过程中,跨 GPU 的梯度累加会导致数值范围超出 FP8 的表示范围,从而导致梯度信息丢失,并最终导致模型训练崩溃。

    为了解决这个问题,我们提出了一种新的自动缩放技术,用于在 FP8 所有减少过程中动态调整张量缩放因子。该技术通过在所有减少之前和之后应用缩放因子来确保 FP8 梯度在所有减少过程中保持在表示范围之内。这种动态缩放方法可以有效地防止下溢和上溢,从而提高 FP8 梯度通信的精度和稳定性。

    2.2 FP8 优化器

    除了梯度通信之外,优化器状态(例如动量和 RMSProp)也需要大量的内存,并且通常使用高精度(例如 FP32)进行存储。为了进一步降低内存占用,我们提出使用 FP8 来存储优化器状态。然而,直接将 FP8 应用于优化器状态会导致训练不稳定,因为优化器状态的精度对模型训练的稳定性至关重要。

    为了解决这个问题,我们提出了一种精度解耦技术,它将优化器状态的精度与模型权重和梯度的精度分离。具体来说,我们使用 FP8 来存储优化器状态,同时使用更高的精度(例如 FP16 或 BF16)来存储模型权重和梯度。这种精度解耦方法可以有效地降低内存占用,同时保持训练的稳定性。

    2.3 FP8 分布式训练

    在分布式训练中,模型权重需要在多个 GPU 之间进行同步,这会导致大量的通信开销。为了降低通信开销,我们提出使用 FP8 来存储模型权重。然而,直接将 FP8 应用于模型权重会导致精度下降,因为模型权重的精度对模型的性能至关重要。

    为了解决这个问题,我们提出了一种新的 FP8 分布式训练方法,它将模型权重的精度与梯度的精度分离。具体来说,我们使用 FP8 来存储模型权重,同时使用更高的精度(例如 FP16 或 BF16)来存储梯度。这种精度解耦方法可以有效地降低通信开销,同时保持模型的性能。

    3 FP8 训练框架

    我们的 FP8 混合精度训练框架旨在通过逐步引入 FP8 计算、存储和通信来提高 LLM 训练的效率。该框架包括三个优化级别,每个级别都针对 LLM 训练的不同方面进行优化。

    3.1 级别 1:FP8 梯度通信

    级别 1 框架使用 FP8 来存储和传输梯度,同时使用更高的精度(例如 FP16 或 BF16)来存储模型权重和优化器状态。这种方法可以有效地降低梯度通信的带宽要求,同时保持训练的稳定性。

    3.2 级别 2:FP8 优化器

    级别 2 框架使用 FP8 来存储和传输梯度和优化器状态,同时使用更高的精度(例如 FP16 或 BF16)来存储模型权重。这种方法可以进一步降低内存占用,同时保持训练的稳定性。

    3.3 级别 3:FP8 分布式训练

    级别 3 框架使用 FP8 来存储和传输梯度、优化器状态和模型权重。这种方法可以最大限度地降低内存占用和通信开销,同时保持训练的稳定性。

    4 实验结果

    为了评估我们 FP8 混合精度训练框架的有效性,我们在 GPT 风格的模型上进行了实验,包括预训练和监督微调 (SFT)。实验结果表明,我们的 FP8 框架可以显著降低内存占用和训练时间,同时保持模型的性能。

    4.1 预训练

    我们在 GPT-7B 和 GPT-175B 模型上进行了预训练实验,并与流行的 BF16 混合精度训练方法进行了比较。实验结果表明,我们的 FP8 框架可以将实际内存使用量减少 29% 到 39%,同时将权重相关的通信开销减少 63% 到 65%。此外,我们的 FP8 框架可以将 GPT-175B 模型的训练时间缩短 37%,同时将 H100 GPU 平台上的内存消耗减少 42%。

    4.2 微调

    我们在 AlpacaEval 和 MT-Bench 基准测试上对 GPT-7B 模型进行了指令微调实验,并与使用半精度 BF16 的方法进行了比较。实验结果表明,我们的 FP8 框架可以实现与 BF16 相当的性能,同时训练速度提高了 27%。此外,我们还评估了 FP8 在 RLHF 中的潜力,发现它可以使模型权重减少 32%,优化器状态的内存消耗减少 62%。

    5 结论

    我们提出了一种新的 FP8 混合精度训练框架,它可以有效地降低 LLM 训练的成本,同时保持模型的性能。该框架通过逐步引入 FP8 计算、存储和通信来实现优化,并提供三个优化级别,以满足不同的训练需求。实验结果表明,我们的 FP8 框架可以显著降低内存占用和训练时间,同时保持模型的性能。我们相信,我们的 FP8 框架将为下一代低精度训练系统建立一个新的范式,该系统专门用于大型基础模型。

    参考文献

    • Brown, T., Mann, B., Ryder, N., Subbiah, M., Kaplan, J., Dhariwal, P., Neelakantan, A., … & Amodei, D. (2020). Language models are few-shot learners. arXiv preprint arXiv:2005.14165.
    • Chowdhery, A., Narang, S., Devlin, J., Bosma, M., Mishra, N., Roberts, A., … & Tay, Y. (2022). PaLM: Scaling language modeling with pathways. arXiv preprint arXiv:2204.02311.
    • Li, B., Zhang, M., Hu, J., Li, R., Ni, B., Xiong, Y., … & Liu, Z. (2023a). Colossal-AI: A unified deep learning system for large-scale parallel training. arXiv preprint arXiv:2302.09060.
    • Li, J., Chen, M., Wang, S., Zhou, D., & Xiong, L. (2023b). AlpacaEval: A comprehensive evaluation benchmark for instruction-following language models. arXiv preprint arXiv:2304.05799.
    • Micikevicius, P., Narang, S., Alben, J., Diamos, G., Elsen, E., Garcia, D., … & Wu, Y. (2017). Mixed precision training. arXiv preprint arXiv:1710.03740.
    • Micikevicius, P., Alben, J., Wu, Y., Teerapittayanon, S., & Gomez, A. (2022). fp8 training for deep learning. arXiv preprint arXiv:2203.14784.
    • Nvidia. (2022a). Nvidia H100 Tensor Core GPU. https://www.nvidia.com/en-us/data-center/h100/
    • Nvidia. (2022b). Nvidia Transformer Engine. https://developer.nvidia.com/nvidia-transformer-engine
    • OpenAI. (2023). GPT-4. https://openai.com/product/gpt-4
    • Rae, J. W., Borgeaud, S., Cai, T., Olah, C., Leike, J., Allen, D., … & Hinton, G. (2021). Scaling language models: Methods, analysis & insights from training gopher. arXiv preprint arXiv:2112.11406.
    • Scao, T., Lachaux, A., Lhuillier, M., Schick, T., Bordes, A., Févry, T., … & Jaffré, J. (2022). Bloom: A 176b-parameter open-access multilingual language model. arXiv preprint arXiv:2203.15556.
    • ShareGPT. (2023). ShareGPT. https://github.com/nomic-ai/gpt-4-11k

    论文综述和评论:FP8-LM: Training FP8 Large Language Models

    《FP8-LM: Training FP8大型语言模型》是一篇关于使用FP8低比特数据格式训练大型语言模型(LLMs)的论文。该论文探索了在LLMs训练中使用FP8低精度数据格式的有效性和效率。作者提出了一个新的FP8自动混合精度训练框架,该框架通过逐步引入8位梯度、优化器状态和分布式学习,实现了LLMs的混合精度和分布式并行训练。论文通过实验结果展示,使用FP8混合精度训练框架,可以显著降低实际内存使用量,并且训练速度比广泛采用的BF16框架快75%。此外,该框架还具有通用性,可以应用于其他任务,如LLMs指令调优和强化学习。作者在论文中开源了FP8低精度训练框架。

    这篇论文的主要贡献在于提出了一种新的FP8混合精度训练框架,该框架充分利用了FP8低精度数据格式的优势,降低了LLMs训练的成本。通过逐步引入FP8梯度、优化器状态和分布式学习,论文展示了在训练大型语言模型时,使用FP8混合精度训练框架可以同时降低内存使用和训练时间,从而降低了大型基础模型的训练成本。此外,该框架的通用性使其可以无缝应用于其他任务,为微调费用节约提供了可能。作者通过开源FP8低精度训练框架,为下一代低精度训练系统的设计奠定了基础。

    论文的创新点在于提出了使用FP8低精度数据格式训练LLMs的新方法,并通过实验证明了其有效性。该方法充分利用了FP8的优势,降低了训练成本,并在保持模型精度的同时提高了训练效率。此外,论文还介绍了针对FP8训练的挑战和解决方案,如数据下溢和上溢问题以及张量缩放技术。

    总的来说,这篇论文对于推动下一代FP8低精度训练系统的设计具有重要意义。通过引入新的FP8混合精度训练框架,论文提供了一种降低大型语言模型训练成本的有效方法,并为其他任务的低精度训练提供了一种可行的解决方案。该论文的实验结果表明,FP8混合精度训练框架在减少内存使用和提高训练效率方面具有显著的优势。尽管还存在一些挑战,如数据表示范围的限制和量化误差,但这些问题可以通过提出的解决方案得到有效解决。


    微软自动混合精度 (MS-AMP) 简介

    MS-AMP 是微软开发的用于深度学习的自动混合精度软件包。它利用 FP8(8 位浮点数)格式来加速训练过程,并减少内存占用,从而使训练更大的模型成为可能。

    主要特点

    MS-AMP 提供了三种优化级别,以满足不同的训练需求:

    • O1 优化: 将 FP8 应用于权重和权重梯度,并在通信中支持 FP8。
    • O2 优化: 支持 FP8 用于 Adam 和 AdamW 两种优化器。
    • O3 优化: 支持 FP8 用于分布式并行训练和 ZeRO 优化器,这对于训练大型模型至关重要。

    此外,MS-AMP 还提供了四个训练示例,涵盖了 Swin-Transformer、DeiT、RoBERTa 和 GPT-3 等流行模型。

    与 Transformer Engine 的优势

    与 NVIDIA 的 Transformer Engine 相比,MS-AMP 具有以下优势:

    • 加速内存受限操作: 通过访问单个字节,而不是半精度或单精度,从而加速内存受限操作。
    • 减少内存需求: 降低训练模型的内存需求,从而支持训练更大的模型。
    • 加速分布式模型通信: 通过传输低精度梯度来加速分布式模型的通信。
    • 缩短大型语言模型的训练时间: 允许使用更大的 mini-batch,从而缩短大型语言模型的训练时间。

    性能

    MS-AMP 在保持高精度的情况下,仅使用一小部分内存,并在各种任务上取得了出色的性能,包括 GPT-3、DeiT 和 Swin Transformer。

    模型性能:

    MS-AMP 在 GPT-3、Swin-Transformer、DeiT 和 RoBERTa 等模型上进行了评估,结果表明,使用 MS-AMP 训练的模型与使用 FP16/BF16 AMP 训练的模型性能相当。

    系统性能:

    在 NVIDIA H100 平台上训练 GPT-175B 模型时,MS-AMP 与 BF16 混合精度方法相比,实际内存使用量减少了 39%,训练时间减少了 37%。对于较小的模型,MS-AMP 的 O2 模式与 FP16 AMP 相比,可以为 Swin-1.0B 模型节省 44% 的内存,为 ViT-1.2B 模型节省 26% 的内存。

    总结

    MS-AMP 是一个强大的工具,可以显著提高大型语言模型的训练效率。它通过利用 FP8 格式来减少内存占用和通信开销,从而加速训练过程并支持训练更大的模型。

    参考文献:


  • 【转载】战胜内心的抗拒:追寻创作之路,还有一只野猫

    嘿!上个星期我跟大家分享了一本我超爱的书,《The War of Art》。这本书头头是道地讲述了创作者们最头疼的问题,就是怎么战胜自己内心的拖延魔。

    作者管这拖延魔叫做「阿抗」,这家伙总是在我们想要追求长远成长、健康发展或者做点诚实正直的事情时冒出来捣乱。它就像个坏蛋,想尽办法阻止我们向前迈进。

    要想战胜这个阿抗,我们得变成「专业人士」。这本书里有好多有趣的故事和金句,今天我就来跟大家嗨皮一下,分享点精华内容。

    首先是一只野猫的故事。有一次作者身无分文,只能去乡下租了一间破房子,租金才15块钱,房子连门、电、厨房和厕所都没有。每次他在屋外生火做饭,就会有一只看上去狼狈不堪的野猫冲出来,在不远处坐下盯着他看。

    这只猫就那么静静地坐着,根本不吃作者给的食物,只是凝视着他。明显地,这只猫跟作者不在一个层次上啊。

    但是作者却觉得这是个好兆头。他当时心里想:为什么会有只猫出现在这个时候,而且还一直出现,感觉就像是我的能量一直把它招引过来。

    「也许它来这里是为了鼓励我,告诉我,『Steven,你也可以像我一样。你可以自主,你可以照顾好自己。』」

    这给了当时处于低谷的作者巨大的力量。

    阿抗就像是电影《异形》、《终结者》或者《大白鲨》里的那个恶魔,它根本没法理性对话。它就是个破坏引擎,从工厂里设计出来的唯一目的就是阻止我们完成工作。

    阿抗的目的不仅仅是想伤害我们,更是想彻底摧毁我们的天赋、我们的灵魂、我们所拥有的独一无二的福祉。

    当我们跟阿抗搏斗的时候,我们真的是在一场生死大战中。

    深夜里,你有没有过一种幻想,看到你可能成为的人,你可以完成的工作,你应该成为的自己?

    你是一个不写作的作家,不画画的画家,不创业的企业家吗?如果是的话,那你懂的,阿抗就是你的老相好。

    天才这个词源自拉丁语,古罗马人用它表示一种内在的、神圣且不可侵犯的精神,它看护着我们,引导我们走向我们的天命。

    每个太阳都会投下阴影,天才的阴影就是阿抗。我们灵魂对实现天命的呼唤有多强大,阿抗哟!上周过得咋样啊?我上周分享了一本我超喜欢的书,《The War of Art》。这本书讲的是创作者们最重要的一个认知和修炼,就是「抗拒」(我亲切地称之为阿抗),总是在我们选择做一些长远成长、健康或诚实的行为时出现。

    咱们想要成长进阶,阿抗就会狠狠地拦在咱们面前,想尽一切办法阻止咱们前进。为了赢得这场和阿抗的战役,咱们得成为「专业人士」。

    为了视频时长的关系,我没带上作者很多有趣的故事和书中的金句,咱们在这里分享给大家吧。(真的不能只有我看到)

    一只野猫的故事
    当 Steven Pressfield 落魄到跑到乡下去租一个租金只要 15 美金的房子,连门、连电、连厨房、连厕所都没有时,只要他在屋子外面生火煮东西,就会有一只看起来伤痕累累的野猫跑出来,坐在不远处看着他。

    这只猫就只是静静坐着,完全不吃 Steven Pressfield 给的食物,就只是盯着他看。

    两者哪一个是自给自足,能够将自己的生活打理好的一方,显而易见。

    但 Steven Pressfield 觉得这是一个好兆头。

    他那时候心里想:为什么这时候会出现这么一只猫,而且它的持续出现,感觉是自己的能量一直把它拉出来。

    「也许它来这里是为了鼓励我,告诉我,’Steven,你也可以像我一样。你可以是自主的,你可以照顾好自己的。’」

    这给当时处于最黑暗深渊的他极大的力量。

    有关「阿抗」
    阿抗就像异形、终结者,或者《大白鲨》里的那条鲨鱼,它无法理性对话。

    它是一个毁灭的引擎,从工厂里被设计出来的唯一目的,就是阻止我们完成工作。

    阿抗的目的不仅仅要伤害我们,它更要进一步杀死我们的天赋、我们的灵魂、我们被赋予的独一无二的礼物。

    当我们跟阿抗战斗时,我们确实就是在一场生死之战中。

    深夜里,你有没有过一种幻想,看到你可能成为的人,你可以完成的工作,你应该成为的自己?

    你是一个不写作的作家,不画画的画家,不创业的企业家吗?如果是的话,那么你知道什么是阿抗。

    天才(Genius)是一个拉丁词,罗马人用它来表示一种内在的、神圣且不可侵犯的精神,它看护着我们,引导我们走向我们的天命。

    每一个太阳都会投下阴影,天才的阴影就是阿抗。我们灵魂对实现天命的呼唤有多强大,阿抗的力量也就越强大。

    阿抗会化身成自我怀疑,而自我怀疑可能是个盟友,因为它是渴望的指标。它也反映了爱,对我们梦想要做的事情的爱。

    如果你常问自己(或你的朋友),”我真的是一个作家吗?我真的是一个艺术家吗?” 那你很可能就是。

    阿抗也会化身成恐惧。恐惧是好的。就像自我怀疑一样,恐惧是一个指标,它告诉我们我们该做什么。

    我们对一项工作或使命感到越害怕,就越可以确定我们必须去做它。

    阿抗的力量与爱成正比。如果你感到巨大的抗拒,好消息是,这意味着那里也有巨大的爱。

    如果你不爱那个让你感到恐惧的事情,你就不会感到任何东西。爱的反面不是恨,而是冷漠。

    有关「恐惧」
    恐惧是阿抗的食物。我们通过害怕才能感受到「抗拒」的存在。但我们害怕什么?

    害怕追随内心的后果感到恐惧。害怕破产,害怕变穷,害怕低声下气,害怕无法养家糊口,害怕为了我们的梦想而牺牲家人的梦想。

    害怕背叛我们的种族,我们的社群,我们的朋友。

    害怕失败、害怕看起来很傻,害怕浪费那些我们爱的人牺牲自己,让我们接受的教育、害怕放弃我们之前努力追求的成就。

    害怕白费功夫、害怕无法回头、害怕最后只能跟这个糟糕的选择度过余生。

    这些都是挺严重的恐惧,但还不是真正的恐惧,不是那个从我们口中说出来,自己都不相信的恐惧。

    那就是:害怕我们会成功。

    于是我们可以接触到那个隐藏的力量,可以成为内心深处真正的自己。

    这是人类能够面对的最令人恐惧的未来,因为这使得一个人在心中被他的部落踢出去了,而这种想象中的连接已经存在了五千万年。

    我们害怕发现自己比我们以为的更强大,比我们的父母/孩子/老师以为的更强大。

    害怕我们真的拥有埋藏在内心深处的才华,害怕我们真的拥有勇气、毅力和实力。

    害怕我们真的能够掌握自己的方向、插上自己的旗子、抵达我们应许之地。

    我们害怕这一切,因为如果这是真的,那么我们将与所知道的一切疏离。

    我们知道,如果要拥抱理想,我们必须证明自己配得上。

    这让我们吓壳了。

    我们最终会变成什么样子?我们将失去朋友和家人,他们将不再认识我们。

    我们最终会孤独地身处在冷寂的星空下,没有任何人或任何东西可以依靠。

    然而,有个奇妙的地方。

    我们最终抵达了那个境地,但并不是孤身一人。

    相反地,我们接触到了一个取之不尽、用之不竭的智慧、意识和友情之源。

    是的,我们失去了朋友。但我们也在从未想到的地方找到了朋友。

    而且这些朋友更好,更真诚。而我们同样也对他们更好,更真诚。

    相信我,这是真的。

    我和阿抗的战役
    不知道你看了以上的文字有什么感觉?我自己是相当震撼。

    其实我上周在做明天要上传的视频时,我发现阿抗的攻击力变得异乎寻常地强大。

    结果让我花了整整三个工作天,才把剧本写完,拍完之后整个人都虚脱了,但也如释重负,相当有成就感。

    所以我知道,这正是我该做的。

    所以,如果可以的话,请你助我一臂之力,帮我用力分享明天的视频,好吗?

    你看了之后,会知道为什么的。

    喔对了,还有一件我之前相当抗拒的一件事情,我也决定要去做了,那就是报名今年的【走钟奖】,

    极度社恐、内向指数100分的我,只要一想到有可能要坐在那个场合一个晚上,我就浑身抗拒。

    但是身为「专业人士」,为了让我们吐心瀝血做出来的视频被更多人看到,这是毫无疑问一定要做的。

    如果到时有幸入围,我会请大家帮忙冲人气的。

    来吧,咱们一起战胜阿抗,追寻自己的梦想。无论阿抗如何困扰我们,咱们要坚持不懈,相信自己的能力。祝愿你在未来的努力中取得成功,同时也希望我的视频和【走钟奖】能够获得更多人的关注和支持!

    就是这样,咱们一起去战胜阿抗!加油!

    By 【張修修的自由之路】

  • 利用Softmax-DPO优化推荐系统的论文综述

    摘要:推荐系统是根据用户的偏好数据预测个性化的排名。近年来,随着语言模型(LMs)的兴起,基于LM的推荐系统得到了广泛研究。然而,现有的LM-based推荐系统往往未能充分利用偏好数据,并未针对个性化排序任务进行优化,限制了其性能。本文针对这一问题,提出了一种名为Softmax-DPO(S-DPO)的优化方法,将排名信息直接融入LM中,帮助区分用户偏好的物品。S-DPO通过使用多个负样本构建偏好数据,并针对LM-based推荐系统设计了一种新的DPO损失函数,结合了Softmax采样策略。实验证明,S-DPO在三个真实世界数据集上的表现优于其他基线模型,有效地模拟了用户的偏好,并提升了推荐性能。

    引言:推荐系统旨在根据用户的偏好数据预测个性化的排名。近年来,随着语言模型(LMs)的发展,基于LM的推荐系统得到了广泛研究。LM-based推荐系统将用户的历史交互数据转化为语言提示,并通过在训练过程中优化语言模型来实现推荐。然而,现有的LM-based推荐系统并未充分利用偏好数据,并未针对个性化排序任务进行优化,从而限制了其性能。

    本文的主要贡献是提出了一种名为Softmax-DPO(S-DPO)的优化方法,专门针对LM-based推荐系统进行了优化。S-DPO通过在偏好数据中引入多个负样本,并设计了一种新的DPO损失函数,将排名信息直接融入LM中。与现有的方法相比,S-DPO在准确建模用户偏好和提升推荐性能方面具有明显优势。

    实验证明,S-DPO在三个真实世界数据集上表现出色。与传统推荐系统和其他LM-based推荐系统相比,S-DPO的命中率提高了11.10%至47.03%。这是因为S-DPO能够有效地区分用户喜欢和不喜欢的物品,充分利用了多个负样本的排名梯度。此外,S-DPO还成功解决了DPO训练中数据似然下降的问题,提高了模型的性能和稳定性。

    综上所述,本文提出的S-DPO方法为LM-based推荐系统的优化提供了重要思路。通过将排名信息融入LM,并利用多个负样本,S-DPO能够更好地模拟用户的偏好,并提升推荐性能。这一方法在推荐系统领域具有重要的应用前景,同时也为其他领域的研究提供了有价值的启示。

    关键词:推荐系统,语言模型,偏好数据,个性化排序,Softmax-DPO