首页 > 解决方案 > 如何将熊猫多列文本转换为张量?

问题描述

嗨,我正在研究IBM共享的关键点分析任务,这是链接。在给定的数据集中有不止一行文本,任何人都可以告诉我如何将文本列转换为张量并再次将它们分配到同一个数据框中,因为那里还有其他数据列。在此处输入图像描述

问题

在这里,我面临一个问题,我以前从未见过这种数据,比如有多个文本列,如何将所有这些列转换为张量,然后应用模型。大多数时候数据是这样的:一个文本列,其他列是标签,例如:电影评论,有毒评论分类。

def clean_text(text):
"""
    text: a string

    return: modified initial string
"""
text = text.lower()  # lowercase text
text = REPLACE_BY_SPACE_RE.sub(' ',
                               text)  
text = BAD_SYMBOLS_RE.sub('',
                          text)  
text = text.replace('x', '')
#    text = re.sub(r'\W+', '', text)
text = ' '.join(word for word in text.split() if word not in STOPWORDS) 
return text

标签: machine-learningdeep-learningnlpdata-preprocessing

解决方案


如果我的问题正确,您将执行以下操作: 先前数据

from transformers import RobertaTokenizer
tokenizer = RobertaTokenizer.from_pretrained("roberta-base")
DF["args"]=DF["args"].apply(lambda x:tokenizer(x)['input_ids'])

这会将句子转换为标记数组。

在此处输入图像描述


推荐阅读