如何用python32位开发词典软件_如何用Python创建词典词典

所以我选择了一个自然语言处理类,我需要创建一个trigram语言模型,根据一些样本数据生成在一定程度上看起来“真实”的随机文本。

基本上需要创建一个“三元组”来保存各种3个字母的语法单词组合。我的教授暗示说,这可以通过我试图用以下方法创建的字典字典来实现:trigram = defaultdict( defaultdict(defaultdict(int)))

但是我得到了一个错误,说:trigram = defaultdict( dict(dict(int)))

TypeError: 'type' object is not iterable

如何创建一个3层嵌套字典或一个值为int的字典字典?

我想如果人们不知道如何回答堆栈溢出问题,他们会投票否决这个问题。我将添加一些背景知识,以便更好地为那些愿意提供帮助的人解释这个问题。

这个三元组用于跟踪三个单词的模式。在文本语言处理软件中使用,几乎在自然语言处理中无处不在“现在想想siri或google吧”。

如果我们将字典的3个级别指定为dict1 dict2和dict3,那么解析文本文件并读取语句“boy runs”将具有以下功能:

有“the”键的dict1。访问该键将返回包含键“boy”的dict2。访问该键将返回包含键“runs”的最终dict3,现在访问该键将返回值1。

这标志着本文中“男孩跑”出现了1次。如果我们再次遇到它,那么我们将遵循相同的过程并从1增加到2。如果我们遇到“girl walks”,那么dict2“the”keys字典现在将包含“girl”的另一个键,dict3的键为“walks”,值为1,以此类推。最后,在分析大量文本(并跟踪单词计数)之后,你将得到一个三元组,它可以根据之前分析的文本中出现的次数来确定某个起始单词的相似性,从而产生3个单词的组合。

这可以帮助您创建语法规则来识别语言,或者在我的例子中创建随机生成的文本,看起来非常像语法英语。我需要一个三层字典,因为在三个单词组合的任何位置,都可以有另一个单词可以创建一组完全不同的组合。我尽我所能去解释三卦和三卦背后的目的。。。几周前我刚讲完课。

现在。。。说了这么多。我该如何着手创建一个字典字典,字典的基本字典保存python中int类型的值?

trigram=defaultdict(defaultdict(defaultdict(int)))

给我一个错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值