GermanWordEmbeddings

GermanWordEmbeddings

开源德语词向量训练与评估工具包

GermanWordEmbeddings是一个开源的德语词向量模型训练与评估工具包。该工具包基于gensim的word2vec实现,提供了从语料库获取、预处理到模型训练和评估的完整流程。工具包支持语法和语义特征评估,可用于德语自然语言处理研究。项目还提供了一个基于德语维基百科和新闻文章训练的预训练模型。

词嵌入德语语料库模型训练评估Github开源项目

德语词嵌入

许可证 <a href="https://devmount.github.io/GermanWordEmbeddings/#download" title="german.model 下载次数"> 下载量 </a>

关于英语语料库词嵌入训练的研究已有很多。这个工具包通过gensim的word2vec对德语语料库应用深度学习,以训练和评估德语语言模型。项目概述、评估结果和下载链接可以在项目网站或直接在本仓库中找到。

本项目基于MIT许可证发布。

  1. 开始使用
  2. 获取语料库
  3. 预处理
  4. 训练模型
  5. 词汇表
  6. 评估
  7. 下载

开始使用 <a name="getstarted"></a>

确保您已安装Python 3以及以下库:

pip install gensim nltk matplotlib numpy scipy scikit-learn

现在您可以下载word2vec_german.sh并在shell中执行,以自动下载此工具包和相应的语料库文件,并进行模型训练和评估。请注意,这可能需要大量时间

您也可以克隆此仓库并使用我已经训练好的模型来尝试评估和可视化。

如果您只想了解不同Python脚本的工作原理,请查看代码目录以查看Jupyter Notebook脚本输出示例。

获取语料库 <a name="obtention"></a>

有多种方法可以获取公开可用且免费使用的大型德语语料库:

德语维基百科

wget https://dumps.wikimedia.org/dewiki/latest/dewiki-latest-pages-articles.xml.bz2

统计机器翻译

2007年至2013年的随机德语新闻:

for i in 2007 2008 2009 2010 2011 2012 2013; do wget http://www.statmt.org/wmt14/training-monolingual-news-crawl/news.$i.de.shuffled.gz done

使用此工具包训练的模型基于德语维基百科和2013年的德语新闻。

预处理 <a name="preprocessing"></a>

该工具使用WikipediaExtractor(Giuseppe Attardi的Python脚本,用于过滤Wikipedia XML转储,基于GPLv3许可)和一些shell指令来预处理原始的维基百科XML语料库,以过滤所有XML标签和引号:

wget http://medialab.di.unipi.it/Project/SemaWiki/Tools/WikiExtractor.py python WikiExtractor.py -c -b 25M -o extracted dewiki-latest-pages-articles.xml.bz2 find extracted -name '*bz2' \! -exec bzip2 -k -c -d {} \; > dewiki.xml sed -i 's/<[^>]*>//g' dewiki.xml sed -i 's|["'\''„"‚']||g' dewiki.xml rm -rf extracted

德语新闻已经包含每行一个句子,没有任何XML语法开销。只需要删除引号:

for i in 2007 2008 2009 2010 2011 2012 2013; do gzip -d news.$i.de.shuffled.gz sed -i 's|["'\''„"‚']||g' news.$i.de.shuffled done

之后,可以使用以下选项在这些语料库文件上调用 preprocessing.py 脚本:

标志默认值描述
-h, --help-显示帮助信息并退出
-p, --punctuationFalse过滤标点符号标记
-s, --stopwordsFalse过滤停用词标记
-u, --umlautsFalse将德语变音替换为相应的二合字母
-b, --bigramFalse检测并处理常见的二元词组
-t [ ], --threads [ ]处理器数量工作线程数
--batch_size [ ]32句子处理的批处理大小

使用示例:

python preprocessing.py dewiki.xml corpus/dewiki.corpus -psub for file in *.shuffled; do python preprocessing.py $file corpus/$file.corpus -psub; done

训练模型 <a name="training"></a>

使用 training.py 脚本训练模型,可选参数如下:

