You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

预训练FastText日文维基模型向量与英文向量无法正常对齐问题

解决FastText日文维基词向量与英文Word2Vec对齐效果异常的问题

可能的原因

  • 向量尺度不统一:Google News Word2Vec、通用爬虫FastText向量均已做L2归一化(模长<1),但日文维基FastText向量未归一化(模长>1)。正交Procrustes变换对向量尺度敏感,未归一化的向量会导致变换矩阵计算偏差,直接拉低对齐后的相似度。
  • .bin向量提取错误:FastText的.bin文件包含完整模型参数(含子词信息),而.txt文件是导出的归一化词向量。若手动解析.bin文件时未处理模型内置的归一化逻辑,会拿到未经过最终调整的原始向量,导致.bin与.txt版本向量不一致。

解决方案

1. 对齐前统一归一化所有向量

先对所有向量做L2归一化,确保尺度一致后再执行Procrustes变换:

import numpy as np
from numpy.linalg import norm
from scipy.linalg import orthogonal_procrustes

# 归一化英文向量
normalized_eng = english_vectors / norm(english_vectors, axis=1, keepdims=True)
# 归一化日文维基向量
normalized_jpn_wiki = japanese_wiki_vectors / norm(japanese_wiki_vectors, axis=1, keepdims=True)

# 计算变换矩阵并对齐
R, _ = orthogonal_procrustes(normalized_jpn_wiki, normalized_eng)
aligned_jpn_wiki = normalized_jpn_wiki @ R

2. 用官方FastText库提取.bin向量

避免手动解析.bin文件的误差,使用官方库提取已归一化的词向量:

import fasttext

# 加载日文维基FastText模型
model = fasttext.load_model('ja/wiki.ja.bin')
# 获取词向量(官方方法返回的是归一化后的结果)
japanese_wiki_vectors = np.array([model.get_word_vector(word) for word in japanese_words])

提取后对比.txt文件的向量,确认两者是否一致。

3. 验证双语词对质量

随机抽样检查用于对齐的英文-日文词对是否语义严格对应(比如"dog"对应"犬"而非其他歧义词)。若词对存在大量语义偏差,即使向量处理正确,相似度也会偏低。

4. 补充中心化处理(可选)

正交Procrustes变换的最优效果依赖于向量中心对齐(均值为0),可在归一化后添加中心化步骤:

# 中心化向量
centered_eng = normalized_eng - normalized_eng.mean(axis=0)
centered_jpn_wiki = normalized_jpn_wiki - normalized_jpn_wiki.mean(axis=0)

# 基于中心化向量计算变换矩阵
R_centered, _ = orthogonal_procrustes(centered_jpn_wiki, centered_eng)
aligned_jpn_wiki_centered = centered_jpn_wiki @ R_centered

5. 重新评估对齐效果

用处理后的向量重新计算余弦相似度和皮尔逊相关系数:

from scipy.stats import pearsonr

# 计算余弦相似度
cosine_sims = [np.dot(eng_vec, jpn_vec) for eng_vec, jpn_vec in zip(normalized_eng, aligned_jpn_wiki)]
# 计算皮尔逊相关系数(需对应基准数据,若无则可直接用相似度分布验证)
corr, p_val = pearsonr(cosine_sims, reference_scores)  # reference_scores替换为你的基准标注或合理对照值

内容的提问来源于stack exchange,提问作者dcann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 02:37:46