Closed huhk-sysu closed 3 years ago
苏老师您好!有幸读到您对BERT-flow的分析和“简化",我有一些小小的疑问:
在您的代码中,您把训练集、测试集的句子向量都用于计算kernel和bias,这个过程是假定已经获得了完整的测试集的。 在我的场景中,测试的句子是一个个给出来的,没办法根据测试集的向量计算kernel和bias,这种情况应该怎么办?假设训练集和测试集是同源的,是否可以仅使用训练集的数据计算kernel和bias,并直接应用到输入的单个测试句子,对其做白化?
可以只用训练集的,在STS-B上我比较过,没什么差别。
关键是,这个做法本身就是无监督的啊,原则上不存在什么训练集和测试集的区分了,你只需要用你能获取到的数据集来算均值和协方差矩阵就行了,如果数据量特别特别大,你还可以用流式的方法(滑动平均等)来算这两者。
而且我所给的参考代码很清晰,也没多少行,很容易复现的,如果有什么疑惑,自己多测一下就知道答案了。
谢谢指教。
苏老师您好!有幸读到您对BERT-flow的分析和“简化",我有一些小小的疑问:
在您的代码中,您把训练集、测试集的句子向量都用于计算kernel和bias,这个过程是假定已经获得了完整的测试集的。 在我的场景中,测试的句子是一个个给出来的,没办法根据测试集的向量计算kernel和bias,这种情况应该怎么办?假设训练集和测试集是同源的,是否可以仅使用训练集的数据计算kernel和bias,并直接应用到输入的单个测试句子,对其做白化?