标志默认值描述
-h, --help-显示此帮助信息并退出
-s [ ], --size [ ]100词向量的维度
-w [ ], --window [ ]5滑动窗口的大小
-m [ ], --mincount [ ]5考虑一个词的最小出现次数
-t [ ], --threads [ ]处理器数量用于训练模型的工作线程数
-g [ ], --sg [ ]1训练算法:Skip-Gram (1),否则CBOW (0)
-i [ ], --hs [ ]1使用层次采样进行训练
-n [ ], --negative [ ]0使用负采样进行训练(通常在5-20之间)
-o [ ], --cbowmean [ ]0对于CBOW训练算法:使用和(0)或平均值(1)合并上下文向量

使用示例:

python training.py corpus/ my.model -s 200 -w 5

请注意,第一个参数是一个目录,其中包含的每个文件都将被视为训练的语料库文件。

如果需要测量并存储训练模型所需的时间,可以使用以下命令:

{ time python training.py corpus/ my.model -s 200 -w 5; } 2>> my.model.result

词汇表 <a name="vocabulary"></a>

要计算给定语料库的词汇表,可以使用 vocabulary.py 脚本:

python vocabulary.py my.model my.model.vocab

评估 <a name="evaluation"></a>

要创建测试集并评估训练好的模型,可以使用 evaluation.py 脚本。可以评估训练模型的语法和语义特征。为了成功创建测试集,在启动脚本之前应该创建以下源文件(有关更多信息,请参见脚本中的配置部分)。

语法测试集

通过语法测试,可以评估单数、复数、第三人称、过去时、比较级或最高级等特征。因此有3个源文件:形容词、名词和动词。每个文件每行包含一个唯一的词及其变位形式,用破折号分隔。这些组合模式可以在脚本配置中的 PATTERN_SYN 常量中输入。脚本现在根据给定的模式将每个词与5个随机的其他词组合,以创建适当的类比问题。一旦创建了包含问题的数据文件,就可以进行评估。通常,评估可以通过 gensim 的 word2vec 准确度函数 完成,但为了获得更具体的评估结果(正确匹配、前 n 个匹配和覆盖率),本项目使用自己的准确度函数(test_mostsimilar_groups()test_mostsimilar(),在 evaluation.py 中)。

该项目提供的源文件包含100个唯一名词和2种模式,100个唯一形容词和6种模式,以及100个唯一动词和12种模式,共产生1万个类比问题。以下是可能的源文件示例:

adjectives.txt

可能的模式:基本形-比较级-最高级

示例内容:

好-更好-最好 大声-更大声-最大声

参见src/adjectives.txt

nouns.txt

可能的模式:单数-复数

示例内容:

图片-图片们 名字-名字们

参见src/nouns.txt

verbs.txt

可能的模式:基本形-第一人称单数现在时-第二人称复数现在时-第三人称单数过去时-第三人称复数过去时

示例内容:

找到-我找到-你们找到-他找到-他们找到 搜索-我搜索-你们搜索-他搜索-他们搜索

参见src/verbs.txt

语义测试集

通过语义测试,可以评估涉及词义的特征。因此有3个源文件:相反词、最佳匹配和不匹配。给定的源文件总共产生950个语义问题。

opposite.txt

此文件包含相反词,每行遵循一个词-相反词的模式,用于评估模型寻找相反词的能力。脚本将每对词与10个随机的其他对组合,以构建类比问题。本项目提供的相反词源文件包含30个唯一对,产生300个类比问题。

示例内容:

夏天-冬天 白天-黑夜

参见src/opposite.txt

bestmatch.txt

此文件包含内容相似的词对组,用于评估模型寻找主题相关类比的能力。脚本将每对词与同组的所有其他对组合,以构建类比问题。本项目提供的最佳匹配源文件包含7组,共77个唯一对,产生540个类比问题。

示例内容:

: 政治 伊丽莎白-女王 查尔斯-王子 : 科技 安卓-谷歌 iOS-苹果 Windows-微软

