【Gensim概念】02/3 NLP玩转 word2vec

news2024/11/15 11:40:42

第二部分  句法

六、句法模型(类对象和参数)

6.1 数据集的句子查看

  • classgensim.models.word2vec.BrownCorpus(dirname)

        Bases: object

        迭代句子 Brown corpus (part of NLTK data).

6.2 数据集的句子和gram

  • classgensim.models.word2vec.Heapitem(countindexleftright)

Bases: Heapitem

Create new instance of Heapitem(count, index, left, right)

  • count  Alias for field number 0
  • index  Alias for field number 1
  • left  Alias for field number 2
  • right  Alias for field number 3

6.3 数据集的句子迭代器

  • classgensim.models.word2vec.LineSentence(sourcemax_sentence_length=10000limit=None)

        Bases: object

        迭代包含句子的文件:一行 = 一个句子。单词必须已经过预处理并用空格分隔。

        参数

  • source (string or a file-like object) – 磁盘上文件的路径或已打开的文件对象 (must support seek(0)).

  • limit (int or None) – 将文件句子数目剪辑到第一条限制数。如果 limit 为 None,则不进行剪裁

     (the default).

        例子

>>> from gensim.test.utils import datapath
>>> sentences = LineSentence(datapath('lee_background.cor'))
>>> for sentence in sentences:
...     pass

七、文档模型

7.1 数据集的目录迭代器

        指向目录,目录下有多个文件,将多文件句子当成一个集合体处理。

classgensim.models.word2vec.PathLineSentences(sourcemax_sentence_length=10000limit=None)

Bases: object

与 LineSentence同,但按文件名的字母顺序处理目录中的所有文件。

该目录只能包含可以读取的文件 gensim.models.word2vec.LineSentence: .bz2, .gz, and text files. Any file not ending with .bz2 or .gz 被假设是一个文本文件。

        路径中的文件(文本或压缩文本文件)的格式是一句话 = 一行,单词已经过预处理并以空格分隔。

警告:

        不会递归到子目录。

参数:

  • source (str) – 文件目录名称.

  • limit (int or None) – 仅读取每个文件中的第一个限制行。如果 limit 为 None(默认),则读取全部。

        classgensim.models.word2vec.Text8Corpus(fnamemax_sentence_length=10000)

        Bases: object

        迭代“text8”语料库中的句子,从下列获取: http://mattmahoney.net/dc/text8.zip. 

7.2 模型集的 Word2Vec

classgensim.models.word2vec.Word2Vec(sentences=Nonecorpus_file=Nonevector_size=100alpha=0.025window=5min_count=5max_vocab_size=Nonesample=0.001seed=1workers=3min_alpha=0.0001sg=0hs=0negative=5ns_exponent=0.75cbow_mean=1hashfxn=<built-in function hash>epochs=5null_word=0trim_rule=Nonesorted_vocab=1batch_words=10000compute_loss=Falsecallbacks=()comment=Nonemax_final_vocab=Noneshrink_windows=True)

        Bases: SaveLoad

训练、使用和评估中描述的神经网络  https://code.google.com/p/word2vec/.

        完成模型训练后(=不再更新,仅查询),仅在 self.wv 中存储和使用 KeyedVectors 实例以减少内存。

        完整模型可以通过其 save() 和 load() 方法存储/加载。

        经过训练的词向量还可以通过 self.wv.save_word2vec_format 和与原始 word2vec 实现兼容的格式进行存储/加载

gensim.models.keyedvectors.KeyedVectors.load_word2vec_format().

