МЕТОД ДЛЯ НАКОПЛЕНИЯ БИОЛОГИЧЕСКОЙ ТЕРМИНОЛОГИИ – ПРИМЕНЕНИЕ АЛГОРИТМОВ ОРФОГРАФИЧЕСКОЙ КОРРЕКЦИИ
М. Б. Герасимов
СТАР СПб
Ключевые слова: накопление терминологии, система извлечения знаний.
В данной статье описывается новый метод, позволяющий идентифицировать в тексте, выделить и найти соответствующее место в тезаурусе термины, являющиеся структурными и орфографическими вариантами существующих терминов в тезаурусе. Описанный метод был успешно применен в процессе построения тезаурусов по протеинам и фармакологической химии, составляющих основу системы поиска документов и извлечения информации MedWizard, обслуживающей базу данных рефератов MEDLINE.
1. Введение
Системы обработки текстов и поиска информации, поддерживаемые терминологическими ресурсами, зачастую обеспечивают существенно более высокое качество работы (как в области покрытия, так и в точности предоставляемой информации) по сравнению с системами, оперирующими только с абстрактными строками запросов. Ценность правильно сформированных терминологические ресурсов (тезаурусов, онтологий, др.), таким образом, существенно возрастает, и, в определенном смысле, является гарантией успешного процесса поиска. Условие полноты и точности используемых терминологических ресурсов является основной заботой специалистов, работающих с такими системами. Так, если какой-либо термин не присутствует в тезаурусе, система поиска информации не сможет правильно обработать соответствующий запрос. Таким образом, качество тезауруса становится очевидным узким местом при широком применении таких систем на больших коллекциях документов. Пополнение тезауруса новыми терминами и синонимами существующих - одна из основных задач. В данной работе предлагается метод для идентификации в тексте, выделения и определения соответствующего места в тезаурусе терминов, являющихся структурными и орфографическими вариантами существующих терминов в тезаурусе.
Среди множества систем поиска информации существуют такие, которые применяют методы нечеткого сравнения запросов поиска и заголовков (инверсных) индексов. Этот подход, однако, неэффективен как с точки зрения производительности системы поиска, так и с точки зрения количества и качества найденных потенциальных терминов. Критическим недостатком такого подхода является то, что семантика извлеченных таким образом терминов может существенно отличаться от семантики терминов исходного запроса. Такая ситуация типична, например, в области биохимии, где «небольшие» изменения в термине (methyl и ethyl) дают совершенно разные вещества.
По нашему мнению, более продуктивный способ – это накапливать и обрабатывать терминологию заранее, т.е. производить полную предобработку текста перед построением всевозможных индексов. Существующие вычислительные возможности позволяют быстро фильтровать и обрабатывать огромные объемы текста. Так, например, описанный метод был успешно применен в процессе построения тезаурусов по протеинам и фармакологической химии, составляющих основу системы поиска документов и извлечения информации MedWizard, обслуживающей базу данных рефератов MEDLINE.
2. Анализ
Анализ текстов по биохимии и молекулярной биологии показывает, что какой-либо произвольный термин, имеющий стандартное написание («стандартное» здесь в смысле «описываемое специальным словарем»), в тексте может встречаться в форме различных вариантов написания, демонстрируя несостоятельность его использования и представления. Примеры основных форм непоследовательного использования терминологии приведены ниже:
- Использование регистра (c-jun и c-Jun);
- Использование символов-разделителей (‘,’; ‘-‘; ‘/’; ‘(‘; ‘)’, др.), как и символа «пробел»;
- Использование арабских и римских числовых индексов (FN3 и FN-III);
- Разный порядок слов во многословных терминах (tumor suppressor protein p53 и p53 tumor suppressor protein; TNFalpha и alpha TNF);
- Особенности произношения (tumor suppressor protein и tumour suppressor protein);
- Положение числовых/буквенных индексов:
o Позиция числового индекса во многословном термине (30-kilodalton heat shock protein и hsp30);
o Пропуск числовых/буквенных индексов (2-benzyl-3-formylpropanoic acid и BFP)
Пример множества терминов для существующего концепта (2’-5’)oligoadenylate synthetase, собранные вручную во время модификации тезауруса в течение длительного времени представлен ниже:
2',5'-oligodenylate synthetase;
2', 5'-oligodenylate synthetase;
2', 5-oligodenylate synthetase;
(2'-5')serum oligo(A) synthetase;
(2-5AS);
2-5AS;
serum (2'-5') oligo (A) synthetase ;
2-5 oligo A synthetase;
2-5 AS;
2'5' oligo (A) synthetase;
2'5' oligosynthetase ;
2'-5' oligo-A synthetase;
2'-5' oligo A synthetase;
2',5'-Oligoadenylate Synthetase
2-5 oligo(A) synthetase;
2,5 oligo-A synthetase;
2',5'-oligoadenylate synthetase (OAS);
(2'-5') oligo (A) synthetase;
2'-5'-oligoadenylate (2-5A) synthetases;
2-5A synthetase;
(2'-5') oligoadenylate (oligo (A] synthetase
3. Метод
Технология для идентификации и накопления новых терминов состоит из следующих этапов:
- Пред-обработка корпуса текстов;
- Сравнение предполагаемых фраз-кандидатов;
- Пост-обработка результатов.
4. Пред-обработка корпуса текстов
Поскольку один и тот же термин может иметь в тексте реализации, состоящие из различного количества слов (из-за вариативности использования разделителей), для того, чтобы найти гипотетический термин, термины из тезауруса должны сравниваться с последовательностями слов/токенов практически произвольной длины. Из-за ограничений по производительности, количество слов/токенов в анализируемых последовательностях было ограничено 6-ю. Затем, имея на входе предложение, окно заданного размера двигается вдоль последовательности слов/токенов, извлекая все фразы этого размера. Соответственно, вначале этот размер равен 6,[1] потом уменьшается до 1 и процесс повторяется. Все извлеченные из предложений (под)фразы затем сортируются и подсчитываются[2]. В результате имеется полный список всех (под)фраз вместе с количеством раз их встречаемости во всем тексте[3].
Однако, когда на вход препроцессора подавались полные предложения, количество извлеченных фраз и подфраз было огромным (сотни миллионов), к тому же, большинство из них были непригодны для дальнейшей обработки – очень многие фразы пересекали синтаксические и пунктуационные границы, отделяющие фразы друг от друга, а также большинство фраз содержало слова, иррелевантные к биохимической терминологии.
Тогда все входные предложения сначала бились на т.н. «первичные фразы», к которым и применялся оконный метод извлечения подфраз. Для получения первичных фраз использовались два критерия – пунктуационный и лексический. Пунктуационный критерий позволяет разбить фразу на две, если встречаются очевидные разделители: “,_”, “:_”, “ – “[4]. Лексический критерий определяет множество т.н. «стоп-слов», которые априори не могут встречаться в искомых терминах, и, таким образом, служат очевидными разделителями первичных фраз. Текущих список стоп-слов состоит из 2220 единиц.
После такого деления результирующий список уникальных фраз составил 36+ миллинов из корпуса в 3,200,000+ документов.
5. Сравнение предполагаемых фраз-кандидатов
На этой фазе как существующие термины из тезауруса, так и фразы-кандидаты рассматриваются как обычные последовательности символов. Таким образом мы заведомо не используем background знание о (биохимических в нашем случае) словах-«якорях», которые позволяют в определенной степени догадываться о границах и структуре термина [1]. Базовый алгоритм, используемый для нечеткого сравнения строк, - алгоритм “N-gramm similarity matching”, часто используемый в системах коррекции орфографии в тексте[5] [2].
N-грамма – это строка из N смежных символов в слове длиной не менее N символов. Триграммы, используемые в данном алгоритме – это N-грамма длиной 3. Два дополнительных пробела добавляются к каждой стороне анализируемой фразы. Таким образом, строка из n символов будет представлена n+2 триграммами. Например, фраза “tnf alpha” породит следующие 11 триграмм:
__t |
_tn |
tnf |
Nf_ |
f_a |
_al |
alp |
lph |
pha |
ha_ |
a__ |
где символ “_” обозначает начальный, конечный или внутренний пробел. Каждая анализируемая подфраза разбивается на свои составные триграммы, каждые термин из тезауруса разбивается таким же образом. Далее подсчитывается степень соответствия между триграммами, нормализованная по длине сток, с помощью коэффициента Дайса (хороший обзор можно найти в [3]), который определяется как:
Значения коэффициента находятся в диапазоне от 0, когда общих триграмм нет, до 1, при полном совпадении сравниваемых строк. Затем, близкие термины из тезауруса, значение схожести для которых больше определенного порога – возможные кандидаты на соотнесение с синонимом – сортируются в порядке убывания.
В результате, для каждого гипотетического термина мы имеем несколько терминов-образцов – карта отображения для гипотезы. После обработки всех подфраз, система произвела 79,091 химических и 103,772 протеиновых гипотез терминов.
6. Пост-обработка результатов
После того, как множество карт-отображений для гипотез построено, начинается фаза ручного просмотра и отбора результатов. Эксперт в области биохимии с помощью программы просматривает гипотезу за гипотезой и выбирает на каждом шаге необходимое действие:
- «пропустить гипотезу» - гипотеза ошибочна, например:
MALTOSE-BINDING PROTEIN [553]->
MANNOSE-BINDING PROTEIN : 0.84
- «ввести номер термина-образца» из множества представленных в отображении для гипотезы – тогда новый термин будет записан в тот же концепт, что и выбранный термин-образец. В следующем примере будет выбран второй термин-образец:
MACROPHAGE INFLAMMATORY PROTEIN-1BETA [51]->
MACROPHAGE INFLAMMATORY PROTEIN-2-BETA : 0.9
MACROPHAGE INFLAMMATORY PROTEIN 1-BETA : 0.875
MACROPHAGE INFLAMMATORY PROTEIN 3 BETA : 0.875
MACROPHAGE INFLAMMATORY PROTEIN-1ALPHA : 0.85
MACROPHAGE INFLAMMATORY PROTEIN-1 : 0.8461
MACROPHAGE INFLAMMATORY PROTEIN-2 : 0.8205
MACROPHAGE INFLAMMATORY PROTEIN-3 : 0.8205
MACROPHAGE INFLAMMATORY PROTEIN-4 : 0.8205
MACROPHAGE INFLAMMATORY PROTEIN-5 : 0.8205
- «создать новый концепт» - будет создан новый концепт, образованный из нового термина:
METALLOPROTEINASE 9 [81]->
METALLOPROTEINASE : 0.857143
METALLOPROTEINASE 1 : 0.857143
METALLOPROTEINASE 3 : 0.857143
METALLOPROTEINASE 8 : 0.857143
- «неопределенная гипотеза» - гипотеза будет записана в отдельный файл для последующего анализа, если на данном этапе эксперт сомневается или не хватает информации:
GLUCOSE-1-PHOSPHATE URIDYLYLTRANSFERASE [6]->
GLUCOSE-1-PHOSPHATE CYTIDYLYLTRANSFERASE : 0.88
UTP-GLUCOSE-1-PHOSPHATE URIDYLYLTRANSFERASE: 0.866
GLUCOSE-1-PHOSPHATE THYMIDYLYLTRANSFERASE : 0.860
GLUCOSE-1-PHOSPHATE ADENYLYLTRANSFERASE : 0.853
GLUCOSE-1-PHOSPHATE GUANYLYLTRANSFERASE : 0.853
HEXOSE-1-PHOSPHATE URIDYLYLTRANSFERASE : 0.853
XYLOSE-1-PHOSPHATE URIDYLYLTRANSFERASE : 0.853
GALACTOSE-1-PHOSPHATE URIDYLYLTRANSFERASE : 0.837
GLUCURONATE-1-PHOSPHATE URIDYLYLTRANSFERASE : 0.82
Очевидно, такая пост-обработка – весьма трудоемкий процесс. Один из возможных способов ее сократить – применить к результатам системы другой алгоритм, например, из области анализа stringalignment. Такие алгоритмы вычисляют «расстояние редактирования» (“edit distance”) между двумя строками, т.е. количество символов, которое необходимо вставить/удалить/заменить, чтобы преобразовать одну строку в другую. Специальная версия такого алгоритма, которая назначает различные веса (penalty) различным множествам символов (например, вес 0 для символов разделителей, и большой вес для всех остальных символов) – “weighted edit distance” [4] – была использована для автоматической фильтрации гипотез, отличающихся от терминов-образцов только расположением символов-разделителей. Таким образом удалось сократить объем ручной работы на примерно 60%.
Вторая эвристика анализирует наличие аббревиатур внутри полных терминов (leukocyte function-associated antigen (lfa) 1, interleukin (IL) 8 receptor), используя простые алгоритмы восстановления аббревиатур, схожие с [5], а также списки широко известных сокращений «термин-акроним». Третья эвристика использует знание о взаимозаменяемости отдельных слов, составляющих биологические термины: protein«enzyme«isozyme«isoenzyme«antigen, protease«proteinase, synthase«synthetase, CoA«coenzyme A, type«subtype«class, и др., чтобы уже на этом этапе свести гипотезы к известным терминам.
Другая группа эвристик обрабатывает заведомо ложные гипотезы. Эти эвристики учитывают множественное число слов, составляющих термин-гипотезу, а также аббревиатуры, завершающие термины (например, mitochondrial processing peptidase (mpp)). Эти эвристики дополнительно уменьшили объем ручной работы на 15%.
7. Результаты
После фазы пост-обработки были получены следующие результаты:
- число новых химических терминов: 15599;
- число документов, затронутых новыми химическими терминами: 122,113;
- число новых протеиновых терминов: 23,090;
- число документов, затронутых новыми протеиновыми терминами: 299,816.
Необходимо отметить, что такой огромный объем терминологического материала был накоплен в очень короткое время (2 недели компьютерной обработки и еще 3 недели анализа экспертом). Ради «разнообразия» было также решено включать в тезаурус несколько сотен терминов, содержащих явные орфографические ошибки, например medum-chain acyl-coa dehydrogenase и insuline-like growt factor.
Пополнение терминологической базы позволило не только существенно улучшить характеристики поиска, но также и улучшить показатели метрики близости документов.
8. Заключение
Работа, описанная в данной статье, интегрирована в более широкую технологию обработки терминологии и извлечения знаний. Эта терминология затем используется в специализированной системе поиска и извлечения данных MedWizard. Таким образом, процесс пост-обработки терминов-гипотез человеком требует как можно большей степени автоматизации, чтобы процесс обновления терминологической базы при обновлении базы документов происходил без вмешательства эксперта. В настоящее время реализуется программный робот, который циклически сканирует новые документы на предмет извлечения новой терминологии.
Литература
1. Fukuda K., Tamura A., Tsunoda T., Takagi T., Toward information extraction: identifying protein names from biological papers // Proceedings Pacific Symp Biocomput. 707-18, 1998.
2. Kukich K., Techniques for automatically correcting words in text // ACM Computing Surveys, No.24:377-439, 1992.
- D. Lin, 1998, An Information-Theoretic Definitioin of Similarity, Proceedings of International Conference on Machine Learning, Madison, Wisconsin, July, 1998.
- Gusfield Dan, Algorithms on Strings, Trees, and Sequences, Cambridge University Press, 1997.
- Bowden Paul R., Evett Lindsay and Halstead Peter, Automatic Acronym Acquisition in a Knowledge Extraction Program // Proceedings Computerm’98 Workshop, Coling-ACL’98, 1998.
Methods for Biological terms acquisition: orthographic approach
- B. Gerasimov
Keywords: terminology acquisition, information extraction.
The present article describes a method allowing to identify in text, extract and acquire in a thesaurus the terms being orthographic and structural alternatives of the existing thesaurus terms. The described method was successfully applied during the protein and chemical thesauri construction underlying the IR/IE system processing the MEDLINE abstract base.
Приложение 1. Примеры извлеченных терминов
КОНЦЕПТ: EXTRACELLULAR SIGNAL-REGULATED KINASE 1
extracellular regulated kinase 1
extracellular regulated protein kinase 1
extracellular regulated-kinase-1
extracellular signal regulated kinase (erk)-1
extracellular signal regulated kinase (erk)1
extracellular signal regulated kinase 1
extracellular signal related kinase (erk)-1
extracellular signal related kinase (erk)1
extracellular signal related protein kinase 1
extracellular signal-regulated kinase (erk)-1
extracellular signal-regulated kinase (erk)1
extracellular signal-regulated kinase 1
extracellular signal-regulated kinase erk 1
extracellular signal-regulated kinase erk1
extracellular signal-regulated kinase-1
extracellular signal-regulated kinases erk 1
extracellular signal-regulated kinases erk-1
extracellular signal-regulated kinases erks 1
extracellular signal-regulated kinases-1
extracellular signal-regulated protein kinase (erk)-1
extracellular signal-regulated protein kinase (erk)1
extracellular signal-regulated protein kinase 1
extracellular signal-regulated protein kinase erk 1
extracellular signal-related kinase (erk)-1
extracellular signal-related kinase (erk)1
extracellular signal-related kinase 1
extracellular signal-related protein kinase 1
extracellular signal-related protein kinase-1
extracellular-regulated kinase 1
extracellular-regulated kinase-1
extracellular-regulated protein kinase 1
extracellular-regulated protein kinase-1
extracellular-regulated-kinase-1
extracellular-signal regulated kinase (erk)-1
extracellular-signal regulated kinase (erk)1
extracellular-signal regulated kinase 1
extracellular-signal-regulated kinase 1
extracellular-signal-regulated kinase-1
extracellularly regulated kinase 1
extracellularly-regulated kinase 1
extracellularly-regulated kinase-1
map kinase erk 1
map kinase erk-1
map kinase erk1
map kinase-1
microtubule-associated protein 2 kinase
microtubule-associated protein 2 map-2 kinase
microtubule-associated protein 2 map2 kinase
microtubule-associated protein-2 kinase
protein kinase-1 extracellular-regulated
КОНЦЕПТ: ALPHA-AMINO-3-HYDROXY-5-METHYL-4-ISOXAZOLEPROPIONIC ACID
4-isoxazolepropanoic acid alpha-amino-2,3-dihydro-5-methyl-3-oxo-
4-isoxazolepropanoic acid, alpha-amino-2,3-dihydro-5-methyl-3-oxo-
a-amino-3-hydroxy-5-methyl-isoxazole-4-propionic acid
alpha -amino-3-hydroxy-5-methyl-4-isoxazolepropionic
alpha -amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
alpha amino 3 hydroxy 5 methyl 4 isoxazolepropionic acid
alpha amino-3-hydroxy-5-methyl-4 isoxazole propionic acid
alpha amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid-
alpha"-amino-3-hydroxy-5-methylisoxazole-4-propionic acid
alpha-3h-amino-3-hydroxy-5-methylisoxazole-4-propionic acid
alpha-amine-3-hydroxy-5-methyl-4-isoxazole propionic acid
alpha-amino-2,3-dihydro-5-methyl-3-oxo-4-isoxazolepropanoic acid
alpha-amino-3 hydroxy-5-methyl-4-isoxazole propionic acid
alpha-amino-3- hydroxy-5-methyl-4-isoxazole propionic acid
alpha-amino-3-hydoxy-5-methyl-4-isoxazole propionic acid
alpha-amino-3-hydroxy-3-methyl-4-isoxazolepropionic acid
alpha-amino-3-hydroxy-4-methylisoxazole-4-propionic acid
alpha-amino-3-hydroxy-5 methyl-4-isoxazolepropionic acid
alpha-amino-3-hydroxy-5- methyl-4-isoxazole propionic acid
alpha-amino-3-hydroxy-5- methylisoxazole-4-propionic acid
alpha-amino-3-hydroxy-5-5-methyl-4-isoxazole-propionic acid
alpha-amino-3-hydroxy-5-methyl -4-isoxazole propionic acid
alpha-amino-3-hydroxy-5-methyl -4-isoxazolepropionic acid
alpha-amino-3-hydroxy-5-methyl isoxazole propionic acid
alpha-amino-3-hydroxy-5-methyl isoxazole-4-propionic acid
alpha-amino-3-hydroxy-5-methyl- 4-isoxazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4 isoxazole propionic acid
alpha-amino-3-hydroxy-5-methyl-4- isoxazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-iso xazolepropionic
alpha-amino-3-hydroxy-5-methyl-4-iso xazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoazole-proprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-isooxazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxasole-propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxasolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazle propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazloe proprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazol propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazole propionate
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionate
alpha-amino-3-hydroxy-5-methyl-4-isoxazole-propionate
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionate
alpha-amino-3-hydroxy-5-methyl-4isoxazolepropionate
alpha-amino-3-hydroxy-5-methyl-4-isoxazole propionic
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic
alpha-amino-3-hydroxy-5-methyl-4-isoxazole-propionic
alpha-amino-3-hydroxy-5-methyl-4-isoxazole propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazole proprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazole-4-propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazole-propionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazole-proprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazoleprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropanoic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazoleproprionic acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazolone propionic
alpha-amino-3-hydroxy-5-methyl-4-isoxozolepropionic acid
alpha-amino-3-hydroxy-5-methyl-ioxazole-4-propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazol-propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazole propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazole-4- propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazole-4-propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazole-propionic acid
alpha-amino-3-hydroxy-5-methyl-isoxazoleproprionic acid
alpha-amino-3-hydroxy-5-methylisoxalzole-4-propionic acid
alpha-amino-3-hydroxy-5-methylisoxasole-4-propionic acid
alpha-amino-3-hydroxy-5-methylisoxazolate-4-propionic acid
alpha-amino-3-hydroxy-5-methylisoxazole 4-propionic acid
alpha-amino-3-hydroxy-5-methylisoxazole propionic acid
alpha-amino-3-hydroxy-5-methylisoxazole-4-propionic acid
alpha-amino-3-hydroxy-5-methylisoxazole-4-propionic acid)
alpha-amino-3-hydroxy-5-methylisoxazole-4-proprionic acid
alpha-amino-3-hydroxy-5-methylisoxazole4-proprionic acid
alpha-amino-3-hydroxy-5-methylisoxazolepropionic acid
alpha-amino-3-hydroxy-5-methylisoxazolone-4-propionic acid
alpha-amino-3-hydroxy-s-methyl-4-isoxazole propionic acid
alpha-amino-3-hydroxyl-5-methyl-1-isoxazole-4-propionic acid
alpha-amino-3-hydroxyl-5-methyl-4-isoxazole propionic acid
alpha-amino-3-hydroxyl-5-methyl-4-isoxazolepropionic acid
alpha-amino3-hydroxy-5-methyl-4-isoxazolepropionic acid
alpha-amino3-hydroxy-5-methyl-4-isoxazolepropionic-acid
alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionicacid
alpha-[3h]amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
d,l-alpha-amino-3-hydroxy-5-methyl-4-isoxazole propionic acid
d,l-alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
d,l-alpha-amino-3-hydroxy-5-methyl-isoxazole propionic acid
dl-alpha-amino-2,3-dihydro-5-methyl-3-oxo-4-isoxazolepropanoic acid
dl-alpha-amino-3-hydroxy-5-methyl-4-isoxalonepropionic acid
dl-alpha-amino-3-hydroxy-5-methyl-4-isoxazole propionic acid
dl-alpha-amino-3-hydroxy-5-methyl-4-isoxazole-propionic acid
dl-alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
dl-alpha-amino-3-hydroxy-5-methyl-4-isoxazoleproprionic acid
l-alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
s-alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
[3h]alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
[3h]d,l-alpha-amino-3-hydroxy-5-methyl-4-isoxazolepropionic acid
[1] Если длина предложения меньше 6-ти (например, в заголовках), его длина берется стартовым размером окна.
[2] Это производится обычными командами UNIX “sort” и “uniq –c”
[3] Повторяющиеся фразы в одном документе не учитываются, и, таким образом, этот счетчик отражает количество документов, содержащих данную фразу, а не общее количество всех возможных мест этой фразы.
[4] Символ подчеркивания обозначает пробел для лучшей читаемости.
[5] Несмотря на то, что существует еще несколько распространенных алгоритмов для коррекции орфографии, например, метрика расстояния Левенштейна, которая подсчитывает количество символов, которое необходимо вставить/удалить/заменить, чтобы преобразовать одну строку в другую, они оказываются не очень применимы в данном методе, поскольку для терминов – структурных вариантов, полученных перестановками слов (TNF alpha и alpha-TNF) – генерируемые значения метрики покажут чрезвычайно сильное расхождение.