Pytorch源码注释

Field类

Field类为可以由张量表示的常见文本处理数据类型建模。它包含一个Vocab对象,用于定义字段元素的可能值集及其对应的数字表示。Field对象还包含与数据类型应如何数字化有关的其他参数,例如标记化方法和应生成的Tensor类型。

    如果在数据集中的两列之间共享字段(例如,QA数据集中的问题和答案),则它们将具有共享词汇表。

    属性:
        sequential:数据类型是否表示顺序数据。如果为False,则不应用标记化。默认值:True。
        use_vocab:是否使用Vocab对象。如果为False,则此字段中的数据应已为数字。默认值:True。
        init_token:将使用此字段添加到每个示例的标记,如果没有初始标记,则为None。默认值:无。
        eos_token:将使用此字段附加到每个示例的标记,或者对于没有句末标记的None。默认值:无。
        fix_length:使用此字段的所有示例都将填充到的固定长度,或者对于灵活的序列长度,为None。默认值:无。
        dtype:torch.dtype类,表示此类数据的一批示例。默认值:torch.long。
        预处理:在标记化之后但在数值化之前将使用此字段应用于示例的管道。许多数据集使用自定义预处理器替换此属性。默认值:无。
        后处理:在数值化之后但在数字变为Tensor之前将使用此字段应用于示例的管道。管道功能将批处理作为列表和字段的Vocab。默认值:无。
        lower:是否小写此字段中的文本。默认值:False。
        tokenize:用于将使用此字段将字符串标记为顺序示例的函数。如果使用“spacy”,则使用SpaCy English tokenizer。默认值:str.split。
        include_lengths:是否返回填充小批量的元组和包含每个示例长度的列表,或者只是填充的小批量。默认值:False。
        batch_first:是否先生成具有批量维度的张量。默认值:False。
        pad_token:用作填充的字符串标记。默认值:“<pad>”。
        unk_token:用于表示OOV字的字符串标记。默认值: “<UNK>”。
        pad_first:在开头填充序列的填充。默认值:False。
        truncate_first:在开头截断序列。默认值:False
        stop_words:在预处理步骤中丢弃的标记。默认值:无
        is_target:此字段是否为目标变量。影响批量迭代。默认值:False

 

TabularDataset类

定义以CSV,TSV或JSON格式存储的列的数据集。

    参数:
            path(str):数据文件的路径。
            format(str):数据文件的格式。 “CSV”,“TSV”或“JSON”之一(不区分大小写)。
            fields(list(tup(str,Field))或dict [str:tuple(str,Field)]:如果使用列表,格式必须是CSV或TSV,列表的值应该是(name,字段应该与CSV或TSV文件中的列的顺序相同,而(name,None)的元组表示将被忽略的列。如果使用dict,则键应该是JSON的子集键或CSV / TSV列,值应为(名称,字段)的元组。输入字典中不存在的键将被忽略。这允许用户从其JSON / CSV / TSV键名称重命名列,并且还可以选择要加载的列的子集。
             skip_header(bool):是否跳过输入文件的第一行。
             csv_reader_params(dict):传递给csv reader的参数。格式为csv或tsv时非常相关。

 

可变参数

*args,**kwargs

如果我们不确定要往函数中传入多少个参数,或者我们想往函数中以列表和元组的形式传参数时,那就使要用*args;
如果我们不知道要往函数中传入多少个关键词参数,或者想传入字典的值作为关键词参数时,那就要使用**kwargs。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值