参数

  • sentence可迭代的可迭代可选)——可迭代的句子可以只是标记列表的列表,但对于较大的语料库,请考虑直接从磁盘/网络流式传输句子的可迭代。请参阅BrownCorpus、Text8Corpus 或模块LineSentence中的word2vec此类示例。另请参阅有关 Python 中的数据流的教程。如果您不提供statements,则模型将保持未初始化状态 - 如果您打算以其他方式初始化它,请使用它。

  • corpus_file ( str ,可选) – 格式的语料库文件的路径LineSentence。您可以使用此参数而不是句子来提高性能。只需要传递句子或 corpus_file参数之一(或者都不传递,在这种情况下,模型将保持未初始化状态)。

  • vector_size ( int ,可选) – 词向量的维数。

  • window ( int ,可选) – 句子中当前单词和预测单词之间的最大距离。

  • min_count ( int ,可选) – 忽略总频率低于此的所有单词。

  • Workers ( int ,可选) – 使用这些工作线程来训练模型(=使用多核机器进行更快的训练)。

  • sg ( {0 1} ,可选) – 训练算法:skip-gram 为 1;否则CBOW。

  • hs ( {0 1} ,可选) – 如果为 1,则将使用分层 softmax 进行模型训练。如果为0,并且负数非零,则将使用负采样。

  • negative ( int ,可选) – 如果 > 0,将使用负采样,负数的 int 指定应抽取多少“噪声词”(通常在 5-20 之间)。如果设置为 0,则不使用负采样。

  • ns_exponent ( float ,可选) – 用于塑造负采样分布的指数。值 1.0 与频率完全成比例地进行采样,0.0 对所有单词进行同等采样,而负值则对低频单词进行更多采样。最初的 Word2Vec 论文选择了流行的默认值 0.75。最近,在https://arxiv.org/abs/1804.04212中,Caselles-Dupré、Lesaint 和 Royo-Letelier 提出其他值对于推荐应用程序可能表现更好。

  • cbow_mean ( {0 1} ,可选) – 如果为 0,则使用上下文单词向量的总和。如果为 1,则使用平均值,仅在使用 cbow 时适用。

  • alpha ( float ,可选) – 初始学习率。

  • min_alpha ( float ,可选) –随着训练的进行,学习率将线性下降到min_alpha 。

  • seed ( int ,可选) – 随机数生成器的种子。每个单词的初始向量都以 word + str(seed)连接的哈希值作为种子。请注意,对于完全确定性可重现的运行,您还必须将模型限制为单个工作线程 ( workers=1 ),以消除操作系统线程调度中的排序抖动。(在 Python 3 中,解释器启动之间的再现性还需要使用PYTHONHASHSEED环境变量来控制哈希随机化)。

  • max_vocab_size ( int ,可选) – 限制词汇构建过程中的 RAM;如果有比这更多的独特单词,则修剪掉不常见的单词。每 1000 万个字型需要大约 1GB RAM。设置为None表示没有限制。

  • max_final_vocab ( int ,可选) – 通过自动选择匹配的 min_count 将词汇限制为目标词汇大小。如果指定的 min_count 大于计算出的 min_count,则将使用指定的 min_count。如果不需要,请设置为“无” 。

  • Sample ( float ,可选) – 配置哪些高频词被随机下采样的阈值,有用范围是 (0, 1e-5)。

  • hashfxn ( function ,可选) – 用于随机初始化权重的哈希函数,以提高训练的可重复性。

  • epochs ( int ,可选) – 语料库的迭代次数(epoch)。(以前:iter)

  • 修剪规则函数可选)-

    词汇表修剪规则,指定某些单词是否应保留在词汇表中、被修剪掉或使用默认值进行处理(如果字数 < min_count 则丢弃)。可以是 None (将使用 min_count,请查看),或者是接受参数(word、count、min_count)并返回、或 的keep_vocab_item()可调用函数 。该规则(如果给定)仅用于在 build_vocab() 期间修剪词汇,并且不会存储为模型的一部分。gensim.utils.RULE_DISCARDgensim.utils.RULE_KEEPgensim.utils.RULE_DEFAULT

    输入参数有以下几种类型:

    • word (str) - 我们正在检查的单词

    • count (int) - 语料库中单词的频率计数

    • min_count (int) - 最小计数阈值。

  • sorted_vocab ( {0 1} ,可选) – 如果为 1,则在分配单词索引之前按频率降序对词汇表进行排序。见sort_by_descending_frequency()。

  • batch_words ( int ,可选) – 传递给工作线程(以及 cython 例程)的示例批次的目标大小(以字为单位)。(如果单个文本长度超过 10000 个单词,则将传递更大的批次,但标准 cython 代码会截断为那个最大值。)

  • compute_loss ( bool ,可选) – 如果为 True,则计算并存储可以使用 检索的损失值 get_latest_training_loss()。

  • 回调(可迭代CallbackAny2Vec,可选)- 在训练期间的特定阶段执行的回调序列。

  • Shrink_windows ( bool ,可选) – 4.1 中的新增功能。实验性的。如果为 True,则在训练期间从每个目标单词的 [1, window ]中均匀采样有效窗口大小,以匹配原始 word2vec 算法按距离对上下文单词的近似加权。否则,有效窗口大小始终固定为两侧的窗口字。

