我正在尝试做的事情
我想使用CORD19 词嵌入 csv将它们映射到数据集其余部分的某些发现,但我们可以看到第一列中没有刺痛。
我了解单词或句子嵌入的方式是将单词或句子映射到多个向量。第一列中的值看起来有点像哈希,它们是我无法使用数据集的主要问题。
有人可以告诉我我在看什么以及如何使用它们吗?
我没有在 kaggle 上找到解释或概述该文件应该如何使用的文档、使用示例或提交。
我想使用CORD19 词嵌入 csv将它们映射到数据集其余部分的某些发现,但我们可以看到第一列中没有刺痛。
我了解单词或句子嵌入的方式是将单词或句子映射到多个向量。第一列中的值看起来有点像哈希,它们是我无法使用数据集的主要问题。
有人可以告诉我我在看什么以及如何使用它们吗?
我没有在 kaggle 上找到解释或概述该文件应该如何使用的文档、使用示例或提交。
所以,经过大量挖掘,我在评论部分找到了一些东西。
它们是文档嵌入。
有一个指定 API的github 存储库。
来自 CORD19 数据集的数据更新日志的 Kaggle 评论部分的相关评论:
import pandas as pd
from whatlies import Embedding, EmbeddingSet
#Docs: https://rasahq.github.io/whatlies/api/embeddingset/
#transponse dataframe
sample_df = pd.read_csv('data/cord_embeddings_sample.csv', header=None, delimiter=',', index_col=0).T
def to_ems(df):
ems_dict = {}
for columnName, columnData in df.iteritems():
ems_dict.update({str(columnName): Embedding(columnName, columnData)})
return EmbeddingSet(ems_dict)
ems = to_ems(sample_df.head(10))
ems.plot_correlation()
ems.plot_interactive("ug7v899j","02tnwd4m")
您甚至可以使用数据集中的 s 进行 NLP,并通过 the和fromjson将它们链接到嵌入。UUIDSHAmetadata.csv
例子:
找到与吸烟有关的单词并为相应的论文着色:
我创建了 2 EmbeddingSets,在其中过滤了文本正文中包含与吸烟相关的单词的论文的嵌入,并UUID从列表中减去了它们的 s。两者EmbeddingSets都可以显示在图中。
from whatlies.transformers import Umap
# add 2 embedding sets
emb1 = non_smoking_ems.add_property('set', lambda d: 'non smoking papers')
emb2 = smoking_ems.add_property('set', lambda d: 'smoking papers')
both = emb1.merge(emb2)
#add a clustering transformer that reduces dimensionality (like umap) and visualise them
both.transform(Umap(2)).plot_interactive('umap_0', 'umap_1',color='set', annot=False)