参见src/bestmatch.txt

doesntfit.txt

此文件每行包含3个内容相似的词(用空格分隔)和一组不匹配的词(用破折号分隔),格式如匹配词1 匹配词2 匹配词3 不匹配词1-不匹配词2-...-不匹配词n。这用于测试模型在4个词中找出最不匹配词的能力。脚本将每个匹配的三元组与破折号分隔的不匹配词列表中的每个词组合,以构建不匹配问题。本项目提供的不匹配源文件包含11个三元组,每个三元组有10个不匹配的词,产生110个问题。

示例内容:

兔子 狗 猫 树-主人-大象-食物-房子-人-动物-宠物店-草地-动物园 八月 四月 九月 年-月-日-小时-分钟-时间-日历-周-季度-时钟

参见src/doesntfit.txt

可以使用以下选项执行脚本:

标志描述
-h, --help显示帮助信息并退出
-c, --create如果设置,在评估前创建测试集
-u, --umlauts如果设置,创建带有转换元音的附加测试集和/或使用它们

使用示例:

python evaluation.py my.model -u

注意:只有文件类型为.bin.model或没有任何后缀的文件被视为二进制文件。

下载

使用此工具包基于德语维基百科(2015年5月15日)和2013年德语新闻文章(2015年5月15日)训练的优化德语语言模型可以在此下载:

german.model [704 MB]

如果您想将此项目用于自己的工作,可以使用以下BibTex条目进行引用:

@thesis{mueller2015, author = {{Müller}, Andreas}, title = "{Analyse von Wort-Vektoren deutscher Textkorpora}", school = {柏林工业大学}, year = 2015, month = jun, type = {学士论文}, url = {https://devmount.github.io/GermanWordEmbeddings} }

GermanWordEmbeddings 工具和预训练语言模型完全免费使用。如果您觉得它有用,请考虑通过 Paypal 捐赠以支持进一步开发。💚

编辑推荐精选

Vora

Vora

免费创建高清无水印Sora视频

Vora是一个免费创建高清无水印Sora视频的AI工具

Refly.AI

Refly.AI

最适合小白的AI自动化工作流平台

无需编码,轻松生成可复用、可变现的AI自动化工作流

酷表ChatExcel

酷表ChatExcel

大模型驱动的Excel数据处理工具

基于大模型交互的表格处理系统,允许用户通过对话方式完成数据整理和可视化分析。系统采用机器学习算法解析用户指令,自动执行排序、公式计算和数据透视等操作,支持多种文件格式导入导出。数据处理响应速度保持在0.8秒以内,支持超过100万行数据的即时分析。

AI工具酷表ChatExcelAI智能客服AI营销产品使用教程
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
AIWritePaper论文写作

AIWritePaper论文写作

AI论文写作指导平台

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

AI辅助写作AI工具AI论文工具论文写作智能生成大纲数据安全AI助手热门
博思AIPPT

博思AIPPT

AI一键生成PPT,就用博思AIPPT!

博思AIPPT,新一代的AI生成PPT平台,支持智能生成PPT、AI美化PPT、文本&链接生成PPT、导入Word/PDF/Markdown文档生成PPT等,内置海量精美PPT模板,涵盖商务、教育、科技等不同风格,同时针对每个页面提供多种版式,一键自适应切换,完美适配各种办公场景。

AI办公办公工具AI工具博思AIPPTAI生成PPT智能排版海量精品模板AI创作热门
潮际好麦

潮际好麦

AI赋能电商视觉革命,一站式智能商拍平台

潮际好麦深耕服装行业,是国内AI试衣效果最好的软件。使用先进AIGC能力为电商卖家批量提供优质的、低成本的商拍图。合作品牌有Shein、Lazada、安踏、百丽等65个国内外头部品牌,以及国内10万+淘宝、天猫、京东等主流平台的品牌商家,为卖家节省将近85%的出图成本,提升约3倍出图效率,让品牌能够快速上架。

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

下拉加载更多