文本编解码tokenizer

本文深入探讨Python中处理文本的编解码过程,重点解析tokenizer在自然语言处理中的应用,如何进行词汇切分和预处理,为后续的NLP任务如情感分析、文本分类等奠定基础。
摘要由CSDN通过智能技术生成
import json
import re
from typing import List


class CharacterTokenizer:
    """
    Tokenizer的功能是实现文本的编解码。编码,即把字符转成数字,但是实际生活中的字符是无限的,我们总可以遇到新的字符,
    而这些字符在训练集中并不能得到充分训练,于是我们暂时用<unk>来表示。
    编码过后,无限的字符变成有限的id;而后,在解码阶段,将id恢复成原始的字符,那些可以恢复的字符都是得到充分训练的,而无法恢复的字符,
    可以理解成失真了。
    """
    def __init__(self):
        self.pad_token = '<pad>'
        self.digit_token = '<digit>'
        self.alpha_token = '<alpha>'
        self.unk_token = '<unk>'
        self.token2id = None

    def build_vocab(self, corpus_file_path, dump_file_path, min_count=5):
        token2freq = {
   }
        with open(corpus_file_path) as fin:
            for line in fin:
                line = json.loads(line.strip())['text']
                for ch 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值