upload
This commit is contained in:
+20466
File diff suppressed because it is too large
Load Diff
+272115
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+86835
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,2 +0,0 @@
|
||||
from .data_module import KGC
|
||||
from .processor import convert_examples_to_features, KGProcessor
|
||||
@@ -1,63 +0,0 @@
|
||||
# Copyright (c) Microsoft Corporation.
|
||||
# Licensed under the MIT License.
|
||||
|
||||
import cython
|
||||
from cython.parallel cimport prange, parallel
|
||||
cimport numpy
|
||||
import numpy
|
||||
|
||||
def floyd_warshall(adjacency_matrix):
|
||||
|
||||
(nrows, ncols) = adjacency_matrix.shape
|
||||
assert nrows == ncols
|
||||
cdef unsigned int n = nrows
|
||||
|
||||
adj_mat_copy = adjacency_matrix.astype(long, order='C', casting='safe', copy=True)
|
||||
assert adj_mat_copy.flags['C_CONTIGUOUS']
|
||||
cdef numpy.ndarray[long, ndim=2, mode='c'] M = adj_mat_copy
|
||||
cdef numpy.ndarray[long, ndim=2, mode='c'] path = numpy.zeros([n, n], dtype=numpy.int64)
|
||||
|
||||
cdef unsigned int i, j, k
|
||||
cdef long M_ij, M_ik, cost_ikkj
|
||||
cdef long* M_ptr = &M[0,0]
|
||||
cdef long* M_i_ptr
|
||||
cdef long* M_k_ptr
|
||||
|
||||
# set unreachable nodes distance to 510
|
||||
for i in range(n):
|
||||
for j in range(n):
|
||||
if i == j:
|
||||
M[i][j] = 0
|
||||
elif M[i][j] == 0:
|
||||
M[i][j] = 510
|
||||
|
||||
# floyed algo
|
||||
for k in range(n):
|
||||
M_k_ptr = M_ptr + n*k
|
||||
for i in range(n):
|
||||
M_i_ptr = M_ptr + n*i
|
||||
M_ik = M_i_ptr[k]
|
||||
for j in range(n):
|
||||
cost_ikkj = M_ik + M_k_ptr[j]
|
||||
M_ij = M_i_ptr[j]
|
||||
if M_ij > cost_ikkj:
|
||||
M_i_ptr[j] = cost_ikkj
|
||||
path[i][j] = k
|
||||
|
||||
# set unreachable path to 510
|
||||
for i in range(n):
|
||||
for j in range(n):
|
||||
if M[i][j] >= 510:
|
||||
path[i][j] = 510
|
||||
M[i][j] = 510
|
||||
|
||||
return M, path
|
||||
|
||||
|
||||
def get_all_edges(path, i, j):
|
||||
cdef unsigned int k = path[i][j]
|
||||
if k == 0:
|
||||
return []
|
||||
else:
|
||||
return get_all_edges(path, i, k) + [k] + get_all_edges(path, k, j)
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
"""Base DataModule class."""
|
||||
from pathlib import Path
|
||||
from typing import Dict
|
||||
import argparse
|
||||
import os
|
||||
|
||||
import pytorch_lightning as pl
|
||||
from torch.utils.data import DataLoader
|
||||
|
||||
|
||||
class Config(dict):
|
||||
def __getattr__(self, name):
|
||||
return self.get(name)
|
||||
|
||||
def __setattr__(self, name, val):
|
||||
self[name] = val
|
||||
|
||||
|
||||
BATCH_SIZE = 8
|
||||
NUM_WORKERS = 8
|
||||
|
||||
|
||||
class BaseDataModule(pl.LightningDataModule):
|
||||
"""
|
||||
Base DataModule.
|
||||
Learn more at https://pytorch-lightning.readthedocs.io/en/stable/datamodules.html
|
||||
"""
|
||||
|
||||
def __init__(self, args: argparse.Namespace = None) -> None:
|
||||
super().__init__()
|
||||
self.args = Config(vars(args)) if args is not None else {}
|
||||
self.batch_size = self.args.get("batch_size", BATCH_SIZE)
|
||||
self.num_workers = self.args.get("num_workers", NUM_WORKERS)
|
||||
|
||||
|
||||
@staticmethod
|
||||
def add_to_argparse(parser):
|
||||
parser.add_argument(
|
||||
"--batch_size", type=int, default=BATCH_SIZE, help="Number of examples to operate on per forward step."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--num_workers", type=int, default=0, help="Number of additional processes to load data."
|
||||
)
|
||||
parser.add_argument(
|
||||
"--dataset", type=str, default="./dataset/NELL", help="Number of additional processes to load data."
|
||||
)
|
||||
return parser
|
||||
|
||||
def prepare_data(self):
|
||||
"""
|
||||
Use this method to do things that might write to disk or that need to be done only from a single GPU in distributed settings (so don't set state `self.x = y`).
|
||||
"""
|
||||
pass
|
||||
|
||||
def setup(self, stage=None):
|
||||
"""
|
||||
Split into train, val, test, and set dims.
|
||||
Should assign `torch Dataset` objects to self.data_train, self.data_val, and optionally self.data_test.
|
||||
"""
|
||||
self.data_train = None
|
||||
self.data_val = None
|
||||
self.data_test = None
|
||||
|
||||
def train_dataloader(self):
|
||||
return DataLoader(self.data_train, shuffle=True, batch_size=self.batch_size, num_workers=self.num_workers, pin_memory=True)
|
||||
|
||||
def val_dataloader(self):
|
||||
return DataLoader(self.data_val, shuffle=False, batch_size=self.batch_size, num_workers=self.num_workers, pin_memory=True)
|
||||
|
||||
def test_dataloader(self):
|
||||
return DataLoader(self.data_test, shuffle=False, batch_size=self.batch_size, num_workers=self.num_workers, pin_memory=True)
|
||||
@@ -1,195 +0,0 @@
|
||||
from dataclasses import dataclass
|
||||
from typing import Any, Callable, Dict, List, NewType, Optional, Tuple, Union
|
||||
from enum import Enum
|
||||
import torch
|
||||
|
||||
from torch.utils.data import DataLoader
|
||||
from transformers import AutoTokenizer, BertTokenizer
|
||||
# from transformers.configuration_bert import BertTokenizer, BertTokenizerFast
|
||||
from transformers.tokenization_utils_base import (BatchEncoding,
|
||||
PreTrainedTokenizerBase)
|
||||
|
||||
from .base_data_module import BaseDataModule
|
||||
from .processor import KGProcessor, get_dataset
|
||||
import transformers
|
||||
transformers.logging.set_verbosity_error()
|
||||
|
||||
class ExplicitEnum(Enum):
|
||||
"""
|
||||
Enum with more explicit error message for missing values.
|
||||
"""
|
||||
|
||||
@classmethod
|
||||
def _missing_(cls, value):
|
||||
raise ValueError(
|
||||
f"{value} is not a valid {cls.__name__}, please select one of {list(cls._value2member_map_.keys())}"
|
||||
)
|
||||
|
||||
class PaddingStrategy(ExplicitEnum):
|
||||
"""
|
||||
Possible values for the ``padding`` argument in :meth:`PreTrainedTokenizerBase.__call__`. Useful for tab-completion
|
||||
in an IDE.
|
||||
"""
|
||||
|
||||
LONGEST = "longest"
|
||||
MAX_LENGTH = "max_length"
|
||||
DO_NOT_PAD = "do_not_pad"
|
||||
|
||||
import numpy as np
|
||||
|
||||
@dataclass
|
||||
class DataCollatorForSeq2Seq:
|
||||
"""
|
||||
Data collator that will dynamically pad the inputs received, as well as the labels.
|
||||
|
||||
Args:
|
||||
tokenizer (:class:`~transformers.PreTrainedTokenizer` or :class:`~transformers.PreTrainedTokenizerFast`):
|
||||
The tokenizer used for encoding the data.
|
||||
model (:class:`~transformers.PreTrainedModel`):
|
||||
The model that is being trained. If set and has the `prepare_decoder_input_ids_from_labels`, use it to
|
||||
prepare the `decoder_input_ids`
|
||||
|
||||
This is useful when using `label_smoothing` to avoid calculating loss twice.
|
||||
padding (:obj:`bool`, :obj:`str` or :class:`~transformers.file_utils.PaddingStrategy`, `optional`, defaults to :obj:`True`):
|
||||
Select a strategy to pad the returned sequences (according to the model's padding side and padding index)
|
||||
among:
|
||||
|
||||
* :obj:`True` or :obj:`'longest'`: Pad to the longest sequence in the batch (or no padding if only a single
|
||||
sequence is provided).
|
||||
* :obj:`'max_length'`: Pad to a maximum length specified with the argument :obj:`max_length` or to the
|
||||
maximum acceptable input length for the model if that argument is not provided.
|
||||
* :obj:`False` or :obj:`'do_not_pad'` (default): No padding (i.e., can output a batch with sequences of
|
||||
different lengths).
|
||||
max_length (:obj:`int`, `optional`):
|
||||
Maximum length of the returned list and optionally padding length (see above).
|
||||
pad_to_multiple_of (:obj:`int`, `optional`):
|
||||
If set will pad the sequence to a multiple of the provided value.
|
||||
|
||||
This is especially useful to enable the use of Tensor Cores on NVIDIA hardware with compute capability >=
|
||||
7.5 (Volta).
|
||||
label_pad_token_id (:obj:`int`, `optional`, defaults to -100):
|
||||
The id to use when padding the labels (-100 will be automatically ignored by PyTorch loss functions).
|
||||
"""
|
||||
|
||||
tokenizer: PreTrainedTokenizerBase
|
||||
model: Optional[Any] = None
|
||||
padding: Union[bool, str, PaddingStrategy] = True
|
||||
max_length: Optional[int] = None
|
||||
pad_to_multiple_of: Optional[int] = None
|
||||
label_pad_token_id: int = -100
|
||||
return_tensors: str = "pt"
|
||||
num_labels: int = 0
|
||||
|
||||
def __call__(self, features, return_tensors=None):
|
||||
|
||||
if return_tensors is None:
|
||||
return_tensors = self.return_tensors
|
||||
labels = [feature.pop("labels") for feature in features] if "labels" in features[0].keys() else None
|
||||
label = [feature.pop("label") for feature in features]
|
||||
features_keys = {}
|
||||
name_keys = list(features[0].keys())
|
||||
for k in name_keys:
|
||||
# ignore the padding arguments
|
||||
if k in ["input_ids", "attention_mask", "token_type_ids"]: continue
|
||||
try:
|
||||
features_keys[k] = [feature.pop(k) for feature in features]
|
||||
except KeyError:
|
||||
continue
|
||||
|
||||
# We have to pad the labels before calling `tokenizer.pad` as this method won't pad them and needs them of the
|
||||
# same length to return tensors.
|
||||
bsz = len(labels)
|
||||
with torch.no_grad():
|
||||
new_labels = torch.zeros(bsz, self.num_labels)
|
||||
for i,l in enumerate(labels):
|
||||
if isinstance(l, int):
|
||||
new_labels[i][l] = 1
|
||||
else:
|
||||
for j in l:
|
||||
new_labels[i][j] = 1
|
||||
labels = new_labels
|
||||
|
||||
features = self.tokenizer.pad(
|
||||
features,
|
||||
padding=self.padding,
|
||||
max_length=self.max_length,
|
||||
pad_to_multiple_of=self.pad_to_multiple_of,
|
||||
return_tensors=return_tensors,
|
||||
)
|
||||
features['labels'] = labels
|
||||
features['label'] = torch.tensor(label)
|
||||
features.update(features_keys)
|
||||
|
||||
return features
|
||||
|
||||
|
||||
|
||||
class KGC(BaseDataModule):
|
||||
def __init__(self, args, model) -> None:
|
||||
super().__init__(args)
|
||||
self.tokenizer = AutoTokenizer.from_pretrained(self.args.model_name_or_path, use_fast=False)
|
||||
self.processor = KGProcessor(self.tokenizer, args)
|
||||
self.label_list = self.processor.get_labels(args.data_dir)
|
||||
|
||||
entity_list = self.processor.get_entities(args.data_dir)
|
||||
|
||||
num_added_tokens = self.tokenizer.add_special_tokens({'additional_special_tokens': entity_list})
|
||||
self.sampler = DataCollatorForSeq2Seq(self.tokenizer,
|
||||
model=model,
|
||||
label_pad_token_id=self.tokenizer.pad_token_id,
|
||||
pad_to_multiple_of=8 if self.args.precision == 16 else None,
|
||||
padding="longest",
|
||||
max_length=self.args.max_seq_length,
|
||||
num_labels = len(entity_list),
|
||||
)
|
||||
relations_tokens = self.processor.get_relations(args.data_dir)
|
||||
self.num_relations = len(relations_tokens)
|
||||
num_added_tokens = self.tokenizer.add_special_tokens({'additional_special_tokens': relations_tokens})
|
||||
|
||||
vocab = self.tokenizer.get_added_vocab()
|
||||
self.relation_id_st = vocab[relations_tokens[0]]
|
||||
self.relation_id_ed = vocab[relations_tokens[-1]] + 1
|
||||
self.entity_id_st = vocab[entity_list[0]]
|
||||
self.entity_id_ed = vocab[entity_list[-1]] + 1
|
||||
|
||||
|
||||
def setup(self, stage=None):
|
||||
self.data_train = get_dataset(self.args, self.processor, self.label_list, self.tokenizer, "train")
|
||||
self.data_val = get_dataset(self.args, self.processor, self.label_list, self.tokenizer, "dev")
|
||||
self.data_test = get_dataset(self.args, self.processor, self.label_list, self.tokenizer, "test")
|
||||
|
||||
def prepare_data(self):
|
||||
pass
|
||||
|
||||
def get_config(self):
|
||||
d = {}
|
||||
for k, v in self.__dict__.items():
|
||||
if "st" in k or "ed" in k:
|
||||
d.update({k:v})
|
||||
|
||||
return d
|
||||
|
||||
|
||||
@staticmethod
|
||||
def add_to_argparse(parser):
|
||||
BaseDataModule.add_to_argparse(parser)
|
||||
parser.add_argument("--model_name_or_path", type=str, default="roberta-base", help="the name or the path to the pretrained model")
|
||||
parser.add_argument("--data_dir", type=str, default="roberta-base", help="the name or the path to the pretrained model")
|
||||
parser.add_argument("--max_seq_length", type=int, default=256, help="Number of examples to operate on per forward step.")
|
||||
parser.add_argument("--warm_up_radio", type=float, default=0.1, help="Number of examples to operate on per forward step.")
|
||||
parser.add_argument("--eval_batch_size", type=int, default=8)
|
||||
parser.add_argument("--overwrite_cache", action="store_true", default=False)
|
||||
return parser
|
||||
|
||||
def get_tokenizer(self):
|
||||
return self.tokenizer
|
||||
|
||||
def train_dataloader(self):
|
||||
return DataLoader(self.data_train, num_workers=self.num_workers, pin_memory=True, collate_fn=self.sampler, batch_size=self.args.batch_size, shuffle=not self.args.faiss_init)
|
||||
|
||||
def val_dataloader(self):
|
||||
return DataLoader(self.data_val, num_workers=self.num_workers, pin_memory=True, collate_fn=self.sampler, batch_size=self.args.eval_batch_size)
|
||||
|
||||
def test_dataloader(self):
|
||||
return DataLoader(self.data_test, num_workers=self.num_workers, pin_memory=True, collate_fn=self.sampler, batch_size=self.args.eval_batch_size)
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,954 +0,0 @@
|
||||
from hashlib import new
|
||||
from re import DEBUG
|
||||
|
||||
import contextlib
|
||||
import sys
|
||||
|
||||
from collections import Counter
|
||||
from multiprocessing import Pool
|
||||
from torch._C import HOIST_CONV_PACKED_PARAMS
|
||||
from torch.utils.data import Dataset, Sampler, IterableDataset
|
||||
from collections import defaultdict
|
||||
from functools import partial
|
||||
from multiprocessing import Pool
|
||||
import os
|
||||
import random
|
||||
import json
|
||||
import torch
|
||||
import copy
|
||||
import numpy as np
|
||||
import pickle
|
||||
from tqdm import tqdm
|
||||
from dataclasses import dataclass, asdict, replace
|
||||
import inspect
|
||||
|
||||
from transformers.models.auto.tokenization_auto import AutoTokenizer
|
||||
|
||||
from models.utils import get_entity_spans_pre_processing
|
||||
import pyximport
|
||||
|
||||
pyximport.install(setup_args={'include_dirs': np.get_include()})
|
||||
import data.algos as algos
|
||||
|
||||
def lmap(a, b):
|
||||
return list(map(a,b)) # a是个函数,b是个值列表,返回函数值列表
|
||||
|
||||
def cache_results(_cache_fp, _refresh=False, _verbose=1):
|
||||
r"""
|
||||
cache_results是fastNLP中用于cache数据的装饰器。通过下面的例子看一下如何使用::
|
||||
|
||||
import time
|
||||
import numpy as np
|
||||
from fastNLP import cache_results
|
||||
|
||||
@cache_results('cache.pkl')
|
||||
def process_data():
|
||||
# 一些比较耗时的工作,比如读取数据,预处理数据等,这里用time.sleep()代替耗时
|
||||
time.sleep(1)
|
||||
return np.random.randint(10, size=(5,))
|
||||
|
||||
start_time = time.time()
|
||||
print("res =",process_data())
|
||||
print(time.time() - start_time)
|
||||
|
||||
start_time = time.time()
|
||||
print("res =",process_data())
|
||||
print(time.time() - start_time)
|
||||
|
||||
# 输出内容如下,可以看到两次结果相同,且第二次几乎没有花费时间
|
||||
# Save cache to cache.pkl.
|
||||
# res = [5 4 9 1 8]
|
||||
# 1.0042750835418701
|
||||
# Read cache from cache.pkl.
|
||||
# res = [5 4 9 1 8]
|
||||
# 0.0040721893310546875
|
||||
|
||||
可以看到第二次运行的时候,只用了0.0001s左右,是由于第二次运行将直接从cache.pkl这个文件读取数据,而不会经过再次预处理::
|
||||
|
||||
# 还是以上面的例子为例,如果需要重新生成另一个cache,比如另一个数据集的内容,通过如下的方式调用即可
|
||||
process_data(_cache_fp='cache2.pkl') # 完全不影响之前的‘cache.pkl'
|
||||
|
||||
上面的_cache_fp是cache_results会识别的参数,它将从'cache2.pkl'这里缓存/读取数据,即这里的'cache2.pkl'覆盖默认的
|
||||
'cache.pkl'。如果在你的函数前面加上了@cache_results()则你的函数会增加三个参数[_cache_fp, _refresh, _verbose]。
|
||||
上面的例子即为使用_cache_fp的情况,这三个参数不会传入到你的函数中,当然你写的函数参数名也不可能包含这三个名称::
|
||||
|
||||
process_data(_cache_fp='cache2.pkl', _refresh=True) # 这里强制重新生成一份对预处理的cache。
|
||||
# _verbose是用于控制输出信息的,如果为0,则不输出任何内容;如果为1,则会提醒当前步骤是读取的cache还是生成了新的cache
|
||||
|
||||
:param str _cache_fp: 将返回结果缓存到什么位置;或从什么位置读取缓存。如果为None,cache_results没有任何效用,除非在
|
||||
函数调用的时候传入_cache_fp这个参数。
|
||||
:param bool _refresh: 是否重新生成cache。
|
||||
:param int _verbose: 是否打印cache的信息。
|
||||
:return:
|
||||
"""
|
||||
|
||||
def wrapper_(func):
|
||||
signature = inspect.signature(func)
|
||||
for key, _ in signature.parameters.items():
|
||||
if key in ('_cache_fp', '_refresh', '_verbose'):
|
||||
raise RuntimeError("The function decorated by cache_results cannot have keyword `{}`.".format(key))
|
||||
|
||||
def wrapper(*args, **kwargs):
|
||||
my_args = args[0]
|
||||
mode = args[-1]
|
||||
if '_cache_fp' in kwargs:
|
||||
cache_filepath = kwargs.pop('_cache_fp')
|
||||
assert isinstance(cache_filepath, str), "_cache_fp can only be str."
|
||||
else:
|
||||
cache_filepath = _cache_fp
|
||||
if '_refresh' in kwargs:
|
||||
refresh = kwargs.pop('_refresh')
|
||||
assert isinstance(refresh, bool), "_refresh can only be bool."
|
||||
else:
|
||||
refresh = _refresh
|
||||
if '_verbose' in kwargs:
|
||||
verbose = kwargs.pop('_verbose')
|
||||
assert isinstance(verbose, int), "_verbose can only be integer."
|
||||
else:
|
||||
verbose = _verbose
|
||||
refresh_flag = True
|
||||
|
||||
model_name = my_args.model_name_or_path.split("/")[-1]
|
||||
is_pretrain = my_args.pretrain
|
||||
cache_filepath = os.path.join(my_args.data_dir, f"cached_{mode}_features{model_name}_pretrain{is_pretrain}_faiss{my_args.faiss_init}_seqlength{my_args.max_seq_length}_{my_args.litmodel_class}.pkl")
|
||||
refresh = my_args.overwrite_cache
|
||||
|
||||
if cache_filepath is not None and refresh is False:
|
||||
# load data
|
||||
if os.path.exists(cache_filepath):
|
||||
with open(cache_filepath, 'rb') as f:
|
||||
results = pickle.load(f)
|
||||
if verbose == 1:
|
||||
logger.info("Read cache from {}.".format(cache_filepath))
|
||||
refresh_flag = False
|
||||
|
||||
if refresh_flag:
|
||||
results = func(*args, **kwargs)
|
||||
if cache_filepath is not None:
|
||||
if results is None:
|
||||
raise RuntimeError("The return value is None. Delete the decorator.")
|
||||
with open(cache_filepath, 'wb') as f:
|
||||
pickle.dump(results, f)
|
||||
logger.info("Save cache to {}.".format(cache_filepath))
|
||||
|
||||
return results
|
||||
|
||||
return wrapper
|
||||
|
||||
return wrapper_
|
||||
|
||||
|
||||
import argparse
|
||||
import csv
|
||||
import logging
|
||||
import os
|
||||
import random
|
||||
import sys
|
||||
|
||||
import numpy as np
|
||||
import torch
|
||||
from torch.utils.data import (DataLoader, RandomSampler, SequentialSampler,
|
||||
TensorDataset)
|
||||
from torch.utils.data.distributed import DistributedSampler
|
||||
from tqdm import tqdm, trange
|
||||
|
||||
# from torch.nn import CrossEntropyLoss, MSELoss
|
||||
# from scipy.stats import pearsonr, spearmanr
|
||||
# from sklearn.metrics import matthews_corrcoef, f1_scoreclass
|
||||
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
class InputExample(object):
|
||||
"""A single training/test example for simple sequence classification."""
|
||||
|
||||
def __init__(self, guid, text_a, text_b=None, text_c=None, text_d=None, label=None, real_label=None, en=None, en_id=None, rel=None, text_d_id=None, graph_inf=None):
|
||||
"""Constructs a InputExample.
|
||||
|
||||
Args:
|
||||
guid: Unique id for the example.
|
||||
text_a: string. The untokenized text of the first sequence. For single
|
||||
sequence tasks, only this sequence must be specified.
|
||||
text_b: (Optional) string. The untokenized text of the second sequence.
|
||||
Only must be specified for sequence pair tasks.
|
||||
text_c: (Optional) string. The untokenized text of the third sequence.
|
||||
Only must be specified for sequence triple tasks.
|
||||
label: (Optional) string. list of entities
|
||||
"""
|
||||
self.guid = guid
|
||||
self.text_a = text_a
|
||||
self.text_b = text_b
|
||||
self.text_c = text_c
|
||||
self.text_d = text_d
|
||||
self.label = label
|
||||
self.real_label = real_label
|
||||
self.en = en
|
||||
self.rel = rel # rel id
|
||||
self.text_d_id = text_d_id
|
||||
self.graph_inf = graph_inf
|
||||
self.en_id = en_id
|
||||
|
||||
|
||||
@dataclass
|
||||
class InputFeatures:
|
||||
"""A single set of features of data."""
|
||||
|
||||
input_ids: torch.Tensor
|
||||
attention_mask: torch.Tensor
|
||||
labels: torch.Tensor = None
|
||||
label: torch.Tensor = None
|
||||
en: torch.Tensor = 0
|
||||
rel: torch.Tensor = 0
|
||||
pos: torch.Tensor = 0
|
||||
graph: torch.Tensor = 0
|
||||
distance_attention: torch.Tensor = 0
|
||||
# attention_bias: torch.Tensor = 0
|
||||
|
||||
|
||||
class DataProcessor(object):
|
||||
"""Base class for data converters for sequence classification data sets."""
|
||||
|
||||
def get_train_examples(self, data_dir):
|
||||
"""Gets a collection of `InputExample`s for the train set."""
|
||||
raise NotImplementedError()
|
||||
|
||||
def get_dev_examples(self, data_dir):
|
||||
"""Gets a collection of `InputExample`s for the dev set."""
|
||||
raise NotImplementedError()
|
||||
|
||||
def get_labels(self, data_dir):
|
||||
"""Gets the list of labels for this data set."""
|
||||
raise NotImplementedError()
|
||||
|
||||
@classmethod
|
||||
def _read_tsv(cls, input_file, quotechar=None):
|
||||
"""Reads a tab separated value file."""
|
||||
with open(input_file, "r", encoding="utf-8") as f:
|
||||
reader = csv.reader(f, delimiter="\t", quotechar=quotechar)
|
||||
lines = []
|
||||
for line in reader:
|
||||
if sys.version_info[0] == 2:
|
||||
line = list(unicode(cell, 'utf-8') for cell in line)
|
||||
lines.append(line)
|
||||
return lines
|
||||
|
||||
import copy
|
||||
|
||||
|
||||
def solve_get_knowledge_store(line, set_type="train", pretrain=1):
|
||||
"""
|
||||
use the LM to get the entity embedding.
|
||||
Transductive: triples + text description
|
||||
Inductive: text description
|
||||
|
||||
"""
|
||||
examples = []
|
||||
|
||||
head_ent_text = ent2text[line[0]]
|
||||
tail_ent_text = ent2text[line[2]]
|
||||
relation_text = rel2text[line[1]]
|
||||
|
||||
i=0
|
||||
|
||||
a = tail_filter_entities["\t".join([line[0],line[1]])]
|
||||
b = head_filter_entities["\t".join([line[2],line[1]])]
|
||||
|
||||
guid = "%s-%s" % (set_type, i)
|
||||
text_a = head_ent_text
|
||||
text_b = relation_text
|
||||
text_c = tail_ent_text
|
||||
|
||||
# use the description of c to predict A
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[PAD]", text_b=text_b + "[PAD]", text_c = "[PAD]" + " " + text_c, label=lmap(lambda x: ent2id[x], b), real_label=ent2id[line[0]], en=[ent2id[line[0]], rel2id[line[1]], ent2id[line[2]]], rel=0)
|
||||
)
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[PAD]", text_b=text_b + "[PAD]", text_c = "[PAD]" + " " + text_a, label=lmap(lambda x: ent2id[x], b), real_label=ent2id[line[2]], en=[ent2id[line[0]], rel2id[line[1]], ent2id[line[2]]], rel=0)
|
||||
)
|
||||
return examples
|
||||
|
||||
|
||||
def solve(line, set_type="train", pretrain=1, max_triplet=32):
|
||||
examples = []
|
||||
|
||||
head_ent_text = ent2text[line[0]]
|
||||
tail_ent_text = ent2text[line[2]]
|
||||
relation_text = rel2text[line[1]]
|
||||
|
||||
i=0
|
||||
|
||||
a = tail_filter_entities["\t".join([line[0],line[1]])]
|
||||
b = head_filter_entities["\t".join([line[2],line[1]])]
|
||||
|
||||
guid = "%s-%s" % (set_type, i)
|
||||
text_a = head_ent_text
|
||||
text_b = relation_text
|
||||
text_c = tail_ent_text
|
||||
|
||||
|
||||
if pretrain:
|
||||
text_a_tokens = text_a.split()
|
||||
for i in range(10):
|
||||
st = random.randint(0, len(text_a_tokens))
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[MASK]", text_b=" ".join(text_a_tokens[st:min(st+64, len(text_a_tokens))]), text_c = "", label=ent2id[line[0]], real_label=ent2id[line[0]], en=0, rel=0)
|
||||
)
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[MASK]", text_b=text_a, text_c = "", label=ent2id[line[0]], real_label=ent2id[line[0]], en=0, rel=0)
|
||||
)
|
||||
# examples.append(
|
||||
# InputExample(guid=guid, text_a="[MASK]", text_b=text_c, text_c = "", label=ent2id[line[2]], real_label=ent2id[line[2]], en=0, rel=0)
|
||||
# )
|
||||
else:
|
||||
# 主要是对text_c进行包装,不再是原来的文本,而是对应子图的graph(变量graph_seq)。如果mask的是尾实体,那么就让text_c在后面加入graph_seq
|
||||
# masked_head_seq = []
|
||||
# masked_tail_seq = []
|
||||
# masked_tail_graph_list = masked_tail_neighbor["\t".join([line[0],line[1]])]
|
||||
# masked_head_graph_list = masked_head_neighbor["\t".join([line[2],line[1]])]
|
||||
# for item in masked_head_graph_list:
|
||||
# masked_head_seq.append(ent2id[item[0]])
|
||||
# masked_head_seq.append(rel2id[item[1]])
|
||||
# masked_head_seq.append(ent2id[item[2]])
|
||||
|
||||
# for item in masked_tail_graph_list:
|
||||
# masked_tail_seq.append(ent2id[item[0]])
|
||||
# masked_tail_seq.append(rel2id[item[1]])
|
||||
# masked_tail_seq.append(ent2id[item[2]])
|
||||
|
||||
masked_head_seq = set()
|
||||
masked_head_seq_id = set()
|
||||
masked_tail_seq = set()
|
||||
masked_tail_seq_id = set()
|
||||
|
||||
masked_tail_graph_list = masked_tail_neighbor["\t".join([line[0],line[1]])] if len(masked_tail_neighbor["\t".join([line[0],line[1]])]) < max_triplet else \
|
||||
random.sample(masked_tail_neighbor["\t".join([line[0],line[1]])], max_triplet)
|
||||
masked_head_graph_list = masked_head_neighbor["\t".join([line[2],line[1]])] if len(masked_head_neighbor["\t".join([line[2],line[1]])]) < max_triplet else \
|
||||
random.sample(masked_head_neighbor["\t".join([line[2],line[1]])], max_triplet)
|
||||
# masked_tail_graph_list = masked_tail_neighbor["\t".join([line[0],line[1]])][:16]
|
||||
# masked_head_graph_list = masked_head_neighbor["\t".join([line[2],line[1]])][:16]
|
||||
for item in masked_head_graph_list:
|
||||
masked_head_seq.add(item[0])
|
||||
masked_head_seq.add(item[1])
|
||||
masked_head_seq.add(item[2])
|
||||
masked_head_seq_id.add(ent2id[item[0]])
|
||||
masked_head_seq_id.add(rel2id[item[1]])
|
||||
masked_head_seq_id.add(ent2id[item[2]])
|
||||
|
||||
for item in masked_tail_graph_list:
|
||||
masked_tail_seq.add(item[0])
|
||||
masked_tail_seq.add(item[1])
|
||||
masked_tail_seq.add(item[2])
|
||||
masked_tail_seq_id.add(ent2id[item[0]])
|
||||
masked_tail_seq_id.add(rel2id[item[1]])
|
||||
masked_tail_seq_id.add(ent2id[item[2]])
|
||||
# print(masked_tail_seq)
|
||||
masked_head_seq = masked_head_seq.difference({line[0]})
|
||||
masked_head_seq = masked_head_seq.difference({line[2]})
|
||||
masked_head_seq = masked_head_seq.difference({line[1]})
|
||||
masked_head_seq_id = masked_head_seq_id.difference({ent2id[line[0]]})
|
||||
masked_head_seq_id = masked_head_seq_id.difference({rel2id[line[1]]})
|
||||
masked_head_seq_id = masked_head_seq_id.difference({ent2id[line[2]]})
|
||||
|
||||
masked_tail_seq = masked_tail_seq.difference({line[0]})
|
||||
masked_tail_seq = masked_tail_seq.difference({line[2]})
|
||||
masked_tail_seq = masked_tail_seq.difference({line[1]})
|
||||
masked_tail_seq_id = masked_tail_seq_id.difference({ent2id[line[0]]})
|
||||
masked_tail_seq_id = masked_tail_seq_id.difference({rel2id[line[1]]})
|
||||
masked_tail_seq_id = masked_tail_seq_id.difference({ent2id[line[2]]})
|
||||
# examples.append(
|
||||
# InputExample(guid=guid, text_a="[MASK]", text_b=' '.join(text_b.split(' ')[:16]) + " [PAD]", text_c = "[PAD]" + " " + ' '.join(text_c.split(' ')[:16]), text_d = masked_head_seq, label=lmap(lambda x: ent2id[x], b), real_label=ent2id[line[0]], en=[rel2id[line[1]], ent2id[line[2]]], rel=rel2id[line[1]]))
|
||||
# examples.append(
|
||||
# InputExample(guid=guid, text_a="[PAD] ", text_b=' '.join(text_b.split(' ')[:16]) + " [PAD]", text_c = "[MASK]" +" " + ' '.join(text_a.split(' ')[:16]), text_d = masked_tail_seq, label=lmap(lambda x: ent2id[x], a), real_label=ent2id[line[2]], en=[ent2id[line[0]], rel2id[line[1]]], rel=rel2id[line[1]]))
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[MASK]", text_b="[PAD]", text_c = "[PAD]", text_d = list(masked_head_seq), label=lmap(lambda x: ent2id[x], b), real_label=ent2id[line[0]], en=[line[1], line[2]], en_id = [rel2id[line[1]], ent2id[line[2]]], rel=rel2id[line[1]], text_d_id = list(masked_head_seq_id), graph_inf = masked_head_graph_list))
|
||||
examples.append(
|
||||
InputExample(guid=guid, text_a="[PAD]", text_b="[PAD]", text_c = "[MASK]", text_d = list(masked_tail_seq), label=lmap(lambda x: ent2id[x], a), real_label=ent2id[line[2]], en=[line[0], line[1]], en_id = [ent2id[line[0]], rel2id[line[1]]], rel=rel2id[line[1]], text_d_id = list(masked_tail_seq_id), graph_inf = masked_tail_graph_list))
|
||||
return examples
|
||||
|
||||
def filter_init(head, tail, t1,t2, ent2id_, ent2token_, rel2id_, masked_head_neighbor_, masked_tail_neighbor_, rel2token_):
|
||||
global head_filter_entities
|
||||
global tail_filter_entities
|
||||
global ent2text
|
||||
global rel2text
|
||||
global ent2id
|
||||
global ent2token
|
||||
global rel2id
|
||||
global masked_head_neighbor
|
||||
global masked_tail_neighbor
|
||||
global rel2token
|
||||
|
||||
head_filter_entities = head
|
||||
tail_filter_entities = tail
|
||||
ent2text =t1
|
||||
rel2text =t2
|
||||
ent2id = ent2id_
|
||||
ent2token = ent2token_
|
||||
rel2id = rel2id_
|
||||
masked_head_neighbor = masked_head_neighbor_
|
||||
masked_tail_neighbor = masked_tail_neighbor_
|
||||
rel2token = rel2token_
|
||||
|
||||
def delete_init(ent2text_):
|
||||
global ent2text
|
||||
ent2text = ent2text_
|
||||
|
||||
|
||||
class KGProcessor(DataProcessor):
|
||||
"""Processor for knowledge graph data set."""
|
||||
def __init__(self, tokenizer, args):
|
||||
self.labels = set()
|
||||
self.tokenizer = tokenizer
|
||||
self.args = args
|
||||
self.entity_path = os.path.join(args.data_dir, "entity2textlong.txt") if os.path.exists(os.path.join(args.data_dir, 'entity2textlong.txt')) \
|
||||
else os.path.join(args.data_dir, "entity2text.txt")
|
||||
|
||||
def get_train_examples(self, data_dir):
|
||||
"""See base class."""
|
||||
return self._create_examples(
|
||||
self._read_tsv(os.path.join(data_dir, "train.tsv")), "train", data_dir, self.args)
|
||||
|
||||
def get_dev_examples(self, data_dir):
|
||||
"""See base class."""
|
||||
return self._create_examples(
|
||||
self._read_tsv(os.path.join(data_dir, "dev.tsv")), "dev", data_dir, self.args)
|
||||
|
||||
def get_test_examples(self, data_dir, chunk=""):
|
||||
"""See base class."""
|
||||
return self._create_examples(
|
||||
self._read_tsv(os.path.join(data_dir, f"test{chunk}.tsv")), "test", data_dir, self.args)
|
||||
|
||||
def get_relations(self, data_dir):
|
||||
"""Gets all labels (relations) in the knowledge graph."""
|
||||
# return list(self.labels)
|
||||
with open(os.path.join(data_dir, "relations.txt"), 'r') as f:
|
||||
lines = f.readlines()
|
||||
relations = []
|
||||
for line in lines:
|
||||
relations.append(line.strip().split('\t')[0])
|
||||
rel2token = {ent : f"[RELATION_{i}]" for i, ent in enumerate(relations)}
|
||||
return list(rel2token.values())
|
||||
|
||||
def get_labels(self, data_dir):
|
||||
"""Gets all labels (0, 1) for triples in the knowledge graph."""
|
||||
relation = []
|
||||
with open(os.path.join(data_dir, "relation2text.txt"), 'r') as f:
|
||||
lines = f.readlines()
|
||||
entities = []
|
||||
for line in lines:
|
||||
relation.append(line.strip().split("\t")[-1])
|
||||
return relation
|
||||
|
||||
def get_entities(self, data_dir):
|
||||
"""Gets all entities in the knowledge graph."""
|
||||
with open(self.entity_path, 'r') as f:
|
||||
lines = f.readlines()
|
||||
entities = []
|
||||
for line in lines:
|
||||
entities.append(line.strip().split("\t")[0])
|
||||
|
||||
ent2token = {ent : f"[ENTITY_{i}]" for i, ent in enumerate(entities)}
|
||||
return list(ent2token.values())
|
||||
|
||||
def get_train_triples(self, data_dir):
|
||||
"""Gets training triples."""
|
||||
return self._read_tsv(os.path.join(data_dir, "train.tsv"))
|
||||
|
||||
def get_dev_triples(self, data_dir):
|
||||
"""Gets validation triples."""
|
||||
return self._read_tsv(os.path.join(data_dir, "dev.tsv"))
|
||||
|
||||
def get_test_triples(self, data_dir, chunk=""):
|
||||
"""Gets test triples."""
|
||||
return self._read_tsv(os.path.join(data_dir, f"test{chunk}.tsv"))
|
||||
|
||||
def _create_examples(self, lines, set_type, data_dir, args):
|
||||
"""Creates examples for the training and dev sets."""
|
||||
# entity to text
|
||||
ent2text = {}
|
||||
ent2text_with_type = {}
|
||||
with open(self.entity_path, 'r') as f:
|
||||
ent_lines = f.readlines()
|
||||
for line in ent_lines:
|
||||
temp = line.strip().split('\t')
|
||||
try:
|
||||
end = temp[1]#.find(',')
|
||||
if "wiki" in data_dir:
|
||||
assert "Q" in temp[0]
|
||||
ent2text[temp[0]] = temp[1].replace("\\n", " ").replace("\\", "") #[:end]
|
||||
except IndexError:
|
||||
# continue
|
||||
end = " "#.find(',')
|
||||
if "wiki" in data_dir:
|
||||
assert "Q" in temp[0]
|
||||
ent2text[temp[0]] = end #[:end]
|
||||
|
||||
entities = list(ent2text.keys())
|
||||
ent2token = {ent : f"[ENTITY_{i}]" for i, ent in enumerate(entities)}
|
||||
ent2id = {ent : i for i, ent in enumerate(entities)}
|
||||
|
||||
rel2text = {}
|
||||
with open(os.path.join(data_dir, "relation2text.txt"), 'r') as f:
|
||||
rel_lines = f.readlines()
|
||||
for line in rel_lines:
|
||||
temp = line.strip().split('\t')
|
||||
rel2text[temp[0]] = temp[1]
|
||||
|
||||
relation_names = {}
|
||||
with open(os.path.join(data_dir, "relations.txt"), "r") as file:
|
||||
for line in file.readlines():
|
||||
t = line.strip()
|
||||
relation_names[t] = rel2text[t]
|
||||
|
||||
tmp_lines = []
|
||||
not_in_text = 0
|
||||
for line in tqdm(lines, desc="delete entities without text name."):
|
||||
if (line[0] not in ent2text) or (line[2] not in ent2text) or (line[1] not in rel2text):
|
||||
not_in_text += 1
|
||||
continue
|
||||
tmp_lines.append(line)
|
||||
lines = tmp_lines
|
||||
print(f"total entity not in text : {not_in_text} ")
|
||||
|
||||
relations = list(rel2text.keys())
|
||||
rel2token = {rel : f"[RELATION_{i}]" for i, rel in enumerate(relations)}
|
||||
# rel id -> relation token id
|
||||
num_entities = len(self.get_entities(args.data_dir))
|
||||
rel2id = {w:i+num_entities for i,w in enumerate(relation_names.keys())}
|
||||
|
||||
|
||||
with open(os.path.join(data_dir, "masked_head_neighbor.txt"), 'r') as file:
|
||||
masked_head_neighbor = json.load(file)
|
||||
|
||||
with open(os.path.join(data_dir, "masked_tail_neighbor.txt"), 'r') as file:
|
||||
masked_tail_neighbor = json.load(file)
|
||||
|
||||
examples = []
|
||||
# head filter head entity
|
||||
head_filter_entities = defaultdict(list)
|
||||
tail_filter_entities = defaultdict(list)
|
||||
|
||||
dataset_list = ["train.tsv", "dev.tsv", "test.tsv"]
|
||||
# in training, only use the train triples
|
||||
if set_type == "train" and not args.pretrain: dataset_list = dataset_list[0:1]
|
||||
for m in dataset_list:
|
||||
with open(os.path.join(data_dir, m), 'r') as file:
|
||||
train_lines = file.readlines()
|
||||
for idx in range(len(train_lines)):
|
||||
train_lines[idx] = train_lines[idx].strip().split("\t")
|
||||
|
||||
for line in train_lines:
|
||||
tail_filter_entities["\t".join([line[0], line[1]])].append(line[2])
|
||||
head_filter_entities["\t".join([line[2], line[1]])].append(line[0])
|
||||
|
||||
max_head_entities = max(len(_) for _ in head_filter_entities.values())
|
||||
max_tail_entities = max(len(_) for _ in tail_filter_entities.values())
|
||||
|
||||
# use bce loss, ignore the mlm
|
||||
if set_type == "train" and args.bce:
|
||||
lines = []
|
||||
for k, v in tail_filter_entities.items():
|
||||
h, r = k.split('\t')
|
||||
t = v[0]
|
||||
lines.append([h, r, t])
|
||||
for k, v in head_filter_entities.items():
|
||||
t, r = k.split('\t')
|
||||
h = v[0]
|
||||
lines.append([h, r, t])
|
||||
|
||||
|
||||
# for training , select each entity as for get mask embedding.
|
||||
if args.pretrain:
|
||||
rel = list(rel2text.keys())[0]
|
||||
lines = []
|
||||
for k in ent2text.keys():
|
||||
lines.append([k, rel, k])
|
||||
|
||||
print(f"max number of filter entities : {max_head_entities} {max_tail_entities}")
|
||||
# 把子图信息加入到filter_init中(初始化为文件夹,及固定子图),设置为全局变量,solve中调用
|
||||
from os import cpu_count
|
||||
threads = min(1, cpu_count())
|
||||
filter_init(head_filter_entities, tail_filter_entities,ent2text, rel2text, ent2id, ent2token, rel2id, masked_head_neighbor, masked_tail_neighbor, rel2token
|
||||
)
|
||||
|
||||
if hasattr(args, "faiss_init") and args.faiss_init:
|
||||
annotate_ = partial(
|
||||
solve_get_knowledge_store,
|
||||
pretrain=self.args.pretrain
|
||||
)
|
||||
else:
|
||||
annotate_ = partial(
|
||||
solve,
|
||||
pretrain=self.args.pretrain,
|
||||
max_triplet=self.args.max_triplet
|
||||
)
|
||||
examples = list(
|
||||
tqdm(
|
||||
map(annotate_, lines),
|
||||
total=len(lines),
|
||||
desc="convert text to examples"
|
||||
)
|
||||
)
|
||||
|
||||
tmp_examples = []
|
||||
for e in examples:
|
||||
for ee in e:
|
||||
tmp_examples.append(ee)
|
||||
examples = tmp_examples
|
||||
# delete vars
|
||||
del head_filter_entities, tail_filter_entities, ent2text, rel2text, ent2id, ent2token, rel2id
|
||||
return examples
|
||||
|
||||
class Verbalizer(object):
|
||||
def __init__(self, args):
|
||||
if "WN18RR" in args.data_dir:
|
||||
self.mode = "WN18RR"
|
||||
elif "FB15k" in args.data_dir:
|
||||
self.mode = "FB15k"
|
||||
elif "umls" in args.data_dir:
|
||||
self.mode = "umls"
|
||||
elif "codexs" in args.data_dir:
|
||||
self.mode = "codexs"
|
||||
elif "FB13" in args.data_dir:
|
||||
self.mode = "FB13"
|
||||
elif "WN11" in args.data_dir:
|
||||
self.mode = "WN11"
|
||||
|
||||
|
||||
def _convert(self, head, relation, tail):
|
||||
if self.mode == "umls":
|
||||
return f"The {relation} {head} is "
|
||||
|
||||
return f"{head} {relation}"
|
||||
|
||||
|
||||
class KGCDataset(Dataset):
|
||||
def __init__(self, features):
|
||||
self.features = features
|
||||
|
||||
def __getitem__(self, index):
|
||||
return self.features[index]
|
||||
|
||||
def __len__(self):
|
||||
return len(self.features)
|
||||
|
||||
def convert_examples_to_features_init(tokenizer_for_convert):
|
||||
global tokenizer
|
||||
tokenizer = tokenizer_for_convert
|
||||
|
||||
def convert_examples_to_features(example, max_seq_length, mode, pretrain=1):
|
||||
"""Loads a data file into a list of `InputBatch`s."""
|
||||
text_a = " ".join(example.text_a.split()[:128])
|
||||
text_b = " ".join(example.text_b.split()[:128])
|
||||
text_c = " ".join(example.text_c.split()[:128])
|
||||
|
||||
if pretrain:
|
||||
input_text_a = text_a
|
||||
input_text_b = text_b
|
||||
else:
|
||||
input_text_a = " ".join([text_a, text_b])
|
||||
input_text_b = text_c
|
||||
|
||||
|
||||
inputs = tokenizer(
|
||||
input_text_a,
|
||||
input_text_b,
|
||||
truncation="longest_first",
|
||||
max_length=max_seq_length,
|
||||
padding="longest",
|
||||
add_special_tokens=True,
|
||||
)
|
||||
# assert tokenizer.mask_token_id in inputs.input_ids, "mask token must in input"
|
||||
|
||||
features = asdict(InputFeatures(input_ids=inputs["input_ids"],
|
||||
attention_mask=inputs['attention_mask'],
|
||||
labels=torch.tensor(example.label),
|
||||
label=torch.tensor(example.real_label)
|
||||
)
|
||||
)
|
||||
return features
|
||||
|
||||
|
||||
def _truncate_seq_pair(tokens_a, tokens_b, max_length):
|
||||
"""Truncates a sequence pair in place to the maximum length."""
|
||||
|
||||
# This is a simple heuristic which will always truncate the longer sequence
|
||||
# one token at a time. This makes more sense than truncating an equal percent
|
||||
# of tokens from each, since if one sequence is very short then each token
|
||||
# that's truncated likely contains more information than a longer sequence.
|
||||
while True:
|
||||
total_length = len(tokens_a) + len(tokens_b)
|
||||
if total_length <= max_length:
|
||||
break
|
||||
if len(tokens_a) > len(tokens_b):
|
||||
tokens_a.pop()
|
||||
else:
|
||||
tokens_b.pop()
|
||||
|
||||
def _truncate_seq_triple(tokens_a, tokens_b, tokens_c, max_length):
|
||||
"""Truncates a sequence triple in place to the maximum length."""
|
||||
|
||||
# This is a simple heuristic which will always truncate the longer sequence
|
||||
# one token at a time. This makes more sense than truncating an equal percent
|
||||
# of tokens from each, since if one sequence is very short then each token
|
||||
# that's truncated likely contains more information than a longer sequence.
|
||||
while True:
|
||||
total_length = len(tokens_a) + len(tokens_b) + len(tokens_c)
|
||||
if total_length <= max_length:
|
||||
break
|
||||
if len(tokens_a) > len(tokens_b) and len(tokens_a) > len(tokens_c):
|
||||
tokens_a.pop()
|
||||
elif len(tokens_b) > len(tokens_a) and len(tokens_b) > len(tokens_c):
|
||||
tokens_b.pop()
|
||||
elif len(tokens_c) > len(tokens_a) and len(tokens_c) > len(tokens_b):
|
||||
tokens_c.pop()
|
||||
else:
|
||||
tokens_c.pop()
|
||||
|
||||
|
||||
@cache_results(_cache_fp="./dataset")
|
||||
def get_dataset(args, processor, label_list, tokenizer, mode):
|
||||
|
||||
assert mode in ["train", "dev", "test"], "mode must be in train dev test!"
|
||||
|
||||
# use training data to construct the entity embedding
|
||||
combine_train_and_test = False
|
||||
if args.faiss_init and mode == "test" and not args.pretrain:
|
||||
mode = "train"
|
||||
if "ind" in args.data_dir: combine_train_and_test = True
|
||||
else:
|
||||
pass
|
||||
|
||||
if mode == "train":
|
||||
train_examples = processor.get_train_examples(args.data_dir)
|
||||
elif mode == "dev":
|
||||
train_examples = processor.get_dev_examples(args.data_dir)
|
||||
else:
|
||||
train_examples = processor.get_test_examples(args.data_dir)
|
||||
|
||||
if combine_train_and_test:
|
||||
logger.info("use all the dataset for getting the entity mask embedding in pretraining pretraining")
|
||||
logger.info("use all the dataset for getting the entity mask embedding in pretraining pretraining")
|
||||
train_examples = processor.get_test_examples(args.data_dir) + processor.get_train_examples(args.data_dir) + processor.get_dev_examples(args.data_dir)
|
||||
|
||||
from os import cpu_count
|
||||
with open(os.path.join(args.data_dir, f"examples_{mode}.txt"), 'w') as file:
|
||||
for line in train_examples:
|
||||
d = {}
|
||||
d.update(line.__dict__)
|
||||
file.write(json.dumps(d) + '\n')
|
||||
|
||||
# 这里应该不需要重新from_pretrain,必须沿用加入token的
|
||||
tokenizer = AutoTokenizer.from_pretrained(args.model_name_or_path, use_fast=False)
|
||||
|
||||
features = []
|
||||
|
||||
file_inputs = [os.path.join(args.data_dir, f"examples_{mode}.txt")]
|
||||
file_outputs = [os.path.join(args.data_dir, f"features_{mode}.txt")]
|
||||
|
||||
with contextlib.ExitStack() as stack:
|
||||
inputs = [
|
||||
stack.enter_context(open(input, "r", encoding="utf-8"))
|
||||
if input != "-" else sys.stdin
|
||||
for input in file_inputs
|
||||
]
|
||||
outputs = [
|
||||
stack.enter_context(open(output, "w", encoding="utf-8"))
|
||||
if output != "-" else sys.stdout
|
||||
for output in file_outputs
|
||||
]
|
||||
|
||||
encoder = MultiprocessingEncoder(tokenizer, args)
|
||||
pool = Pool(16, initializer=encoder.initializer)
|
||||
encoder.initializer()
|
||||
encoded_lines = pool.imap(encoder.encode_lines, zip(*inputs), 1000)
|
||||
# encoded_lines = map(encoder.encode_lines, zip(*inputs))
|
||||
|
||||
stats = Counter()
|
||||
for i, (filt, enc_lines) in tqdm(enumerate(encoded_lines, start=1), total=len(train_examples)):
|
||||
if filt == "PASS":
|
||||
for enc_line, output_h in zip(enc_lines, outputs):
|
||||
features.append(eval(enc_line))
|
||||
# features.append(enc_line)
|
||||
# print(enc_line, file=output_h)
|
||||
else:
|
||||
stats["num_filtered_" + filt] += 1
|
||||
|
||||
for k, v in stats.most_common():
|
||||
print("[{}] filtered {} lines".format(k, v), file=sys.stderr)
|
||||
|
||||
for f_id, f in enumerate(features):
|
||||
en = features[f_id].pop("en")
|
||||
rel = features[f_id].pop("rel")
|
||||
graph = features[f_id].pop("graph")
|
||||
real_label = f['label']
|
||||
features[f_id]['distance_attention'] = torch.Tensor(features[f_id]['distance_attention'])
|
||||
|
||||
cnt = 0
|
||||
cnt_2 = 0
|
||||
if not isinstance(en, list): break
|
||||
|
||||
pos = 0
|
||||
for i,t in enumerate(f['input_ids']):
|
||||
if t == tokenizer.pad_token_id:
|
||||
features[f_id]['input_ids'][i] = en[cnt] + len(tokenizer)
|
||||
cnt += 1
|
||||
if t == tokenizer.unk_token_id:
|
||||
features[f_id]['input_ids'][i] = graph[cnt_2] + len(tokenizer)
|
||||
cnt_2 += 1
|
||||
if features[f_id]['input_ids'][i] == real_label + len(tokenizer):
|
||||
pos = i
|
||||
if cnt_2 == len(graph) and cnt == len(en): break
|
||||
# 如果等于UNK, pop出图节点list,然后替换
|
||||
assert not (args.faiss_init and pos == 0)
|
||||
features[f_id]['pos'] = pos
|
||||
|
||||
# for i,t in enumerate(f['input_ids']):
|
||||
# if t == tokenizer.pad_token_id:
|
||||
# features[f_id]['input_ids'][i] = rel + len(tokenizer) + num_entities
|
||||
# break
|
||||
|
||||
|
||||
|
||||
features = KGCDataset(features)
|
||||
return features
|
||||
|
||||
|
||||
class MultiprocessingEncoder(object):
|
||||
def __init__(self, tokenizer, args):
|
||||
self.tokenizer = tokenizer
|
||||
self.pretrain = args.pretrain
|
||||
self.max_seq_length = args.max_seq_length
|
||||
|
||||
def initializer(self):
|
||||
global bpe
|
||||
bpe = self.tokenizer
|
||||
|
||||
def encode(self, line):
|
||||
global bpe
|
||||
ids = bpe.encode(line)
|
||||
return list(map(str, ids))
|
||||
|
||||
def decode(self, tokens):
|
||||
global bpe
|
||||
return bpe.decode(tokens)
|
||||
|
||||
def encode_lines(self, lines):
|
||||
"""
|
||||
Encode a set of lines. All lines will be encoded together.
|
||||
"""
|
||||
enc_lines = []
|
||||
for line in lines:
|
||||
line = line.strip()
|
||||
if len(line) == 0:
|
||||
return ["EMPTY", None]
|
||||
# enc_lines.append(" ".join(tokens))
|
||||
enc_lines.append(json.dumps(self.convert_examples_to_features(example=eval(line))))
|
||||
# enc_lines.append(" ")
|
||||
# enc_lines.append("123")
|
||||
return ["PASS", enc_lines]
|
||||
|
||||
def decode_lines(self, lines):
|
||||
dec_lines = []
|
||||
for line in lines:
|
||||
tokens = map(int, line.strip().split())
|
||||
dec_lines.append(self.decode(tokens))
|
||||
return ["PASS", dec_lines]
|
||||
|
||||
def convert_examples_to_features(self, example):
|
||||
pretrain = self.pretrain
|
||||
max_seq_length = self.max_seq_length
|
||||
global bpe
|
||||
"""Loads a data file into a list of `InputBatch`s."""
|
||||
# tokens_a = tokenizer.tokenize(example.text_a)
|
||||
# tokens_b = tokenizer.tokenize(example.text_b)
|
||||
# tokens_c = tokenizer.tokenize(example.text_c)
|
||||
|
||||
# _truncate_seq_triple(tokens_a, tokens_b, tokens_c, max_length= max_seq_length)
|
||||
# text_a = " ".join(example['text_a'].split()[:128])
|
||||
# text_b = " ".join(example['text_b'].split()[:128])
|
||||
# text_c = " ".join(example['text_c'].split()[:128])
|
||||
|
||||
text_a = example['text_a']
|
||||
text_b = example['text_b']
|
||||
text_c = example['text_c']
|
||||
text_d = example['text_d']
|
||||
graph_list = example['graph_inf']
|
||||
|
||||
if pretrain:
|
||||
# the des of xxx is [MASK] .
|
||||
input_text = f"The description of {text_a} is that {text_b} ."
|
||||
inputs = bpe(
|
||||
input_text,
|
||||
truncation="longest_first",
|
||||
max_length=max_seq_length,
|
||||
padding="longest",
|
||||
add_special_tokens=True,
|
||||
)
|
||||
else:
|
||||
if text_a == "[MASK]":
|
||||
input_text_a = " ".join([text_a, text_b])
|
||||
input_text_b = text_c
|
||||
origin_triplet = ["MASK"] + example['en']
|
||||
graph_seq = ["MASK"] + example['en'] + text_d
|
||||
else:
|
||||
input_text_a = text_a
|
||||
input_text_b = " ".join([text_b, text_c])
|
||||
origin_triplet = example['en'] + ["MASK"]
|
||||
graph_seq = example['en'] + ["MASK"] + text_d
|
||||
# 加入graph信息, 拼接等量[UNK]
|
||||
input_text_b = " ".join(["[CLS]", input_text_a, input_text_b, bpe.unk_token * len(text_d)])
|
||||
|
||||
inputs = bpe(
|
||||
input_text_b,
|
||||
truncation="longest_first",
|
||||
max_length=max_seq_length,
|
||||
padding="longest",
|
||||
add_special_tokens=False,
|
||||
)
|
||||
# assert bpe.mask_token_id in inputs.input_ids, "mask token must in input"
|
||||
|
||||
# graph_seq = input_text_b[] 把图结构信息读取出来
|
||||
# [CLS] [ENTITY_13258] [RELATION_68] [MASK] [ENTITY_4] [RELATION_127] [ENTITY_8] [RELATION_9] [ENTITY_9011] [ENTITY_12477] [PAD] [PAD]
|
||||
# 获取图结构信息
|
||||
# 首先在solve中加入一个存储所有子图三元组的临时存储变量
|
||||
# 在这里graph_information = example['graph']
|
||||
new_rel = set()
|
||||
new_rel.add(tuple((origin_triplet[0], origin_triplet[1])))
|
||||
new_rel.add(tuple((origin_triplet[1], origin_triplet[0])))
|
||||
new_rel.add(tuple((origin_triplet[1], origin_triplet[2])))
|
||||
new_rel.add(tuple((origin_triplet[2], origin_triplet[1])))
|
||||
for triplet in graph_list:
|
||||
rel1, rel2, rel3, rel4 = tuple((triplet[0], triplet[1])), tuple((triplet[1], triplet[2])), tuple((triplet[1], triplet[0])), tuple((triplet[2], triplet[1]))
|
||||
new_rel.add(rel1)
|
||||
new_rel.add(rel2)
|
||||
new_rel.add(rel3)
|
||||
new_rel.add(rel4)
|
||||
# 这里的三元组转换为new_rel
|
||||
KGid2Graphid_map = defaultdict(int)
|
||||
for i in range(len(graph_seq)):
|
||||
KGid2Graphid_map[graph_seq[i]] = i
|
||||
|
||||
N = len(graph_seq)
|
||||
adj = torch.zeros([N, N], dtype=torch.bool)
|
||||
for item in list(new_rel):
|
||||
adj[KGid2Graphid_map[item[0]], KGid2Graphid_map[item[1]]] = True
|
||||
shortest_path_result, _ = algos.floyd_warshall(adj.numpy())
|
||||
max_dist = np.amax(shortest_path_result)
|
||||
# [PAD]部分, [CLS]部分补全, [SEP]额外引入也当作[PAD]处理
|
||||
# 加上一个attention_bias, PAD部分设置为-inf,在送入model前,对其进行处理, 将其相加(让模型无法关注PAD)
|
||||
|
||||
# 加入attention到huggingface的BertForMaskedLM(这个可能需要再去查查)
|
||||
# attention_bias = torch.zero(N, N, dtype=torch.float)
|
||||
# attention_bias[torch.tensor(shortest_path_result == )]
|
||||
features = asdict(InputFeatures(input_ids=inputs["input_ids"],
|
||||
attention_mask=inputs['attention_mask'],
|
||||
labels=example['label'],
|
||||
label=example['real_label'],
|
||||
en=example['en_id'],
|
||||
rel=example['rel'],
|
||||
graph=example['text_d_id'],
|
||||
distance_attention = shortest_path_result.tolist(),
|
||||
)
|
||||
)
|
||||
return features
|
||||
@@ -0,0 +1,661 @@
|
||||
steroid interacts_with eicosanoid
|
||||
clinical_attribute isa conceptual_entity
|
||||
body_location_or_region location_of physiologic_function
|
||||
neoplastic_process isa disease_or_syndrome
|
||||
carbohydrate affects molecular_function
|
||||
disease_or_syndrome affects organ_or_tissue_function
|
||||
substance issue_in occupation_or_discipline
|
||||
laboratory_or_test_result evaluation_of genetic_function
|
||||
chemical_viewed_functionally isa entity
|
||||
organophosphorus_compound ingredient_of clinical_drug
|
||||
mental_or_behavioral_dysfunction affects social_behavior
|
||||
human_caused_phenomenon_or_process result_of pathologic_function
|
||||
amino_acid_peptide_or_protein interacts_with antibiotic
|
||||
hormone affects experimental_model_of_disease
|
||||
antibiotic affects cell_function
|
||||
embryonic_structure part_of bird
|
||||
tissue produces organic_chemical
|
||||
genetic_function process_of organ_or_tissue_function
|
||||
congenital_abnormality part_of mammal
|
||||
inorganic_chemical causes cell_or_molecular_dysfunction
|
||||
receptor disrupts cell
|
||||
professional_society location_of laboratory_procedure
|
||||
organism_function co-occurs_with cell_function
|
||||
immunologic_factor causes cell_or_molecular_dysfunction
|
||||
vitamin affects neoplastic_process
|
||||
antibiotic complicates anatomical_abnormality
|
||||
quantitative_concept measurement_of physiologic_function
|
||||
pathologic_function affects biologic_function
|
||||
congenital_abnormality issue_in occupation_or_discipline
|
||||
tissue adjacent_to body_space_or_junction
|
||||
vitamin disrupts organ_or_tissue_function
|
||||
receptor isa substance
|
||||
mental_process isa organism_function
|
||||
vertebrate exhibits individual_behavior
|
||||
body_location_or_region location_of therapeutic_or_preventive_procedure
|
||||
physical_object issue_in biomedical_occupation_or_discipline
|
||||
inorganic_chemical affects cell_function
|
||||
neoplastic_process affects vertebrate
|
||||
cell_function affects mammal
|
||||
population_group uses medical_device
|
||||
human_caused_phenomenon_or_process result_of molecular_function
|
||||
pharmacologic_substance treats neoplastic_process
|
||||
embryonic_structure location_of cell_or_molecular_dysfunction
|
||||
experimental_model_of_disease result_of laboratory_procedure
|
||||
enzyme disrupts cell_function
|
||||
pathologic_function complicates injury_or_poisoning
|
||||
mental_or_behavioral_dysfunction degree_of disease_or_syndrome
|
||||
plant interacts_with animal
|
||||
disease_or_syndrome process_of pathologic_function
|
||||
pathologic_function result_of diagnostic_procedure
|
||||
anatomical_abnormality manifestation_of biologic_function
|
||||
laboratory_or_test_result manifestation_of pathologic_function
|
||||
fish issue_in biomedical_occupation_or_discipline
|
||||
carbohydrate affects cell_or_molecular_dysfunction
|
||||
biologic_function affects virus
|
||||
mental_process precedes cell_function
|
||||
experimental_model_of_disease occurs_in mental_or_behavioral_dysfunction
|
||||
congenital_abnormality part_of bacterium
|
||||
human_caused_phenomenon_or_process result_of physiologic_function
|
||||
cell location_of therapeutic_or_preventive_procedure
|
||||
experimental_model_of_disease process_of natural_phenomenon_or_process
|
||||
neoplastic_process result_of phenomenon_or_process
|
||||
neuroreactive_substance_or_biogenic_amine affects organism_function
|
||||
mental_or_behavioral_dysfunction process_of archaeon
|
||||
congenital_abnormality part_of virus
|
||||
pathologic_function manifestation_of genetic_function
|
||||
biologically_active_substance causes mental_or_behavioral_dysfunction
|
||||
pharmacologic_substance treats disease_or_syndrome
|
||||
body_space_or_junction location_of cell_function
|
||||
genetic_function affects virus
|
||||
acquired_abnormality result_of diagnostic_procedure
|
||||
physiologic_function affects archaeon
|
||||
cell_component location_of pathologic_function
|
||||
molecular_biology_research_technique measures chemical_viewed_functionally
|
||||
molecular_function result_of human_caused_phenomenon_or_process
|
||||
professional_or_occupational_group uses manufactured_object
|
||||
receptor disrupts molecular_function
|
||||
organ_or_tissue_function process_of biologic_function
|
||||
molecular_biology_research_technique measures element_ion_or_isotope
|
||||
physiologic_function result_of experimental_model_of_disease
|
||||
physiologic_function produces biologically_active_substance
|
||||
fully_formed_anatomical_structure part_of amphibian
|
||||
enzyme complicates organism_function
|
||||
tissue location_of virus
|
||||
invertebrate isa animal
|
||||
mental_process co-occurs_with genetic_function
|
||||
anatomical_abnormality location_of bacterium
|
||||
fully_formed_anatomical_structure location_of cell_or_molecular_dysfunction
|
||||
organ_or_tissue_function co-occurs_with genetic_function
|
||||
physiologic_function result_of human_caused_phenomenon_or_process
|
||||
molecular_function result_of cell_or_molecular_dysfunction
|
||||
diagnostic_procedure associated_with pathologic_function
|
||||
physiologic_function result_of neoplastic_process
|
||||
lipid interacts_with pharmacologic_substance
|
||||
cell_component produces receptor
|
||||
physiologic_function result_of congenital_abnormality
|
||||
age_group performs machine_activity
|
||||
congenital_abnormality associated_with organism_attribute
|
||||
laboratory_procedure analyzes amino_acid_peptide_or_protein
|
||||
vitamin affects mental_process
|
||||
cell_component part_of organism
|
||||
classification isa conceptual_entity
|
||||
organism_function result_of pathologic_function
|
||||
organism_function produces vitamin
|
||||
laboratory_procedure diagnoses mental_or_behavioral_dysfunction
|
||||
carbohydrate affects pathologic_function
|
||||
cell_component isa entity
|
||||
pathologic_function affects organism
|
||||
mental_process affects bacterium
|
||||
laboratory_or_test_result indicates organ_or_tissue_function
|
||||
tissue produces body_substance
|
||||
cell_component part_of body_part_organ_or_organ_component
|
||||
molecular_function affects mental_or_behavioral_dysfunction
|
||||
carbohydrate interacts_with immunologic_factor
|
||||
daily_or_recreational_activity associated_with acquired_abnormality
|
||||
molecular_function result_of disease_or_syndrome
|
||||
neoplastic_process occurs_in injury_or_poisoning
|
||||
fully_formed_anatomical_structure part_of archaeon
|
||||
carbohydrate affects mental_process
|
||||
element_ion_or_isotope interacts_with hazardous_or_poisonous_substance
|
||||
injury_or_poisoning disrupts molecular_function
|
||||
professional_or_occupational_group interacts_with population_group
|
||||
mental_or_behavioral_dysfunction affects archaeon
|
||||
organic_chemical affects neoplastic_process
|
||||
substance causes disease_or_syndrome
|
||||
biologically_active_substance causes disease_or_syndrome
|
||||
injury_or_poisoning disrupts tissue
|
||||
pathologic_function issue_in occupation_or_discipline
|
||||
mental_or_behavioral_dysfunction process_of reptile
|
||||
acquired_abnormality manifestation_of pathologic_function
|
||||
element_ion_or_isotope issue_in biomedical_occupation_or_discipline
|
||||
behavior associated_with age_group
|
||||
disease_or_syndrome complicates cell_or_molecular_dysfunction
|
||||
fully_formed_anatomical_structure produces receptor
|
||||
chemical causes injury_or_poisoning
|
||||
mental_or_behavioral_dysfunction affects reptile
|
||||
biologic_function affects organism_function
|
||||
antibiotic interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
biologically_active_substance affects mental_or_behavioral_dysfunction
|
||||
laboratory_procedure assesses_effect_of genetic_function
|
||||
research_activity measures amino_acid_peptide_or_protein
|
||||
disease_or_syndrome affects cell_or_molecular_dysfunction
|
||||
pathologic_function result_of disease_or_syndrome
|
||||
disease_or_syndrome occurs_in mental_or_behavioral_dysfunction
|
||||
social_behavior associated_with patient_or_disabled_group
|
||||
antibiotic diagnoses mental_or_behavioral_dysfunction
|
||||
pathologic_function result_of organism_function
|
||||
plant interacts_with reptile
|
||||
mental_or_behavioral_dysfunction affects amphibian
|
||||
sign_or_symptom diagnoses mental_or_behavioral_dysfunction
|
||||
biologic_function result_of mental_or_behavioral_dysfunction
|
||||
biologic_function affects cell_or_molecular_dysfunction
|
||||
anatomical_abnormality part_of vertebrate
|
||||
family_group interacts_with group
|
||||
experimental_model_of_disease process_of fish
|
||||
mental_or_behavioral_dysfunction affects natural_phenomenon_or_process
|
||||
organism_function affects alga
|
||||
cell_component location_of body_space_or_junction
|
||||
body_part_organ_or_organ_component location_of genetic_function
|
||||
chemical affects genetic_function
|
||||
chemical_viewed_functionally affects physiologic_function
|
||||
language issue_in biomedical_occupation_or_discipline
|
||||
body_part_organ_or_organ_component location_of organ_or_tissue_function
|
||||
research_activity isa occupational_activity
|
||||
diagnostic_procedure analyzes hazardous_or_poisonous_substance
|
||||
experimental_model_of_disease occurs_in group
|
||||
nucleic_acid_nucleoside_or_nucleotide isa entity
|
||||
diagnostic_procedure associated_with congenital_abnormality
|
||||
occupational_activity associated_with cell_or_molecular_dysfunction
|
||||
organ_or_tissue_function result_of acquired_abnormality
|
||||
molecular_function affects cell_function
|
||||
chemical_viewed_structurally ingredient_of clinical_drug
|
||||
mental_or_behavioral_dysfunction result_of behavior
|
||||
chemical_viewed_structurally interacts_with carbohydrate
|
||||
cell_function affects neoplastic_process
|
||||
pathologic_function occurs_in mental_or_behavioral_dysfunction
|
||||
family_group performs therapeutic_or_preventive_procedure
|
||||
family_group produces research_device
|
||||
amino_acid_peptide_or_protein affects mental_process
|
||||
hormone complicates biologic_function
|
||||
anatomical_abnormality result_of health_care_activity
|
||||
organism_function process_of biologic_function
|
||||
immunologic_factor complicates disease_or_syndrome
|
||||
nucleotide_sequence property_of nucleic_acid_nucleoside_or_nucleotide
|
||||
organization location_of occupational_activity
|
||||
clinical_attribute result_of genetic_function
|
||||
vitamin causes anatomical_abnormality
|
||||
mental_or_behavioral_dysfunction affects organ_or_tissue_function
|
||||
neoplastic_process result_of mental_or_behavioral_dysfunction
|
||||
body_part_organ_or_organ_component produces organic_chemical
|
||||
virus isa organism
|
||||
organ_or_tissue_function process_of physiologic_function
|
||||
individual_behavior associated_with occupation_or_discipline
|
||||
hazardous_or_poisonous_substance affects disease_or_syndrome
|
||||
cell_or_molecular_dysfunction affects physiologic_function
|
||||
hormone disrupts tissue
|
||||
molecular_function affects animal
|
||||
physiologic_function affects molecular_function
|
||||
biologic_function affects physiologic_function
|
||||
laboratory_or_test_result indicates mental_process
|
||||
chemical_viewed_structurally affects organ_or_tissue_function
|
||||
cell_function result_of disease_or_syndrome
|
||||
amino_acid_peptide_or_protein affects biologic_function
|
||||
experimental_model_of_disease affects biologic_function
|
||||
biomedical_or_dental_material affects biologic_function
|
||||
molecular_biology_research_technique measures amino_acid_peptide_or_protein
|
||||
experimental_model_of_disease affects bacterium
|
||||
antibiotic affects organ_or_tissue_function
|
||||
human isa mammal
|
||||
population_group performs daily_or_recreational_activity
|
||||
cell_component conceptual_part_of body_system
|
||||
cell part_of reptile
|
||||
organ_or_tissue_function affects human
|
||||
indicator_reagent_or_diagnostic_aid interacts_with chemical
|
||||
cell_or_molecular_dysfunction result_of organism_function
|
||||
molecular_biology_research_technique measures eicosanoid
|
||||
molecular_biology_research_technique measures natural_phenomenon_or_process
|
||||
organism_attribute result_of disease_or_syndrome
|
||||
pharmacologic_substance treats injury_or_poisoning
|
||||
genetic_function affects biologic_function
|
||||
group exhibits individual_behavior
|
||||
human_caused_phenomenon_or_process result_of phenomenon_or_process
|
||||
antibiotic affects genetic_function
|
||||
hormone interacts_with enzyme
|
||||
pathologic_function process_of archaeon
|
||||
bird interacts_with mammal
|
||||
neuroreactive_substance_or_biogenic_amine disrupts organ_or_tissue_function
|
||||
carbohydrate causes cell_or_molecular_dysfunction
|
||||
cell_function affects disease_or_syndrome
|
||||
cell part_of fungus
|
||||
organism_function process_of human
|
||||
receptor complicates mental_or_behavioral_dysfunction
|
||||
genetic_function isa molecular_function
|
||||
mental_or_behavioral_dysfunction degree_of cell_or_molecular_dysfunction
|
||||
group_attribute property_of family_group
|
||||
pharmacologic_substance diagnoses experimental_model_of_disease
|
||||
pathologic_function affects alga
|
||||
tissue location_of biologic_function
|
||||
organism_function co-occurs_with mental_process
|
||||
occupational_activity associated_with neoplastic_process
|
||||
indicator_reagent_or_diagnostic_aid affects genetic_function
|
||||
carbohydrate interacts_with biomedical_or_dental_material
|
||||
organism_function occurs_in temporal_concept
|
||||
inorganic_chemical causes anatomical_abnormality
|
||||
cell_or_molecular_dysfunction affects organism_function
|
||||
amphibian exhibits social_behavior
|
||||
anatomical_structure part_of alga
|
||||
lipid isa entity
|
||||
cell_or_molecular_dysfunction result_of disease_or_syndrome
|
||||
social_behavior associated_with professional_or_occupational_group
|
||||
cell produces hormone
|
||||
invertebrate isa entity
|
||||
organic_chemical causes cell_or_molecular_dysfunction
|
||||
acquired_abnormality result_of human_caused_phenomenon_or_process
|
||||
pathologic_function manifestation_of disease_or_syndrome
|
||||
chemical_viewed_functionally issue_in occupation_or_discipline
|
||||
experimental_model_of_disease co-occurs_with anatomical_abnormality
|
||||
laboratory_procedure assesses_effect_of element_ion_or_isotope
|
||||
diagnostic_procedure measures cell_function
|
||||
chemical_viewed_structurally issue_in occupation_or_discipline
|
||||
genetic_function affects disease_or_syndrome
|
||||
laboratory_or_test_result co-occurs_with sign_or_symptom
|
||||
amino_acid_peptide_or_protein interacts_with chemical_viewed_functionally
|
||||
cell part_of bacterium
|
||||
cell_function affects clinical_attribute
|
||||
fully_formed_anatomical_structure part_of plant
|
||||
chemical_viewed_structurally interacts_with lipid
|
||||
molecular_biology_research_technique measures molecular_function
|
||||
fungus interacts_with organism
|
||||
enzyme interacts_with vitamin
|
||||
congenital_abnormality manifestation_of mental_or_behavioral_dysfunction
|
||||
therapeutic_or_preventive_procedure complicates pathologic_function
|
||||
chemical affects organ_or_tissue_function
|
||||
virus location_of hormone
|
||||
organ_or_tissue_function produces hormone
|
||||
alga location_of neuroreactive_substance_or_biogenic_amine
|
||||
laboratory_procedure affects organ_or_tissue_function
|
||||
pathologic_function process_of invertebrate
|
||||
manufactured_object causes cell_or_molecular_dysfunction
|
||||
neoplastic_process affects rickettsia_or_chlamydia
|
||||
cell_or_molecular_dysfunction result_of acquired_abnormality
|
||||
genetic_function affects plant
|
||||
alga isa physical_object
|
||||
family_group performs laboratory_procedure
|
||||
disease_or_syndrome degree_of cell_or_molecular_dysfunction
|
||||
reptile exhibits social_behavior
|
||||
therapeutic_or_preventive_procedure affects patient_or_disabled_group
|
||||
qualitative_concept evaluation_of individual_behavior
|
||||
population_group uses regulation_or_law
|
||||
antibiotic causes cell_or_molecular_dysfunction
|
||||
cell_or_molecular_dysfunction occurs_in mental_or_behavioral_dysfunction
|
||||
acquired_abnormality manifestation_of genetic_function
|
||||
bacterium isa entity
|
||||
experimental_model_of_disease occurs_in age_group
|
||||
immunologic_factor causes congenital_abnormality
|
||||
laboratory_procedure measures pharmacologic_substance
|
||||
disease_or_syndrome affects fish
|
||||
biologic_function result_of neoplastic_process
|
||||
therapeutic_or_preventive_procedure associated_with acquired_abnormality
|
||||
cell produces vitamin
|
||||
mental_process process_of vertebrate
|
||||
mental_process result_of neoplastic_process
|
||||
diagnostic_procedure diagnoses cell_or_molecular_dysfunction
|
||||
rickettsia_or_chlamydia location_of vitamin
|
||||
neoplastic_process manifestation_of pathologic_function
|
||||
disease_or_syndrome precedes neoplastic_process
|
||||
physiologic_function result_of natural_phenomenon_or_process
|
||||
laboratory_or_test_result measurement_of food
|
||||
diagnostic_procedure assesses_effect_of element_ion_or_isotope
|
||||
vitamin causes cell_or_molecular_dysfunction
|
||||
carbohydrate_sequence isa idea_or_concept
|
||||
human_caused_phenomenon_or_process result_of injury_or_poisoning
|
||||
element_ion_or_isotope causes cell_or_molecular_dysfunction
|
||||
organic_chemical causes congenital_abnormality
|
||||
human_caused_phenomenon_or_process result_of experimental_model_of_disease
|
||||
experimental_model_of_disease complicates mental_or_behavioral_dysfunction
|
||||
organ_or_tissue_function isa natural_phenomenon_or_process
|
||||
nucleotide_sequence isa molecular_sequence
|
||||
physiologic_function affects fungus
|
||||
experimental_model_of_disease isa phenomenon_or_process
|
||||
cell_or_molecular_dysfunction manifestation_of injury_or_poisoning
|
||||
clinical_drug causes acquired_abnormality
|
||||
cell_component location_of genetic_function
|
||||
occupational_activity associated_with disease_or_syndrome
|
||||
laboratory_or_test_result associated_with anatomical_abnormality
|
||||
age_group performs social_behavior
|
||||
fully_formed_anatomical_structure location_of physiologic_function
|
||||
hormone interacts_with vitamin
|
||||
molecular_function precedes organism_function
|
||||
human_caused_phenomenon_or_process isa event
|
||||
professional_or_occupational_group performs diagnostic_procedure
|
||||
disease_or_syndrome co-occurs_with injury_or_poisoning
|
||||
mental_process produces biologically_active_substance
|
||||
molecular_function produces hormone
|
||||
neoplastic_process complicates congenital_abnormality
|
||||
neoplastic_process result_of mental_process
|
||||
eicosanoid issue_in biomedical_occupation_or_discipline
|
||||
health_care_related_organization isa entity
|
||||
cell_function isa biologic_function
|
||||
diagnostic_procedure analyzes pharmacologic_substance
|
||||
immunologic_factor complicates genetic_function
|
||||
physiologic_function precedes genetic_function
|
||||
immunologic_factor complicates physiologic_function
|
||||
mental_or_behavioral_dysfunction process_of mammal
|
||||
immunologic_factor indicates neoplastic_process
|
||||
neoplastic_process process_of genetic_function
|
||||
biologic_function affects fish
|
||||
organ_or_tissue_function affects bird
|
||||
mental_or_behavioral_dysfunction result_of environmental_effect_of_humans
|
||||
hazardous_or_poisonous_substance complicates neoplastic_process
|
||||
cell_or_molecular_dysfunction result_of social_behavior
|
||||
experimental_model_of_disease result_of human_caused_phenomenon_or_process
|
||||
element_ion_or_isotope interacts_with vitamin
|
||||
drug_delivery_device causes injury_or_poisoning
|
||||
fully_formed_anatomical_structure location_of fungus
|
||||
fully_formed_anatomical_structure location_of bacterium
|
||||
natural_phenomenon_or_process result_of disease_or_syndrome
|
||||
enzyme complicates experimental_model_of_disease
|
||||
individual_behavior manifestation_of mental_or_behavioral_dysfunction
|
||||
geographic_area isa idea_or_concept
|
||||
tissue isa fully_formed_anatomical_structure
|
||||
sign_or_symptom diagnoses experimental_model_of_disease
|
||||
educational_activity associated_with pathologic_function
|
||||
receptor affects biologic_function
|
||||
organ_or_tissue_function co-occurs_with physiologic_function
|
||||
mental_or_behavioral_dysfunction produces vitamin
|
||||
experimental_model_of_disease result_of physiologic_function
|
||||
hormone complicates physiologic_function
|
||||
self_help_or_relief_organization carries_out educational_activity
|
||||
environmental_effect_of_humans isa event
|
||||
chemical causes disease_or_syndrome
|
||||
diagnostic_procedure diagnoses congenital_abnormality
|
||||
cell_component part_of human
|
||||
experimental_model_of_disease result_of health_care_activity
|
||||
laboratory_or_test_result manifestation_of experimental_model_of_disease
|
||||
organism_attribute measurement_of mental_process
|
||||
cell_function affects genetic_function
|
||||
anatomical_structure part_of plant
|
||||
natural_phenomenon_or_process result_of pathologic_function
|
||||
congenital_abnormality result_of experimental_model_of_disease
|
||||
organism_function produces receptor
|
||||
food causes neoplastic_process
|
||||
hormone affects genetic_function
|
||||
diagnostic_procedure issue_in biomedical_occupation_or_discipline
|
||||
organ_or_tissue_function process_of mental_or_behavioral_dysfunction
|
||||
bird interacts_with archaeon
|
||||
laboratory_procedure analyzes organophosphorus_compound
|
||||
animal interacts_with organism
|
||||
laboratory_procedure assesses_effect_of disease_or_syndrome
|
||||
plant interacts_with alga
|
||||
therapeutic_or_preventive_procedure prevents neoplastic_process
|
||||
congenital_abnormality complicates anatomical_abnormality
|
||||
antibiotic disrupts organism_function
|
||||
age_group performs daily_or_recreational_activity
|
||||
gene_or_genome part_of plant
|
||||
amino_acid_peptide_or_protein interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
pharmacologic_substance causes pathologic_function
|
||||
lipid issue_in occupation_or_discipline
|
||||
research_device causes anatomical_abnormality
|
||||
disease_or_syndrome process_of alga
|
||||
anatomical_abnormality result_of cell_function
|
||||
antibiotic treats experimental_model_of_disease
|
||||
antibiotic complicates mental_process
|
||||
injury_or_poisoning result_of cell_function
|
||||
physiologic_function precedes organ_or_tissue_function
|
||||
genetic_function result_of human_caused_phenomenon_or_process
|
||||
quantitative_concept measurement_of mental_process
|
||||
fungus causes pathologic_function
|
||||
rickettsia_or_chlamydia location_of immunologic_factor
|
||||
eicosanoid interacts_with element_ion_or_isotope
|
||||
inorganic_chemical causes neoplastic_process
|
||||
anatomical_structure issue_in biomedical_occupation_or_discipline
|
||||
immunologic_factor complicates injury_or_poisoning
|
||||
drug_delivery_device treats injury_or_poisoning
|
||||
research_device isa entity
|
||||
biologically_active_substance interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
organophosphorus_compound interacts_with biologically_active_substance
|
||||
molecular_function affects amphibian
|
||||
mental_or_behavioral_dysfunction co-occurs_with injury_or_poisoning
|
||||
neoplastic_process manifestation_of experimental_model_of_disease
|
||||
bacterium location_of biologically_active_substance
|
||||
organic_chemical interacts_with biomedical_or_dental_material
|
||||
physiologic_function affects natural_phenomenon_or_process
|
||||
laboratory_procedure isa health_care_activity
|
||||
neoplastic_process complicates anatomical_abnormality
|
||||
anatomical_abnormality affects vertebrate
|
||||
clinical_attribute manifestation_of organ_or_tissue_function
|
||||
embryonic_structure part_of fungus
|
||||
inorganic_chemical interacts_with enzyme
|
||||
mental_or_behavioral_dysfunction co-occurs_with experimental_model_of_disease
|
||||
enzyme complicates neoplastic_process
|
||||
sign_or_symptom manifestation_of organ_or_tissue_function
|
||||
organ_or_tissue_function co-occurs_with molecular_function
|
||||
age_group isa group
|
||||
steroid affects neoplastic_process
|
||||
age_group exhibits behavior
|
||||
disease_or_syndrome manifestation_of physiologic_function
|
||||
diagnostic_procedure isa event
|
||||
biologically_active_substance disrupts gene_or_genome
|
||||
anatomical_abnormality manifestation_of mental_process
|
||||
cell_function result_of physiologic_function
|
||||
mental_process process_of human
|
||||
chemical issue_in biomedical_occupation_or_discipline
|
||||
alga interacts_with human
|
||||
vitamin affects biologic_function
|
||||
fully_formed_anatomical_structure produces carbohydrate
|
||||
environmental_effect_of_humans result_of acquired_abnormality
|
||||
disease_or_syndrome result_of human_caused_phenomenon_or_process
|
||||
organic_chemical interacts_with steroid
|
||||
cell_or_molecular_dysfunction process_of natural_phenomenon_or_process
|
||||
anatomical_abnormality part_of animal
|
||||
diagnostic_procedure uses drug_delivery_device
|
||||
molecular_biology_research_technique method_of diagnostic_procedure
|
||||
biologically_active_substance causes injury_or_poisoning
|
||||
anatomical_abnormality affects plant
|
||||
molecular_function process_of invertebrate
|
||||
diagnostic_procedure measures pharmacologic_substance
|
||||
element_ion_or_isotope affects molecular_function
|
||||
mental_or_behavioral_dysfunction result_of neoplastic_process
|
||||
machine_activity isa activity
|
||||
nucleic_acid_nucleoside_or_nucleotide interacts_with hormone
|
||||
laboratory_procedure affects neoplastic_process
|
||||
biomedical_or_dental_material isa chemical
|
||||
pathologic_function affects animal
|
||||
receptor causes pathologic_function
|
||||
indicator_reagent_or_diagnostic_aid causes anatomical_abnormality
|
||||
neuroreactive_substance_or_biogenic_amine affects cell_or_molecular_dysfunction
|
||||
cell_function affects rickettsia_or_chlamydia
|
||||
embryonic_structure location_of virus
|
||||
therapeutic_or_preventive_procedure affects cell_function
|
||||
human interacts_with organism
|
||||
fungus causes disease_or_syndrome
|
||||
cell produces receptor
|
||||
population_group produces regulation_or_law
|
||||
family_group performs research_activity
|
||||
vitamin causes injury_or_poisoning
|
||||
molecular_sequence issue_in biomedical_occupation_or_discipline
|
||||
steroid issue_in biomedical_occupation_or_discipline
|
||||
bacterium interacts_with fish
|
||||
cell_function result_of mental_process
|
||||
organism_attribute property_of mammal
|
||||
anatomical_abnormality manifestation_of disease_or_syndrome
|
||||
cell_or_molecular_dysfunction result_of environmental_effect_of_humans
|
||||
physiologic_function affects mammal
|
||||
fully_formed_anatomical_structure part_of bird
|
||||
organic_chemical interacts_with hormone
|
||||
idea_or_concept issue_in occupation_or_discipline
|
||||
patient_or_disabled_group uses research_device
|
||||
receptor causes acquired_abnormality
|
||||
biologic_function result_of disease_or_syndrome
|
||||
biologically_active_substance interacts_with enzyme
|
||||
physiologic_function isa biologic_function
|
||||
antibiotic complicates cell_function
|
||||
hazardous_or_poisonous_substance disrupts mental_process
|
||||
pathologic_function precedes cell_or_molecular_dysfunction
|
||||
organism_attribute property_of organism
|
||||
organophosphorus_compound interacts_with carbohydrate
|
||||
bacterium location_of receptor
|
||||
organ_or_tissue_function result_of experimental_model_of_disease
|
||||
fully_formed_anatomical_structure location_of organism_function
|
||||
finding isa conceptual_entity
|
||||
congenital_abnormality isa entity
|
||||
tissue issue_in biomedical_occupation_or_discipline
|
||||
natural_phenomenon_or_process result_of neoplastic_process
|
||||
organism_attribute manifestation_of organ_or_tissue_function
|
||||
therapeutic_or_preventive_procedure complicates cell_function
|
||||
population_group produces medical_device
|
||||
antibiotic interacts_with biologically_active_substance
|
||||
antibiotic causes acquired_abnormality
|
||||
cell_function produces vitamin
|
||||
neoplastic_process affects physiologic_function
|
||||
environmental_effect_of_humans result_of mental_or_behavioral_dysfunction
|
||||
organ_or_tissue_function affects organism_function
|
||||
lipid affects pathologic_function
|
||||
laboratory_procedure affects mental_process
|
||||
biologically_active_substance disrupts cell_component
|
||||
finding manifestation_of organism_function
|
||||
organism_function affects bird
|
||||
genetic_function affects physiologic_function
|
||||
cell_function result_of genetic_function
|
||||
antibiotic affects physiologic_function
|
||||
organophosphorus_compound causes pathologic_function
|
||||
natural_phenomenon_or_process affects genetic_function
|
||||
neoplastic_process produces receptor
|
||||
laboratory_procedure measures biomedical_or_dental_material
|
||||
organism_attribute measurement_of molecular_function
|
||||
physiologic_function affects biologic_function
|
||||
experimental_model_of_disease result_of neoplastic_process
|
||||
alga interacts_with virus
|
||||
congenital_abnormality location_of fungus
|
||||
antibiotic diagnoses cell_or_molecular_dysfunction
|
||||
diagnostic_procedure measures temporal_concept
|
||||
mental_or_behavioral_dysfunction result_of biologic_function
|
||||
pharmacologic_substance complicates biologic_function
|
||||
pharmacologic_substance disrupts organism_function
|
||||
anatomical_abnormality result_of injury_or_poisoning
|
||||
fully_formed_anatomical_structure location_of molecular_function
|
||||
nucleic_acid_nucleoside_or_nucleotide interacts_with antibiotic
|
||||
neuroreactive_substance_or_biogenic_amine isa biologically_active_substance
|
||||
experimental_model_of_disease process_of bacterium
|
||||
neuroreactive_substance_or_biogenic_amine interacts_with chemical
|
||||
cell_or_molecular_dysfunction affects bird
|
||||
laboratory_or_test_result isa conceptual_entity
|
||||
pathologic_function associated_with organism_attribute
|
||||
acquired_abnormality co-occurs_with injury_or_poisoning
|
||||
professional_or_occupational_group uses drug_delivery_device
|
||||
professional_or_occupational_group diagnoses experimental_model_of_disease
|
||||
cell_or_molecular_dysfunction degree_of neoplastic_process
|
||||
neoplastic_process issue_in biomedical_occupation_or_discipline
|
||||
disease_or_syndrome result_of mental_process
|
||||
neoplastic_process process_of bird
|
||||
pathologic_function result_of anatomical_abnormality
|
||||
congenital_abnormality manifestation_of disease_or_syndrome
|
||||
organism_attribute result_of neoplastic_process
|
||||
injury_or_poisoning issue_in occupation_or_discipline
|
||||
receptor causes mental_or_behavioral_dysfunction
|
||||
clinical_attribute property_of bacterium
|
||||
nucleic_acid_nucleoside_or_nucleotide affects experimental_model_of_disease
|
||||
lipid causes congenital_abnormality
|
||||
chemical_viewed_structurally interacts_with chemical_viewed_functionally
|
||||
antibiotic prevents pathologic_function
|
||||
eicosanoid isa organic_chemical
|
||||
biologically_active_substance disrupts organ_or_tissue_function
|
||||
organ_or_tissue_function affects genetic_function
|
||||
antibiotic affects neoplastic_process
|
||||
fully_formed_anatomical_structure location_of virus
|
||||
qualitative_concept evaluation_of activity
|
||||
embryonic_structure part_of cell
|
||||
enzyme disrupts tissue
|
||||
governmental_or_regulatory_activity associated_with disease_or_syndrome
|
||||
gene_or_genome location_of mental_process
|
||||
neoplastic_process process_of organism_function
|
||||
pharmacologic_substance issue_in biomedical_occupation_or_discipline
|
||||
receptor complicates disease_or_syndrome
|
||||
disease_or_syndrome process_of genetic_function
|
||||
anatomical_abnormality location_of virus
|
||||
embryonic_structure part_of vertebrate
|
||||
organism_function affects experimental_model_of_disease
|
||||
manufactured_object causes mental_or_behavioral_dysfunction
|
||||
cell part_of body_part_organ_or_organ_component
|
||||
molecular_function result_of experimental_model_of_disease
|
||||
medical_device treats acquired_abnormality
|
||||
disease_or_syndrome affects human
|
||||
body_part_organ_or_organ_component location_of molecular_function
|
||||
disease_or_syndrome occurs_in neoplastic_process
|
||||
vitamin isa chemical_viewed_functionally
|
||||
cell_component issue_in occupation_or_discipline
|
||||
cell_component produces nucleic_acid_nucleoside_or_nucleotide
|
||||
bacterium isa organism
|
||||
cell_or_molecular_dysfunction occurs_in injury_or_poisoning
|
||||
hazardous_or_poisonous_substance issue_in occupation_or_discipline
|
||||
organization location_of educational_activity
|
||||
tissue produces biologically_active_substance
|
||||
fungus isa physical_object
|
||||
organism_function result_of phenomenon_or_process
|
||||
organism_function isa biologic_function
|
||||
organic_chemical interacts_with nucleic_acid_nucleoside_or_nucleotide
|
||||
organic_chemical affects natural_phenomenon_or_process
|
||||
diagnostic_procedure associated_with neoplastic_process
|
||||
molecular_function produces neuroreactive_substance_or_biogenic_amine
|
||||
mental_or_behavioral_dysfunction process_of bird
|
||||
chemical_viewed_structurally affects biologic_function
|
||||
experimental_model_of_disease produces biologically_active_substance
|
||||
mental_or_behavioral_dysfunction associated_with organism_attribute
|
||||
laboratory_procedure analyzes neuroreactive_substance_or_biogenic_amine
|
||||
organic_chemical isa substance
|
||||
mental_or_behavioral_dysfunction affects plant
|
||||
daily_or_recreational_activity associated_with experimental_model_of_disease
|
||||
mental_process precedes organ_or_tissue_function
|
||||
chemical affects neoplastic_process
|
||||
hormone ingredient_of clinical_drug
|
||||
hormone isa biologically_active_substance
|
||||
molecular_biology_research_technique measures receptor
|
||||
experimental_model_of_disease precedes neoplastic_process
|
||||
pharmacologic_substance interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
virus interacts_with fish
|
||||
acquired_abnormality affects virus
|
||||
pathologic_function result_of molecular_function
|
||||
embryonic_structure location_of fungus
|
||||
pharmacologic_substance affects cell_or_molecular_dysfunction
|
||||
biologic_function result_of acquired_abnormality
|
||||
neoplastic_process co-occurs_with anatomical_abnormality
|
||||
neoplastic_process result_of acquired_abnormality
|
||||
body_part_organ_or_organ_component produces body_substance
|
||||
cell_or_molecular_dysfunction process_of mental_or_behavioral_dysfunction
|
||||
educational_activity issue_in occupation_or_discipline
|
||||
pathologic_function manifestation_of neoplastic_process
|
||||
virus causes pathologic_function
|
||||
injury_or_poisoning complicates experimental_model_of_disease
|
||||
eicosanoid interacts_with pharmacologic_substance
|
||||
molecular_function result_of natural_phenomenon_or_process
|
||||
neoplastic_process produces tissue
|
||||
diagnostic_procedure assesses_effect_of vitamin
|
||||
anatomical_abnormality manifestation_of organ_or_tissue_function
|
||||
hazardous_or_poisonous_substance ingredient_of clinical_drug
|
||||
organophosphorus_compound affects cell_or_molecular_dysfunction
|
||||
laboratory_procedure measures organism_attribute
|
||||
chemical_viewed_functionally interacts_with immunologic_factor
|
||||
diagnostic_procedure diagnoses disease_or_syndrome
|
||||
injury_or_poisoning complicates disease_or_syndrome
|
||||
molecular_function result_of congenital_abnormality
|
||||
biologic_function affects bacterium
|
||||
organism_function produces hormone
|
||||
individual_behavior associated_with neoplastic_process
|
||||
natural_phenomenon_or_process affects cell_function
|
||||
daily_or_recreational_activity associated_with pathologic_function
|
||||
fully_formed_anatomical_structure location_of rickettsia_or_chlamydia
|
||||
organ_or_tissue_function affects pathologic_function
|
||||
neoplastic_process affects amphibian
|
||||
acquired_abnormality occurs_in age_group
|
||||
mental_process affects organism_attribute
|
||||
molecular_biology_research_technique measures neoplastic_process
|
||||
disease_or_syndrome occurs_in patient_or_disabled_group
|
||||
mental_or_behavioral_dysfunction affects mammal
|
||||
environmental_effect_of_humans isa phenomenon_or_process
|
||||
cell_or_molecular_dysfunction precedes experimental_model_of_disease
|
||||
laboratory_or_test_result isa entity
|
||||
virus interacts_with archaeon
|
||||
indicator_reagent_or_diagnostic_aid causes mental_or_behavioral_dysfunction
|
||||
anatomical_structure part_of fungus
|
||||
cell_or_molecular_dysfunction process_of bird
|
||||
+5216
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,652 @@
|
||||
nucleic_acid_nucleoside_or_nucleotide affects mental_or_behavioral_dysfunction
|
||||
patient_or_disabled_group performs individual_behavior
|
||||
neoplastic_process process_of molecular_function
|
||||
lipid affects biologic_function
|
||||
neoplastic_process affects alga
|
||||
antibiotic affects cell_or_molecular_dysfunction
|
||||
eicosanoid affects mental_or_behavioral_dysfunction
|
||||
fully_formed_anatomical_structure location_of injury_or_poisoning
|
||||
machine_activity method_of laboratory_procedure
|
||||
cell_or_molecular_dysfunction isa pathologic_function
|
||||
molecular_biology_research_technique measures organism_function
|
||||
organism_function affects animal
|
||||
patient_or_disabled_group performs governmental_or_regulatory_activity
|
||||
laboratory_procedure measures mental_process
|
||||
tissue surrounds body_space_or_junction
|
||||
anatomical_abnormality affects organism_function
|
||||
plant location_of biologically_active_substance
|
||||
pathologic_function degree_of mental_or_behavioral_dysfunction
|
||||
rickettsia_or_chlamydia location_of neuroreactive_substance_or_biogenic_amine
|
||||
steroid causes anatomical_abnormality
|
||||
organophosphorus_compound isa organic_chemical
|
||||
amino_acid_peptide_or_protein interacts_with eicosanoid
|
||||
age_group produces research_device
|
||||
acquired_abnormality result_of genetic_function
|
||||
organic_chemical interacts_with chemical
|
||||
invertebrate interacts_with fish
|
||||
gene_or_genome produces nucleic_acid_nucleoside_or_nucleotide
|
||||
enzyme isa biologically_active_substance
|
||||
cell location_of body_space_or_junction
|
||||
clinical_attribute degree_of organism_attribute
|
||||
vitamin isa biologically_active_substance
|
||||
animal interacts_with mammal
|
||||
injury_or_poisoning result_of experimental_model_of_disease
|
||||
organism_function co-occurs_with physiologic_function
|
||||
amino_acid_peptide_or_protein interacts_with biologically_active_substance
|
||||
pharmacologic_substance disrupts cell_function
|
||||
mental_process process_of bird
|
||||
acquired_abnormality result_of social_behavior
|
||||
research_activity measures temporal_concept
|
||||
steroid isa substance
|
||||
molecular_function process_of cell_function
|
||||
professional_or_occupational_group performs health_care_activity
|
||||
disease_or_syndrome result_of physiologic_function
|
||||
body_location_or_region location_of injury_or_poisoning
|
||||
antibiotic complicates acquired_abnormality
|
||||
organophosphorus_compound interacts_with amino_acid_peptide_or_protein
|
||||
neuroreactive_substance_or_biogenic_amine complicates injury_or_poisoning
|
||||
gene_or_genome produces body_substance
|
||||
injury_or_poisoning associated_with clinical_attribute
|
||||
cell_function affects human
|
||||
finding associated_with injury_or_poisoning
|
||||
laboratory_procedure measures organic_chemical
|
||||
disease_or_syndrome result_of mental_or_behavioral_dysfunction
|
||||
physiologic_function precedes mental_process
|
||||
body_space_or_junction issue_in occupation_or_discipline
|
||||
mental_or_behavioral_dysfunction process_of animal
|
||||
acquired_abnormality result_of physiologic_function
|
||||
acquired_abnormality result_of injury_or_poisoning
|
||||
idea_or_concept isa conceptual_entity
|
||||
molecular_function process_of archaeon
|
||||
anatomical_abnormality result_of organism_function
|
||||
health_care_related_organization location_of molecular_biology_research_technique
|
||||
eicosanoid causes neoplastic_process
|
||||
pathologic_function precedes neoplastic_process
|
||||
environmental_effect_of_humans result_of injury_or_poisoning
|
||||
element_ion_or_isotope causes neoplastic_process
|
||||
molecular_function affects vertebrate
|
||||
neuroreactive_substance_or_biogenic_amine causes acquired_abnormality
|
||||
steroid causes congenital_abnormality
|
||||
inorganic_chemical interacts_with chemical
|
||||
tissue produces nucleic_acid_nucleoside_or_nucleotide
|
||||
body_part_organ_or_organ_component location_of cell_function
|
||||
organism_attribute property_of animal
|
||||
eicosanoid interacts_with indicator_reagent_or_diagnostic_aid
|
||||
disease_or_syndrome affects mental_process
|
||||
cell_or_molecular_dysfunction process_of disease_or_syndrome
|
||||
pathologic_function result_of biologic_function
|
||||
finding manifestation_of mental_or_behavioral_dysfunction
|
||||
congenital_abnormality location_of bacterium
|
||||
biomedical_or_dental_material causes neoplastic_process
|
||||
chemical_viewed_functionally interacts_with biomedical_or_dental_material
|
||||
experimental_model_of_disease process_of disease_or_syndrome
|
||||
pathologic_function affects experimental_model_of_disease
|
||||
receptor complicates pathologic_function
|
||||
chemical_viewed_structurally affects experimental_model_of_disease
|
||||
fish exhibits individual_behavior
|
||||
immunologic_factor isa entity
|
||||
diagnostic_procedure measures molecular_function
|
||||
carbohydrate isa entity
|
||||
pathologic_function process_of plant
|
||||
amino_acid_sequence property_of gene_or_genome
|
||||
cell_or_molecular_dysfunction affects biologic_function
|
||||
food isa entity
|
||||
neoplastic_process process_of human
|
||||
hazardous_or_poisonous_substance complicates anatomical_abnormality
|
||||
body_location_or_region location_of disease_or_syndrome
|
||||
cell_function process_of animal
|
||||
natural_phenomenon_or_process affects organ_or_tissue_function
|
||||
neuroreactive_substance_or_biogenic_amine isa chemical_viewed_functionally
|
||||
organophosphorus_compound interacts_with element_ion_or_isotope
|
||||
genetic_function result_of disease_or_syndrome
|
||||
neoplastic_process process_of invertebrate
|
||||
laboratory_procedure assesses_effect_of experimental_model_of_disease
|
||||
alga isa organism
|
||||
clinical_attribute measurement_of organ_or_tissue_function
|
||||
human isa entity
|
||||
molecular_sequence isa idea_or_concept
|
||||
hazardous_or_poisonous_substance affects molecular_function
|
||||
amino_acid_peptide_or_protein isa chemical_viewed_structurally
|
||||
age_group issue_in biomedical_occupation_or_discipline
|
||||
laboratory_or_test_result measurement_of element_ion_or_isotope
|
||||
organization location_of laboratory_procedure
|
||||
steroid isa organic_chemical
|
||||
therapeutic_or_preventive_procedure affects disease_or_syndrome
|
||||
natural_phenomenon_or_process result_of organ_or_tissue_function
|
||||
chemical_viewed_functionally causes anatomical_abnormality
|
||||
geographic_area associated_with injury_or_poisoning
|
||||
carbohydrate_sequence result_of mental_process
|
||||
genetic_function result_of environmental_effect_of_humans
|
||||
biomedical_or_dental_material affects cell_or_molecular_dysfunction
|
||||
chemical_viewed_functionally affects pathologic_function
|
||||
molecular_function affects archaeon
|
||||
neoplastic_process manifestation_of organ_or_tissue_function
|
||||
tissue produces neuroreactive_substance_or_biogenic_amine
|
||||
indicator_reagent_or_diagnostic_aid causes cell_or_molecular_dysfunction
|
||||
laboratory_or_test_result evaluation_of mental_process
|
||||
biomedical_or_dental_material causes cell_or_molecular_dysfunction
|
||||
neoplastic_process result_of organ_or_tissue_function
|
||||
genetic_function produces neuroreactive_substance_or_biogenic_amine
|
||||
mental_or_behavioral_dysfunction result_of organ_or_tissue_function
|
||||
mental_process affects invertebrate
|
||||
indicator_reagent_or_diagnostic_aid affects natural_phenomenon_or_process
|
||||
mental_or_behavioral_dysfunction associated_with pathologic_function
|
||||
mental_process affects neoplastic_process
|
||||
cell_function affects biologic_function
|
||||
experimental_model_of_disease manifestation_of genetic_function
|
||||
inorganic_chemical causes congenital_abnormality
|
||||
laboratory_or_test_result measurement_of organic_chemical
|
||||
physical_object isa entity
|
||||
body_location_or_region location_of pathologic_function
|
||||
neuroreactive_substance_or_biogenic_amine complicates cell_function
|
||||
research_activity affects mental_process
|
||||
laboratory_procedure measures pathologic_function
|
||||
amino_acid_peptide_or_protein causes cell_or_molecular_dysfunction
|
||||
acquired_abnormality affects human
|
||||
diagnostic_procedure affects pathologic_function
|
||||
immunologic_factor complicates cell_or_molecular_dysfunction
|
||||
bacterium issue_in biomedical_occupation_or_discipline
|
||||
receptor complicates genetic_function
|
||||
neoplastic_process complicates experimental_model_of_disease
|
||||
organ_or_tissue_function affects cell_function
|
||||
therapeutic_or_preventive_procedure isa health_care_activity
|
||||
experimental_model_of_disease result_of social_behavior
|
||||
therapeutic_or_preventive_procedure method_of biomedical_occupation_or_discipline
|
||||
eicosanoid affects mental_process
|
||||
drug_delivery_device causes congenital_abnormality
|
||||
organism_function affects rickettsia_or_chlamydia
|
||||
mental_or_behavioral_dysfunction produces enzyme
|
||||
manufactured_object causes neoplastic_process
|
||||
chemical_viewed_structurally interacts_with immunologic_factor
|
||||
cell_function process_of fungus
|
||||
physiologic_function process_of invertebrate
|
||||
natural_phenomenon_or_process result_of congenital_abnormality
|
||||
vitamin complicates congenital_abnormality
|
||||
gene_or_genome part_of body_part_organ_or_organ_component
|
||||
disease_or_syndrome result_of phenomenon_or_process
|
||||
disease_or_syndrome affects animal
|
||||
patient_or_disabled_group performs occupational_activity
|
||||
organism_attribute result_of organism_function
|
||||
biologically_active_substance affects pathologic_function
|
||||
embryonic_structure location_of experimental_model_of_disease
|
||||
vitamin affects physiologic_function
|
||||
medical_device causes cell_or_molecular_dysfunction
|
||||
research_activity measures antibiotic
|
||||
drug_delivery_device treats acquired_abnormality
|
||||
organism isa physical_object
|
||||
molecular_function process_of fungus
|
||||
physiologic_function result_of organ_or_tissue_function
|
||||
antibiotic prevents disease_or_syndrome
|
||||
medical_device causes mental_or_behavioral_dysfunction
|
||||
nucleic_acid_nucleoside_or_nucleotide affects mental_process
|
||||
cell_or_molecular_dysfunction process_of physiologic_function
|
||||
chemical affects mental_or_behavioral_dysfunction
|
||||
nucleic_acid_nucleoside_or_nucleotide interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
plant interacts_with bacterium
|
||||
organic_chemical interacts_with chemical_viewed_functionally
|
||||
experimental_model_of_disease associated_with clinical_attribute
|
||||
congenital_abnormality part_of organism
|
||||
gene_or_genome location_of experimental_model_of_disease
|
||||
body_part_organ_or_organ_component location_of fungus
|
||||
amino_acid_peptide_or_protein affects pathologic_function
|
||||
genetic_function produces hormone
|
||||
laboratory_procedure associated_with anatomical_abnormality
|
||||
antibiotic causes pathologic_function
|
||||
acquired_abnormality affects physiologic_function
|
||||
professional_or_occupational_group isa group
|
||||
sign_or_symptom associated_with acquired_abnormality
|
||||
enzyme causes congenital_abnormality
|
||||
genetic_function process_of cell_function
|
||||
vitamin complicates physiologic_function
|
||||
clinical_attribute measurement_of molecular_function
|
||||
embryonic_structure location_of mental_or_behavioral_dysfunction
|
||||
injury_or_poisoning result_of phenomenon_or_process
|
||||
chemical_viewed_structurally affects natural_phenomenon_or_process
|
||||
cell_function affects mental_or_behavioral_dysfunction
|
||||
mental_process affects social_behavior
|
||||
biologic_function process_of virus
|
||||
diagnostic_procedure analyzes indicator_reagent_or_diagnostic_aid
|
||||
experimental_model_of_disease affects physiologic_function
|
||||
virus location_of receptor
|
||||
qualitative_concept evaluation_of health_care_activity
|
||||
cell_function affects alga
|
||||
mental_or_behavioral_dysfunction process_of biologic_function
|
||||
mental_process process_of organ_or_tissue_function
|
||||
organ_or_tissue_function result_of injury_or_poisoning
|
||||
neoplastic_process precedes cell_or_molecular_dysfunction
|
||||
disease_or_syndrome degree_of mental_or_behavioral_dysfunction
|
||||
patient_or_disabled_group produces medical_device
|
||||
antibiotic interacts_with chemical
|
||||
disease_or_syndrome manifestation_of neoplastic_process
|
||||
cell_function process_of organism_function
|
||||
organism_attribute manifestation_of cell_function
|
||||
alga issue_in biomedical_occupation_or_discipline
|
||||
professional_society issue_in biomedical_occupation_or_discipline
|
||||
phenomenon_or_process result_of organism_function
|
||||
chemical affects organism_function
|
||||
laboratory_or_test_result manifestation_of organism_function
|
||||
congenital_abnormality affects organism_function
|
||||
daily_or_recreational_activity associated_with injury_or_poisoning
|
||||
laboratory_or_test_result measurement_of enzyme
|
||||
congenital_abnormality part_of bird
|
||||
neoplastic_process manifestation_of mental_process
|
||||
laboratory_procedure analyzes chemical_viewed_structurally
|
||||
disease_or_syndrome result_of biologic_function
|
||||
hormone disrupts cell
|
||||
cell_or_molecular_dysfunction manifestation_of molecular_function
|
||||
age_group produces regulation_or_law
|
||||
mental_process affects bird
|
||||
medical_device treats mental_or_behavioral_dysfunction
|
||||
phenomenon_or_process result_of mental_process
|
||||
embryonic_structure part_of virus
|
||||
molecular_function affects reptile
|
||||
therapeutic_or_preventive_procedure prevents experimental_model_of_disease
|
||||
lipid isa substance
|
||||
laboratory_procedure assesses_effect_of physiologic_function
|
||||
fish interacts_with organism
|
||||
plant isa physical_object
|
||||
gene_or_genome isa entity
|
||||
clinical_attribute property_of invertebrate
|
||||
diagnostic_procedure analyzes element_ion_or_isotope
|
||||
antibiotic affects natural_phenomenon_or_process
|
||||
gene_or_genome produces vitamin
|
||||
neoplastic_process affects natural_phenomenon_or_process
|
||||
neoplastic_process result_of health_care_activity
|
||||
diagnostic_procedure measures receptor
|
||||
bacterium interacts_with archaeon
|
||||
physiologic_function affects organism_attribute
|
||||
hormone interacts_with receptor
|
||||
professional_society carries_out laboratory_procedure
|
||||
cell location_of organ_or_tissue_function
|
||||
amino_acid_peptide_or_protein ingredient_of clinical_drug
|
||||
human_caused_phenomenon_or_process result_of natural_phenomenon_or_process
|
||||
research_activity issue_in occupation_or_discipline
|
||||
chemical_viewed_functionally causes acquired_abnormality
|
||||
reptile isa vertebrate
|
||||
biologic_function affects invertebrate
|
||||
neoplastic_process affects organism
|
||||
vitamin affects natural_phenomenon_or_process
|
||||
antibiotic diagnoses disease_or_syndrome
|
||||
acquired_abnormality manifestation_of physiologic_function
|
||||
pharmacologic_substance isa chemical
|
||||
age_group exhibits social_behavior
|
||||
organism_function process_of animal
|
||||
professional_or_occupational_group performs machine_activity
|
||||
experimental_model_of_disease isa event
|
||||
neoplastic_process process_of disease_or_syndrome
|
||||
acquired_abnormality location_of disease_or_syndrome
|
||||
event issue_in biomedical_occupation_or_discipline
|
||||
mental_or_behavioral_dysfunction occurs_in professional_or_occupational_group
|
||||
indicator_reagent_or_diagnostic_aid affects experimental_model_of_disease
|
||||
mental_or_behavioral_dysfunction isa biologic_function
|
||||
health_care_activity method_of occupation_or_discipline
|
||||
element_ion_or_isotope affects experimental_model_of_disease
|
||||
plant interacts_with fungus
|
||||
patient_or_disabled_group issue_in occupation_or_discipline
|
||||
self_help_or_relief_organization carries_out occupational_activity
|
||||
research_activity measures molecular_function
|
||||
acquired_abnormality part_of amphibian
|
||||
receptor affects mental_process
|
||||
nucleic_acid_nucleoside_or_nucleotide causes injury_or_poisoning
|
||||
cell_or_molecular_dysfunction affects organ_or_tissue_function
|
||||
organism_attribute result_of experimental_model_of_disease
|
||||
pathologic_function affects bacterium
|
||||
professional_society location_of health_care_activity
|
||||
hazardous_or_poisonous_substance disrupts embryonic_structure
|
||||
animal exhibits social_behavior
|
||||
biologic_function result_of congenital_abnormality
|
||||
pathologic_function affects mental_process
|
||||
diagnostic_procedure measures amino_acid_peptide_or_protein
|
||||
molecular_function co-occurs_with physiologic_function
|
||||
family_group uses medical_device
|
||||
group performs machine_activity
|
||||
laboratory_procedure associated_with pathologic_function
|
||||
neoplastic_process co-occurs_with congenital_abnormality
|
||||
laboratory_procedure measures indicator_reagent_or_diagnostic_aid
|
||||
anatomical_abnormality result_of pathologic_function
|
||||
body_location_or_region location_of cell_function
|
||||
research_activity measures steroid
|
||||
invertebrate causes neoplastic_process
|
||||
laboratory_procedure analyzes hormone
|
||||
disease_or_syndrome affects biologic_function
|
||||
pathologic_function affects genetic_function
|
||||
tissue issue_in occupation_or_discipline
|
||||
biologic_function affects plant
|
||||
anatomical_abnormality affects reptile
|
||||
body_location_or_region location_of mental_or_behavioral_dysfunction
|
||||
medical_device treats pathologic_function
|
||||
organism_attribute result_of cell_function
|
||||
gene_or_genome location_of virus
|
||||
gene_or_genome part_of tissue
|
||||
tissue produces hormone
|
||||
laboratory_or_test_result indicates neoplastic_process
|
||||
mental_or_behavioral_dysfunction complicates injury_or_poisoning
|
||||
biologically_active_substance causes experimental_model_of_disease
|
||||
therapeutic_or_preventive_procedure issue_in biomedical_occupation_or_discipline
|
||||
quantitative_concept measurement_of body_location_or_region
|
||||
professional_or_occupational_group isa entity
|
||||
gene_or_genome affects organ_or_tissue_function
|
||||
eicosanoid affects disease_or_syndrome
|
||||
immunologic_factor complicates organism_function
|
||||
gene_or_genome part_of reptile
|
||||
laboratory_or_test_result manifestation_of molecular_function
|
||||
mental_or_behavioral_dysfunction occurs_in family_group
|
||||
therapeutic_or_preventive_procedure treats mental_or_behavioral_dysfunction
|
||||
population_group isa group
|
||||
body_location_or_region location_of tissue
|
||||
quantitative_concept measurement_of molecular_sequence
|
||||
laboratory_procedure isa activity
|
||||
diagnostic_procedure assesses_effect_of organophosphorus_compound
|
||||
gene_or_genome issue_in occupation_or_discipline
|
||||
organ_or_tissue_function process_of reptile
|
||||
geographic_area isa conceptual_entity
|
||||
neuroreactive_substance_or_biogenic_amine affects mental_or_behavioral_dysfunction
|
||||
biologically_active_substance isa chemical
|
||||
enzyme disrupts embryonic_structure
|
||||
virus location_of vitamin
|
||||
professional_or_occupational_group uses regulation_or_law
|
||||
experimental_model_of_disease result_of therapeutic_or_preventive_procedure
|
||||
indicator_reagent_or_diagnostic_aid causes neoplastic_process
|
||||
sign_or_symptom evaluation_of biologic_function
|
||||
physiologic_function process_of amphibian
|
||||
classification issue_in biomedical_occupation_or_discipline
|
||||
organism_function produces biologically_active_substance
|
||||
laboratory_or_test_result measurement_of chemical
|
||||
immunologic_factor disrupts body_part_organ_or_organ_component
|
||||
health_care_activity issue_in biomedical_occupation_or_discipline
|
||||
carbohydrate interacts_with antibiotic
|
||||
neoplastic_process result_of diagnostic_procedure
|
||||
mental_or_behavioral_dysfunction result_of organism_function
|
||||
cell_component location_of organ_or_tissue_function
|
||||
organophosphorus_compound issue_in occupation_or_discipline
|
||||
cell_component location_of experimental_model_of_disease
|
||||
lipid causes acquired_abnormality
|
||||
experimental_model_of_disease result_of mental_process
|
||||
anatomical_abnormality result_of cell_or_molecular_dysfunction
|
||||
cell_function isa physiologic_function
|
||||
acquired_abnormality manifestation_of cell_function
|
||||
laboratory_or_test_result associated_with disease_or_syndrome
|
||||
mental_process produces hormone
|
||||
mammal exhibits behavior
|
||||
daily_or_recreational_activity associated_with neoplastic_process
|
||||
clinical_drug causes injury_or_poisoning
|
||||
research_activity associated_with pathologic_function
|
||||
cell_or_molecular_dysfunction process_of human
|
||||
body_part_organ_or_organ_component part_of invertebrate
|
||||
drug_delivery_device treats sign_or_symptom
|
||||
neuroreactive_substance_or_biogenic_amine affects disease_or_syndrome
|
||||
vertebrate isa physical_object
|
||||
experimental_model_of_disease result_of diagnostic_procedure
|
||||
drug_delivery_device isa entity
|
||||
therapeutic_or_preventive_procedure uses clinical_drug
|
||||
enzyme affects cell_or_molecular_dysfunction
|
||||
diagnostic_procedure analyzes neuroreactive_substance_or_biogenic_amine
|
||||
amphibian exhibits individual_behavior
|
||||
mental_or_behavioral_dysfunction process_of physiologic_function
|
||||
laboratory_procedure diagnoses cell_or_molecular_dysfunction
|
||||
therapeutic_or_preventive_procedure complicates mental_process
|
||||
steroid interacts_with inorganic_chemical
|
||||
physiologic_function affects plant
|
||||
biomedical_occupation_or_discipline isa conceptual_entity
|
||||
laboratory_procedure analyzes carbohydrate
|
||||
eicosanoid interacts_with receptor
|
||||
age_group performs molecular_biology_research_technique
|
||||
element_ion_or_isotope interacts_with enzyme
|
||||
hazardous_or_poisonous_substance disrupts cell_component
|
||||
congenital_abnormality result_of physiologic_function
|
||||
organophosphorus_compound interacts_with neuroreactive_substance_or_biogenic_amine
|
||||
anatomical_abnormality part_of bacterium
|
||||
clinical_drug causes anatomical_abnormality
|
||||
body_space_or_junction issue_in biomedical_occupation_or_discipline
|
||||
therapeutic_or_preventive_procedure affects mental_process
|
||||
health_care_activity associated_with injury_or_poisoning
|
||||
molecular_function precedes organ_or_tissue_function
|
||||
health_care_related_organization carries_out research_activity
|
||||
cell_function process_of molecular_function
|
||||
neoplastic_process affects experimental_model_of_disease
|
||||
diagnostic_procedure affects cell_or_molecular_dysfunction
|
||||
diagnostic_procedure issue_in occupation_or_discipline
|
||||
governmental_or_regulatory_activity method_of biomedical_occupation_or_discipline
|
||||
laboratory_or_test_result manifestation_of cell_function
|
||||
professional_or_occupational_group produces regulation_or_law
|
||||
laboratory_or_test_result measurement_of pharmacologic_substance
|
||||
pharmacologic_substance affects experimental_model_of_disease
|
||||
receptor affects cell_function
|
||||
neuroreactive_substance_or_biogenic_amine causes anatomical_abnormality
|
||||
body_part_organ_or_organ_component produces vitamin
|
||||
hormone affects biologic_function
|
||||
fully_formed_anatomical_structure location_of disease_or_syndrome
|
||||
receptor affects physiologic_function
|
||||
research_activity measures organism_attribute
|
||||
finding manifestation_of organ_or_tissue_function
|
||||
mental_or_behavioral_dysfunction manifestation_of physiologic_function
|
||||
health_care_activity affects mental_or_behavioral_dysfunction
|
||||
antibiotic interacts_with immunologic_factor
|
||||
disease_or_syndrome produces body_substance
|
||||
diagnostic_procedure measures biomedical_or_dental_material
|
||||
chemical affects natural_phenomenon_or_process
|
||||
research_activity measures biomedical_or_dental_material
|
||||
body_part_organ_or_organ_component conceptual_part_of body_system
|
||||
disease_or_syndrome affects bacterium
|
||||
chemical causes anatomical_abnormality
|
||||
organism_function result_of mental_process
|
||||
cell_or_molecular_dysfunction occurs_in age_group
|
||||
pathologic_function affects amphibian
|
||||
molecular_function isa phenomenon_or_process
|
||||
laboratory_procedure analyzes vitamin
|
||||
governmental_or_regulatory_activity associated_with pathologic_function
|
||||
mental_process result_of acquired_abnormality
|
||||
tissue produces organophosphorus_compound
|
||||
gene_or_genome part_of cell_component
|
||||
mental_or_behavioral_dysfunction affects animal
|
||||
immunologic_factor causes acquired_abnormality
|
||||
antibiotic treats acquired_abnormality
|
||||
eicosanoid isa lipid
|
||||
neuroreactive_substance_or_biogenic_amine causes pathologic_function
|
||||
antibiotic treats congenital_abnormality
|
||||
acquired_abnormality part_of plant
|
||||
mental_or_behavioral_dysfunction process_of mental_process
|
||||
professional_or_occupational_group exhibits individual_behavior
|
||||
cell_component location_of biologic_function
|
||||
hazardous_or_poisonous_substance isa chemical_viewed_functionally
|
||||
cell_function result_of molecular_function
|
||||
element_ion_or_isotope ingredient_of clinical_drug
|
||||
acquired_abnormality affects amphibian
|
||||
group uses classification
|
||||
organic_chemical interacts_with eicosanoid
|
||||
receptor isa biologically_active_substance
|
||||
biologically_active_substance affects molecular_function
|
||||
pathologic_function precedes mental_or_behavioral_dysfunction
|
||||
laboratory_procedure assesses_effect_of biologically_active_substance
|
||||
cell_function produces hormone
|
||||
biologically_active_substance disrupts embryonic_structure
|
||||
biologic_function produces receptor
|
||||
alga location_of hormone
|
||||
experimental_model_of_disease produces receptor
|
||||
organ_or_tissue_function occurs_in mental_process
|
||||
nucleic_acid_nucleoside_or_nucleotide affects molecular_function
|
||||
acquired_abnormality part_of rickettsia_or_chlamydia
|
||||
medical_device treats experimental_model_of_disease
|
||||
neoplastic_process process_of experimental_model_of_disease
|
||||
geographic_area associated_with cell_or_molecular_dysfunction
|
||||
organophosphorus_compound interacts_with steroid
|
||||
cell_function isa natural_phenomenon_or_process
|
||||
disease_or_syndrome result_of social_behavior
|
||||
mental_or_behavioral_dysfunction occurs_in patient_or_disabled_group
|
||||
injury_or_poisoning occurs_in professional_or_occupational_group
|
||||
hazardous_or_poisonous_substance complicates congenital_abnormality
|
||||
invertebrate causes pathologic_function
|
||||
acquired_abnormality occurs_in professional_or_occupational_group
|
||||
lipid affects mental_or_behavioral_dysfunction
|
||||
clinical_attribute associated_with organism_attribute
|
||||
lipid affects mental_process
|
||||
invertebrate interacts_with reptile
|
||||
gene_or_genome part_of vertebrate
|
||||
organ_or_tissue_function process_of mammal
|
||||
body_substance conceptual_part_of body_system
|
||||
body_part_organ_or_organ_component produces neuroreactive_substance_or_biogenic_amine
|
||||
carbohydrate interacts_with inorganic_chemical
|
||||
anatomical_abnormality part_of mammal
|
||||
natural_phenomenon_or_process affects molecular_function
|
||||
substance causes cell_or_molecular_dysfunction
|
||||
embryonic_structure surrounds cell
|
||||
injury_or_poisoning isa phenomenon_or_process
|
||||
diagnostic_procedure diagnoses anatomical_abnormality
|
||||
body_space_or_junction location_of injury_or_poisoning
|
||||
cell_function result_of experimental_model_of_disease
|
||||
neuroreactive_substance_or_biogenic_amine complicates genetic_function
|
||||
experimental_model_of_disease result_of environmental_effect_of_humans
|
||||
health_care_activity affects cell_or_molecular_dysfunction
|
||||
professional_society carries_out diagnostic_procedure
|
||||
health_care_activity affects mental_process
|
||||
group produces research_device
|
||||
cell_component location_of congenital_abnormality
|
||||
vertebrate isa animal
|
||||
molecular_biology_research_technique measures biomedical_or_dental_material
|
||||
professional_society produces classification
|
||||
amino_acid_sequence isa idea_or_concept
|
||||
genetic_function co-occurs_with physiologic_function
|
||||
mental_or_behavioral_dysfunction manifestation_of genetic_function
|
||||
biologic_function process_of mammal
|
||||
individual_behavior affects social_behavior
|
||||
pathologic_function co-occurs_with injury_or_poisoning
|
||||
invertebrate causes experimental_model_of_disease
|
||||
fish interacts_with archaeon
|
||||
research_device causes disease_or_syndrome
|
||||
quantitative_concept issue_in biomedical_occupation_or_discipline
|
||||
professional_society location_of therapeutic_or_preventive_procedure
|
||||
drug_delivery_device prevents disease_or_syndrome
|
||||
fully_formed_anatomical_structure part_of invertebrate
|
||||
mammal isa entity
|
||||
body_part_organ_or_organ_component produces receptor
|
||||
molecular_function affects mammal
|
||||
laboratory_procedure analyzes biomedical_or_dental_material
|
||||
human_caused_phenomenon_or_process isa phenomenon_or_process
|
||||
experimental_model_of_disease process_of vertebrate
|
||||
professional_society carries_out research_activity
|
||||
experimental_model_of_disease precedes cell_or_molecular_dysfunction
|
||||
experimental_model_of_disease affects amphibian
|
||||
laboratory_procedure assesses_effect_of hazardous_or_poisonous_substance
|
||||
anatomical_abnormality issue_in biomedical_occupation_or_discipline
|
||||
hormone affects mental_process
|
||||
laboratory_procedure analyzes pharmacologic_substance
|
||||
body_location_or_region location_of genetic_function
|
||||
disease_or_syndrome result_of injury_or_poisoning
|
||||
laboratory_procedure assesses_effect_of neoplastic_process
|
||||
congenital_abnormality affects animal
|
||||
biomedical_or_dental_material interacts_with immunologic_factor
|
||||
organism_function isa natural_phenomenon_or_process
|
||||
classification isa intellectual_product
|
||||
natural_phenomenon_or_process result_of anatomical_abnormality
|
||||
chemical_viewed_functionally affects neoplastic_process
|
||||
amino_acid_sequence result_of mental_process
|
||||
clinical_attribute property_of reptile
|
||||
mammal exhibits individual_behavior
|
||||
natural_phenomenon_or_process affects disease_or_syndrome
|
||||
organ_or_tissue_function process_of neoplastic_process
|
||||
biologically_active_substance complicates mental_process
|
||||
laboratory_procedure assesses_effect_of biomedical_or_dental_material
|
||||
biomedical_or_dental_material interacts_with chemical
|
||||
neoplastic_process associated_with cell_or_molecular_dysfunction
|
||||
qualitative_concept isa idea_or_concept
|
||||
sign_or_symptom evaluation_of experimental_model_of_disease
|
||||
neuroreactive_substance_or_biogenic_amine interacts_with receptor
|
||||
cell location_of pathologic_function
|
||||
diagnostic_procedure assesses_effect_of enzyme
|
||||
acquired_abnormality part_of alga
|
||||
organophosphorus_compound interacts_with hazardous_or_poisonous_substance
|
||||
diagnostic_procedure assesses_effect_of lipid
|
||||
fungus interacts_with invertebrate
|
||||
laboratory_or_test_result measurement_of physiologic_function
|
||||
acquired_abnormality affects mental_process
|
||||
disease_or_syndrome affects reptile
|
||||
amino_acid_sequence isa entity
|
||||
mental_process result_of biologic_function
|
||||
organic_chemical affects biologic_function
|
||||
steroid interacts_with hormone
|
||||
pathologic_function result_of acquired_abnormality
|
||||
research_activity measures chemical_viewed_structurally
|
||||
therapeutic_or_preventive_procedure associated_with mental_or_behavioral_dysfunction
|
||||
physiologic_function result_of mental_process
|
||||
clinical_attribute result_of human_caused_phenomenon_or_process
|
||||
laboratory_procedure measures antibiotic
|
||||
cell part_of invertebrate
|
||||
vitamin complicates cell_or_molecular_dysfunction
|
||||
clinical_attribute manifestation_of molecular_function
|
||||
organism_function result_of acquired_abnormality
|
||||
professional_or_occupational_group interacts_with age_group
|
||||
natural_phenomenon_or_process affects neoplastic_process
|
||||
organization carries_out research_activity
|
||||
embryonic_structure part_of bacterium
|
||||
fully_formed_anatomical_structure produces enzyme
|
||||
organic_chemical interacts_with indicator_reagent_or_diagnostic_aid
|
||||
natural_phenomenon_or_process result_of human_caused_phenomenon_or_process
|
||||
neoplastic_process affects pathologic_function
|
||||
fully_formed_anatomical_structure issue_in biomedical_occupation_or_discipline
|
||||
environmental_effect_of_humans result_of experimental_model_of_disease
|
||||
experimental_model_of_disease manifestation_of physiologic_function
|
||||
body_part_organ_or_organ_component location_of mental_process
|
||||
receptor causes injury_or_poisoning
|
||||
sign_or_symptom diagnoses disease_or_syndrome
|
||||
antibiotic disrupts mental_process
|
||||
mental_process precedes organism_function
|
||||
chemical_viewed_structurally affects cell_or_molecular_dysfunction
|
||||
vitamin disrupts molecular_function
|
||||
pharmacologic_substance causes injury_or_poisoning
|
||||
professional_or_occupational_group performs governmental_or_regulatory_activity
|
||||
educational_activity isa activity
|
||||
congenital_abnormality location_of disease_or_syndrome
|
||||
neoplastic_process co-occurs_with pathologic_function
|
||||
chemical_viewed_functionally causes mental_or_behavioral_dysfunction
|
||||
biologic_function process_of human
|
||||
hormone complicates mental_or_behavioral_dysfunction
|
||||
embryonic_structure location_of rickettsia_or_chlamydia
|
||||
congenital_abnormality result_of mental_or_behavioral_dysfunction
|
||||
organ_or_tissue_function produces enzyme
|
||||
molecular_biology_research_technique measures experimental_model_of_disease
|
||||
disease_or_syndrome process_of organism_function
|
||||
finding manifestation_of disease_or_syndrome
|
||||
pathologic_function process_of mammal
|
||||
organ_or_tissue_function process_of human
|
||||
indicator_reagent_or_diagnostic_aid affects physiologic_function
|
||||
health_care_related_organization carries_out molecular_biology_research_technique
|
||||
hazardous_or_poisonous_substance disrupts organ_or_tissue_function
|
||||
mental_process process_of invertebrate
|
||||
tissue location_of experimental_model_of_disease
|
||||
antibiotic isa pharmacologic_substance
|
||||
therapeutic_or_preventive_procedure prevents mental_or_behavioral_dysfunction
|
||||
steroid affects disease_or_syndrome
|
||||
pharmacologic_substance prevents disease_or_syndrome
|
||||
behavior result_of mental_process
|
||||
social_behavior associated_with geographic_area
|
||||
tissue part_of body_part_organ_or_organ_component
|
||||
molecular_function affects rickettsia_or_chlamydia
|
||||
population_group performs governmental_or_regulatory_activity
|
||||
biologically_active_substance disrupts organism_function
|
||||
acquired_abnormality isa anatomical_abnormality
|
||||
molecular_function affects alga
|
||||
congenital_abnormality result_of human_caused_phenomenon_or_process
|
||||
congenital_abnormality result_of environmental_effect_of_humans
|
||||
neoplastic_process process_of mental_or_behavioral_dysfunction
|
||||
functional_concept isa entity
|
||||
spatial_concept isa conceptual_entity
|
||||
mental_or_behavioral_dysfunction process_of cell_or_molecular_dysfunction
|
||||
biomedical_or_dental_material causes anatomical_abnormality
|
||||
hazardous_or_poisonous_substance causes congenital_abnormality
|
||||
antibiotic disrupts cell
|
||||
disease_or_syndrome affects alga
|
||||
finding manifestation_of experimental_model_of_disease
|
||||
element_ion_or_isotope affects natural_phenomenon_or_process
|
||||
amphibian interacts_with archaeon
|
||||
body_space_or_junction location_of mental_process
|
||||
substance causes neoplastic_process
|
||||
biologic_function affects genetic_function
|
||||
indicator_reagent_or_diagnostic_aid causes injury_or_poisoning
|
||||
research_activity measures pharmacologic_substance
|
||||
injury_or_poisoning result_of environmental_effect_of_humans
|
||||
organization issue_in occupation_or_discipline
|
||||
organ_or_tissue_function process_of mental_process
|
||||
research_activity associated_with mental_or_behavioral_dysfunction
|
||||
human issue_in biomedical_occupation_or_discipline
|
||||
molecular_function affects disease_or_syndrome
|
||||
eicosanoid affects pathologic_function
|
||||
Reference in New Issue
Block a user