Machine learning 为什么我的python代码会给出类型错误,因为在将字典列表加载到标记器对象时dict对象不可调用?

Machine learning 为什么我的python代码会给出类型错误,因为在将字典列表加载到标记器对象时dict对象不可调用?,machine-learning,keras,nlp,tensorflow2.0,tokenize,Machine Learning,Keras,Nlp,Tensorflow2.0,Tokenize,我正试图用Jupiter笔记本上Kaggle的讽刺数据集来编程一个讽刺检测模型。我已将数据集下载到我的电脑上,并将其修改为字典列表。这本词典由三个关键词组成:文章链接、讽刺和标题 下面的代码给出了以下错误: TypeError回溯(最近一次调用上次) 在里面 7标记器。在文本(句子)上匹配 8. ---->9 my\u word\u index=tokenizer.word\u index() 10 11打印(len(word_索引)) TypeError:“dict”对象不可调用 impor

我正试图用Jupiter笔记本上Kaggle的讽刺数据集来编程一个讽刺检测模型。我已将数据集下载到我的电脑上,并将其修改为字典列表。这本词典由三个关键词组成:文章链接、讽刺和标题

下面的代码给出了以下错误:


TypeError回溯(最近一次调用上次) 在里面 7标记器。在文本(句子)上匹配 8. ---->9 my\u word\u index=tokenizer.word\u index() 10 11打印(len(word_索引))

TypeError:“dict”对象不可调用

import os
import pandas

os.getcwd()
import json


os.chdir('C:/Users/IMALSHA/Desktop/AI content writing/Cousera Deep Neural Networks course/NLP lectures')

#loading data 
with open('Sarcasm_Headlines_Dataset.json','r') as json_file: 
    data_set=json.load(json_file)

#defining lists
sentences=[]
labels=[]
urls=[]

for item in data_set:
    sentences.append(item['headline'])
    labels.append(item['is_sarcastic'])
    urls.append(item['article_link'])

import tensorflow as tf
from tensorflow.keras.preprocessing.text import Tokenizer
from tensorflow.keras.preprocessing.sequence import pad_sequences


tokenizer=Tokenizer(oov_token="<oov>")
tokenizer.fit_on_texts(sentences)

word_index=tokenizer.word_index()

print(len(word_index))
print(word_index)

sequences=tokenizer.texts_to_sequences(sentences)
paded=pad_sequences(sequences)

print(paded[2])
导入操作系统
进口大熊猫
os.getcwd()
导入json
chdir('C:/Users/IMALSHA/Desktop/AI content writing/Cousera Deep Neural Networks课程/NLP讲座')
#加载数据
将open('Sarcasm\u Headlines\u Dataset.json','r')作为json\u文件:
data\u set=json.load(json\u文件)
#定义列表
句子=[]
标签=[]
URL=[]
对于数据集中的项:
句子。附加(项目['headline'])
labels.append(项['is_sarcastic'])
附加(项目['article_link'])
导入tensorflow作为tf
来自tensorflow.keras.preprocessing.text导入标记器
从tensorflow.keras.preprocessing.sequence导入pad_序列
标记器=标记器(oov_token=“”)
标记器。在文本(句子)上匹配
word\u index=tokenizer.word\u index()
打印(len(word_索引))
打印(word_索引)
序列=标记器。文本到序列(句子)
PADD=pad_序列(序列)
打印(带垫板的[2])

问题如下:

word_index=tokenizer.word_index()
您可能希望将标记器的word\u索引存储到word\u索引变量中。相反,您正在调用tokenizer.word_索引,就好像它是一个方法/函数,但它是一个字典

因此,我认为您必须应用以下更正:

word_index=tokenizer.word_index

请发布完整的错误堆栈traceyes,这是正确的。现在它正在工作。谢谢。