7.2.1 使用实例

Initialize and train a Word2Vec model

>>> from gensim.models import Word2Vec
>>> sentences = [["cat", "say", "meow"], ["dog", "say", "woof"]]
>>> model = Word2Vec(sentences, min_count=1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1132599.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot源码refreshContext精细化阅读

注&#xff1a;该流程图表达了在refreshContext的过程中主要方法的展示以及重点类的标注。

家用洗地机什么牌子好?清洁力强的家用洗地机推荐

如今人们工作繁忙&#xff0c;很少有人还有多余的精力回到家之后去清扫地面卫生&#xff0c;这个时候拥有一款优质的家用洗地机就可以很好帮助人们完成地面清洁工作。那么家用洗地机什么牌子好?双十一将临&#xff0c;下面介绍清洁力强的家用洗地机。 洗地机选购要点 1.清洁…

Anaconda安装教程(Windows环境下)

下面的步骤是根据一个大佬的博文操作的&#xff0c;然后自己写了操作步骤和遇到的一些问题&#xff0c; 大佬博客在这&#xff1a; 【精选】Anaconda超详细安装教程&#xff08;Windows环境下&#xff09;_conda安装-CSDN博客 1、 Anaconda的下载&#xff1a; 一般两个选择&a…

个人创业新机遇,零成本开启真人手办定制项目

桌上的日历变薄&#xff0c;2023年已经接近尾声&#xff0c;浅观这一年&#xff0c;您是否发现大家日常关注的重点有明显的变化&#xff0c;诸多社会事件和宏观数字的背后&#xff0c;潜藏着对经济的“不托底”&#xff0c;而当我们真正开始关注起用个人经济积累去对冲未来的不…

JavaScript禁用网页回退

//防止页面后退 history.pushState(null, null, document.URL); window.addEventListener(popstate, function() { history.pushState(null, null, document.URL); }); 这个就是大家在做一个登录页面的时候退回登录页面之后&#xff0c;防止再返回“首页”&#xff0c;&…

如何构建成功的计算机视觉应用

引导计算机视觉项目从原型进入生产 随着现有图像数据量的增长以及人工智能 (AI) 对全球企业重要性的日益增强&#xff0c;计算机视觉正在一些行业快速发展。计算机视觉是机器学习 (ML) 的一种形式&#xff0c;它帮助计算机“看到”与人眼所见类似的图像&#xff0c;并对图像进…

竞赛 深度学习卷积神经网络垃圾分类系统 - 深度学习 神经网络 图像识别 垃圾分类 算法 小程序

文章目录 0 简介1 背景意义2 数据集3 数据探索4 数据增广(数据集补充)5 垃圾图像分类5.1 迁移学习5.1.1 什么是迁移学习&#xff1f;5.1.2 为什么要迁移学习&#xff1f; 5.2 模型选择5.3 训练环境5.3.1 硬件配置5.3.2 软件配置 5.4 训练过程5.5 模型分类效果(PC端) 6 构建垃圾…

博通BCM575系列RDMA网卡驱动分析(一)

简介 整个BCM系列驱动分成以太网部分(bnxt_en.ko)和RDMA部分(bnxt_re.ko), 两个模块之间通过内核的auxiliary_bus进行管理.我们主要分析下bnxt_re驱动. 代码结构 这个驱动的核心是 qplib_fp.c, 这个文件主要包含了驱动的数据路径, 包括Post Send, Post Recv, Poll CQ流程的实…

迭代器的封装与反向迭代器

一、反向迭代器 在list模拟实现的过程中&#xff0c;第一次接触了迭代器的封装&#xff0c;将list的指针封装成了一个新的类型&#xff0c;并且以迭代器的基本功能对其进行了运算符重载 反向迭代器是对正向迭代器的封装&#xff0c;并且体现了泛型编程的思想&#xff0c;任意…

PX30 android8.1添加RTL8723DU

将8723du复制到kernel/drivers/net/wireless/rockchip_wlan/rtl8723du 并修改makefile 修改平台 CONFIG_PLATFORM_I386_PC nCONFIG_PLATFORM_ARM_RK3188 y 修改 ifeq ($(CONFIG_PLATFORM_ARM_RK3188), y) EXTRA_CFLAGS -DCONFIG_LITTLE_ENDIAN -DCONFIG_PLATFORM_ANDRO…

【C语言】指针那些事之数组传参和指针传参的区别

C语言系列 文章目录 目录 C语言系列 文章目录 前言 一&#xff0c;数组传参和指针传参 1.1一维数组传参 1.2二维数组传参 1.3一级指针传参 1.4当一个函数的参数部分为一级指针的时候&#xff0c;函数可以接收什么参数 1.5二级指针传参 1.6当函数的参数为二级指针的时…

服务器动态/静态/住宅/原生IP都是什么意思

​  在互联网的世界中&#xff0c;我们经常会听到关于IP地址的各种说法&#xff0c;比如服务器动态IP、静态IP、住宅IP和原生IP。那么这些术语究竟代表着什么意思呢?让我们一起来了解一下。 动态IP 动态IP(Dynamic IP)是指互联网服务提供商(ISP)在每次用户上网时&#xff0c…

智安网络|探索语音合成技术的未来:揭秘人工智能配音技术的背后

随着人工智能技术的迅猛发展&#xff0c;配音行业也迎来了人工智能配音技术的崭新时代。人工智能配音技术通过语音合成和自然语言处理等技术手段&#xff0c;实现了逼真的语音合成&#xff0c;为影视、广告和游戏等领域带来了新的可能性。 第一部分&#xff1a;语音合成技术的…

求臻医学:肺癌患者就诊指南及基因检测意义

2023年国家癌症中心公布的最新的数据显示&#xff0c;中国癌症新发病例数前十的癌症分别是&#xff1a;肺癌82万&#xff0c;结直肠癌56万&#xff0c;胃癌48万&#xff0c;乳腺癌42万&#xff0c;肝癌41万&#xff0c;食管癌32万&#xff0c;甲状腺癌22万&#xff0c;胰腺癌12…

塔式服务器介绍

大家都知道服务器分为机架式服务器、刀片式服务器、塔式服务器三类&#xff0c;今天小编就分别讲一讲这三种服务器&#xff0c;第三篇先来讲一讲塔式服务器的介绍。 塔式服务器定义&#xff1a;塔式服务器的外观和普通电脑差不多&#xff0c;直立放置。机箱比较大&#xff0c;服…

信息安全应急响应小组 诚招

介绍 小组接触领域:攻防领域CISP认证,CTF,工业自动化控制,工业网络,机械制图等 小组成立意义;致力于解决公司内外网安全,高校内外网安全,CTF赛题分析,工控领域内网安全等 小组

Stable Diffusion WebUI扩展canvas-zoom详细讲解

canvas-zoom这是什么? 这是一个针对画布做一些操作的工具,比如缩放等。 下面来详细说一下这些操作的热键。 重要的热键: 缩放(Alt+滚轮)、移动画布 (F)、全屏 (S) 和重置缩放 (R) (1)Shift + wheel - 缩放画布 按住Shift + 滚轮之后,一点反应都没有,之后按…

VR全景应用广泛体现在哪里?有何优势?

VR全景作为一种新型营销方式&#xff0c;正在逐渐走进人们的视线&#xff0c;它区别于以往单一角度的照片和视频&#xff0c;VR全景制作显得更加直观、更加真实、更加生动。VR全景通过VR技术将所拍摄的图片变成720度可观看的场景模式&#xff0c;把产品的特色以及魅力整体呈现展…

微电子/集成电路专业学术期刊汇总!

1. JSSC (IEEE Journal of Solid-State Circuits ) IEEE SSCS 旗下的旗舰期刊。IC领域公认的顶刊&#xff0c;难度最大&#xff0c;认可度最高。2020年刚升为一区。 虽然IF只有6.1&#xff0c;但其在IC圈影响力碾压众多一区高分期刊。 投这个期刊必须要有流片和测试结果&…

文件防泄密软件哪个好?

文件防泄密软件哪个好&#xff1f; 在互联网数据时代发展模式下&#xff0c;很多企业的数据都是公司的重要命脉&#xff0c;然后也会有很多人铤而走险&#xff0c;盗取公司机密信息&#xff0c;做违法的事情&#xff0c;然而&#xff0c;保护好公司数据不被泄密成了很多老板头…