Comments 4
fingerprint рассчитывают схожесть двух молекул, я не понял, что делает MolecularLucene…
Lucene — поисковый движок. То есть с помощью Lucene можно проиндексировать некоторое количество документов и потом искать документы из индекса по ключевым словам. Прямо как в интернет-поисковиках, яндексе, гугле и.т.п.
MolecularLucene — это плагин для Lucene, который позволяет проиндексировать не текстовые документы, а хим. структуры и потом задавать в качестве поискового запроса не ключевые слова, а другие хим. структуры. В ответ должны возвращаться проиндексированные структуры упорядоченные по схожести с со структурой-образцом из запроса.
Документы в Lucene состоят из полей. Например, заголовок — это одно поле, основной текст документа — другое, автор — третье, дата публикации — четвертое и.т.д. В случае использования MolecularLucene одно (или несколько) из полей может содержать информацию о молекулярной структуре, а другие — «сопроводительную» текстовую информацию: описание, коментарий, и.т.д. Это позволяет организовать смешанный поиск по тексту и по структуре. Результаты будут упорядочены в соответствии с некоторой комбинацией текстовой релевантности и «молекулярной схожести».
Я сделал демку: www.chwise.net. Там можно искать статьи о хим. компаундах в википедии по тексту статьи и похожести на структуру-образец, которую можно задать либо в виде smiles'а, либо в редакторе структур. Короткая видеодемонстрация тут: www.youtube.com/watch?v=V0ddipGhPc0
MolecularLucene — это плагин для Lucene, который позволяет проиндексировать не текстовые документы, а хим. структуры и потом задавать в качестве поискового запроса не ключевые слова, а другие хим. структуры. В ответ должны возвращаться проиндексированные структуры упорядоченные по схожести с со структурой-образцом из запроса.
Документы в Lucene состоят из полей. Например, заголовок — это одно поле, основной текст документа — другое, автор — третье, дата публикации — четвертое и.т.д. В случае использования MolecularLucene одно (или несколько) из полей может содержать информацию о молекулярной структуре, а другие — «сопроводительную» текстовую информацию: описание, коментарий, и.т.д. Это позволяет организовать смешанный поиск по тексту и по структуре. Результаты будут упорядочены в соответствии с некоторой комбинацией текстовой релевантности и «молекулярной схожести».
Я сделал демку: www.chwise.net. Там можно искать статьи о хим. компаундах в википедии по тексту статьи и похожести на структуру-образец, которую можно задать либо в виде smiles'а, либо в редакторе структур. Короткая видеодемонстрация тут: www.youtube.com/watch?v=V0ddipGhPc0
Нет, поиск по SMILES делается не по текстовому совпадению. SMILES-часть запроса разбирается и по нему строится структура, которая затем нарезается на одномерные цепочки атомов-связей. По совпадению этих цепочек производится поиск и ранжирование.
Спасибо за пример заваливающего смайлса. Протестирую, как будет время :)
Спасибо за пример заваливающего смайлса. Протестирую, как будет время :)
Sign up to leave a comment.
Организуем поиск молекулярных структур с помощью Lucene и Chemistry Development Kit