首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得伯特的预科证书

如何获得伯特的预科证书
EN

Stack Overflow用户
提问于 2019-10-29 07:38:42
回答 2查看 1K关注 0票数 2

我使用的是堆栈溢出选项卡分类csv数据集,该数据集已加载到dataframe中:

代码语言:javascript
复制
X = df.post
y = df.tags
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state = 42)

除了其他一些分类模型之外,我还想运行BERT,但是,它需要一个变量preproc。我不确定哪一种功能会得到这个结果:

代码语言:javascript
复制
import ktrain
from ktrain import text
model = text.text_classifier('bert', (x_train, y_train), preproc=preproc)
learner = ktrain.get_learner(model,train_data=(x_train, y_train), val_data=(x_test, y_test), batch_size=6)

在一些文档中,我看到人们使用text.texts_from_folder(),但我已经将所有内容都放在了一个数据have中。文本中是否还有其他功能。那能帮我拿到预科吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-15 17:50:37

有关可用的预处理功能的完整列表,请参见ktrain 文本分类教程。例如,在您的示例中,您可以使用texts_from_dftexts_from_array。这些功能将按照模型所期望的方式对文本文档进行预处理。有关使用这个例子笔记本的示例,请参阅texts_from_df。或者,您也可以在ktrain中使用变压器API

票数 1
EN

Stack Overflow用户

发布于 2020-02-12 03:28:05

我也没有找到,所以我编写了一个将csv分解为txt文件的函数:

代码语言:javascript
复制
import time
import os
from joblib import Parallel, delayed
from tqdm import tqdm_notebook as tqdm

treads=12
path = os.getcwd()
train_path = path + '/' + 'train_df' + '/'
test_path = path + '/' + 'test_df' + '/'

train_len = range(len(train_df['text']))
texts = train_df['text'].tolist()
ids = train_df['id'].tolist()
classes= train_df['class'].tolist()

def create_directory(directory):
    try:
        os.mkdir(directory)
    except OSError:
        print('OSError')
    else:
        print('Error')

def write_txt(text_, id_, class_, path, i):
    cur_path = path + '/' + str(id_) + '/'
    create_directory(cur_path)
    with open(cur_path + f'{class_}_{i}.txt', 'w', encoding='utf-8') as f:
        f.write(text_)

Parallel(n_jobs=treads)(delayed(write_txt)(texts[i], ids[i], classes[i], path, i) for i in tqdm(train_len))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58603086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档