<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">ntv</journal-id><journal-title-group><journal-title xml:lang="ru">Научно-технический вестник информационных технологий, механики и оптики</journal-title><trans-title-group xml:lang="en"><trans-title>Scientific and Technical Journal of Information Technologies, Mechanics and Optics</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">2226-1494</issn><issn pub-type="epub">2500-0373</issn><publisher><publisher-name>Университет ИТМО</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.17586/2226-1494-2025-25-2-339-344</article-id><article-id custom-type="elpub" pub-id-type="custom">ntv-454</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>КОМПЬЮТЕРНЫЕ СИСТЕМЫ И ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>COMPUTER SCIENCE</subject></subj-group></article-categories><title-group><article-title>Векторный поиск методом кластеризации с помощью ансамбля небрежных решающих деревьев</article-title><trans-title-group xml:lang="en"><trans-title>Vector search using method of clustering using ensemble of oblivious trees</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-9325-0356</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Томилов</surname><given-names>Н. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Tomilov</surname><given-names>N. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Томилов Никита Андреевич — аспирант.</p><p>Санкт-Петербург, 197101, sc 57225127284</p></bio><bio xml:lang="en"><p>Nikita A. Tomilov — PhD Student.</p><p>Saint Petersburg, 197101, sc 57225127284</p></bio><email xlink:type="simple">programmer174@icloud.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0009-0009-1470-7633</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Туров</surname><given-names>В. П.</given-names></name><name name-style="western" xml:lang="en"><surname>Turov</surname><given-names>V. P.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Туров Владимир Павлович — аспирант.Санкт-Петербург, 197101, sc 58910796700</p></bio><bio xml:lang="en"><p>Vladimir P. Turov — PhD Student.</p><p>Saint Petersburg, 197101, sc 58910796700</p></bio><email xlink:type="simple">firemoon@icloud.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0009-0004-6367-6398</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Бабаянц</surname><given-names>А. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Babayants</surname><given-names>A. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Бабаянц Александр Амаякович — аспирант.Санкт-Петербург, 197101, sc 58910002300</p></bio><bio xml:lang="en"><p>Alexander A. Babayants — PhD Student.</p><p>Saint Petersburg, 197101, sc 58910002300</p></bio><email xlink:type="simple">babayants.alexander@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-8485-1296</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Платонов</surname><given-names>А. В.</given-names></name><name name-style="western" xml:lang="en"><surname>Platonov</surname><given-names>A. V.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Платонов Алексей Владимирович — кандидат технических наук, доцент, доцент.Санкт-Петербург, 197101, sc 57197736275</p></bio><bio xml:lang="en"><p>Alexey V. Platonov — PhD, Associate Professor, Associate Professor.</p><p>Saint Petersburg, 197101, sc 57197736275</p></bio><email xlink:type="simple">avplatonov@itmo.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Университет ИТМО</institution><country>Россия</country></aff><aff xml:lang="en"><institution>ITMO University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2025</year></pub-date><pub-date pub-type="epub"><day>24</day><month>04</month><year>2025</year></pub-date><volume>25</volume><issue>2</issue><fpage>339</fpage><lpage>344</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Томилов Н.А., Туров В.П., Бабаянц А.А., Платонов А.В., 2025</copyright-statement><copyright-year>2025</copyright-year><copyright-holder xml:lang="ru">Томилов Н.А., Туров В.П., Бабаянц А.А., Платонов А.В.</copyright-holder><copyright-holder xml:lang="en">Tomilov N.A., Turov V.P., Babayants A.A., Platonov A.V.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://ntv.elpub.ru/jour/article/view/454">https://ntv.elpub.ru/jour/article/view/454</self-uri><abstract><sec><title>Введение</title><p>Введение. Информационный поиск с использованием алгоритмов машинного обучения основывается на преобразовании исходных мультимодальных документов в векторные представления, далее строится индекс векторных представлений и производится поиск внутри индекса. Популярным способом построения индекса является кластеризация векторных представлений, например с помощью k-ближайших соседей. В работе предложен метод кластеризации с помощью ансамбля небрежных решающих деревьев, а также алгоритм векторного поиска на основе этого метода. Разработанный метод кластеризации является детерминированным и предоставляет возможность сериализации параметров ансамбля.</p></sec><sec><title>Метод</title><p>Метод. Сущность метода состоит в обучении ансамбля двоичных или троичных небрежных решающих деревьев. Этот ансамбль используется для вычисления хэша для каждого из исходных векторных представлений. Векторные представления, имеющие одинаковый хэш, считаются принадлежащими к одному кластеру. Для поиска выбирается несколько кластеров, центроиды которых наиболее приближены к векторному представлению поискового запроса, после чего производится полный перебор векторных представлений выбранных кластеров. Основные результаты. Представленный метод показывает качество поиска, сравнимое с широко используемыми в индустрии библиотеками векторного поиска Faiss, Annoy и HNSWlib. Для протестированного набора данных с евклидовой метрикой расстояния предложенный метод поиска медленнее, чем существующие решения, но для протестированного набора данных с угловой метрикой расстояния результат сравним или лучше.</p></sec><sec><title>Обсуждение</title><p>Обсуждение. Разработанный метод может быть применен для улучшения качества поиска при создании мультимодальных поисковых систем. Возможность сериализации позволяет кластеризовать данные на одном вычислительном узле и передавать параметры ансамбля на другой вычислительный узел, что дает возможность использовать предложенный алгоритм в распределенных системах.</p></sec></abstract><trans-abstract xml:lang="en"><p>Information retrieval using machine learning algorithms is based on transforming the original multimodal documents into vector representations. These vectors are then indexed, and the search is performed within this index. A popular method for indexing is vector clustering such as with k-nearest neighbors. We propose a clustering method based on an ensemble of Oblivious Decision Trees and introduce a vector search algorithm built on this method. The proposed clustering method is deterministic and supports parameter serialization for the ensemble. The essence of the method involves training an ensemble of binary or ternary Oblivious Trees. This ensemble is then used to compute a hash for each of the original vectors. Vectors with the same hash are considered to belong to the same cluster. For searching, several clusters are selected whose centroids are closest to the vector representation of the search query followed by a full search of the vector representations within the selected clusters. The proposed method demonstrates search quality comparable to widely used industry-standard vector search libraries, such as Faiss, Annoy, and HNSWlib. For datasets with an angular distance metric, the proposed search method achieves accuracy equal to or better than existing solutions. For datasets with a Euclidean distance metric, the search quality is on par with existing solutions. The developed method can be applied to improve search quality in the development of multimodal search systems. The ability to serialize enables clustering data on one computational node and transferring ensemble parameters to another, allowing the proposed algorithm to be utilized in distributed systems.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>векторные представления</kwd><kwd>векторный поиск</kwd><kwd>эмбеддинг</kwd><kwd>небрежное решающее дерево</kwd></kwd-group><kwd-group xml:lang="en"><kwd>vector representations</kwd><kwd>vector search</kwd><kwd>embeddings</kwd><kwd>oblivious decision tree</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Grbovic M., Cheng H. Real-time personalization using embeddings for search ranking at airbnb // Proc. of the 24th ACM SIGKDD International Conference on Knowledge Discovery &amp; Data Mining. 2018. P. 311–320. https://doi.org/10.1145/3219819.3219885</mixed-citation><mixed-citation xml:lang="en">Grbovic M., Cheng H. Real-time personalization using embeddings for search ranking at Airbnb. Proc. of the 24th ACM SIGKDD International Conference on Knowledge Discovery &amp; Data Mining, 2018, pp. 311–320. https://doi.org/10.1145/3219819.3219885</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">Berry M.W., Drmac Z., Jessup E.R. Matrices, vector spaces, and information retrieval //sIAM Review. 1999. V. 41. N 2. P. 335–362. https://doi.org/10.1137/S0036144598347035</mixed-citation><mixed-citation xml:lang="en">Berry M.W., Drmac Z., Jessup E.R. Matrices, vector spaces, and information retrieval. SIAM Review, 1999, vol. 41, no. 2, pp. 335–362. https://doi.org/10.1137/S0036144598347035</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Korn F., Sidiropoulos N., Faloutsos C., Siegel E., Protopapas Z Fast nearest neighbor search in medical image databases // Proc. of the 22th International Conference on Very Large Data Bases (VLDB ‘96). 1996. P. 215–226. https://doi.org/10.5555/645922.673493</mixed-citation><mixed-citation xml:lang="en">Korn F., Sidiropoulos N., Faloutsos C., Siegel E., Protopapas Z Fast nearest neighbor search in medical image databases. Proc. of the 22th International Conference on Very Large Data Bases (VLDB ‘96), 1996, pp. 215–226. https://doi.org/10.5555/645922.673493</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">Seidl T., Kriegel H.-P. Optimal multi-step k-nearest neighbor search // ACM SIGMOD Record. 1998. V. 27. N 2. P. 154–165. https://doi.org/10.1145/276305.276319</mixed-citation><mixed-citation xml:lang="en">Seidl T., Kriegel H.-P. Optimal multi-step k-nearest neighbor search. ACM SIGMOD Record, 1998, vol. 27, no. 2, pp. 154–165. https://doi.org/10.1145/276305.276319</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">Lou Y., Obukhov M. BDT: Gradient Boosted Decision Tables for high accuracy and scoring efficiency // Proc. of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD ‘17). 2017. P. 1893–1901. https://doi.org/10.1145/3097983.3098175</mixed-citation><mixed-citation xml:lang="en">Lou Y., Obukhov M. BDT: Gradient Boosted Decision Tables for high accuracy and scoring efficiency. Proc. of the 23rd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD‘17), 2017, pp. 1893–1901. https://doi.org/10.1145/3097983.3098175</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Chakrabarti S. Efficient image retrieval using multi neural hash codes and bloom filters // Proc. of the IEEE International Conference for Innovation in Technology (INOCON). 2020. P. 1–6. https://doi.org/10.1109/INOCON50539.2020.9298228</mixed-citation><mixed-citation xml:lang="en">Chakrabarti S. Efficient image retrieval using multi neural hash codes and bloom filters. Proc. of the IEEE International Conference for Innovation in Technology (INOCON), 2020, pp. 1–6. https://doi.org/10.1109/INOCON50539.2020.9298228</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Rokach L., Maimon O. Data Mining with Decision Trees: Theory and Applications / 2nd ed. World Scientific Publishing, 2014. 328 p.</mixed-citation><mixed-citation xml:lang="en">Rokach L., Maimon O. Data Mining with Decision Trees: Theory and Applications. 2nd ed. World Scientific Publishing, 2014. 328 p.</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Fumero J., Papadimitriou M., Zakkak F.S., Xekalaki M., Clarkson J., Kotselidis C. Dynamic application reconfiguration on heterogeneous hardware // Proc. of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments. 2019. P. 165–178. https://doi.org/10.1145/3313808.3313819</mixed-citation><mixed-citation xml:lang="en">Fumero J., Papadimitriou M., Zakkak F.S., Xekalaki M., Clarkson J., Kotselidis C. Dynamic application reconfiguration on heterogeneous hardware. Proc. of the 15th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, 2019, pp. 165–178. https://doi.org/10.1145/3313808.3313819</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Xiao H., Rasul K., Vollgraf R. Fashion-mnist: a novel image dataset for benchmarking machine learning algorithms // arXiv. 2017. arXiv:1708.07747. https://doi.org/10.48550/arXiv.1708.07747</mixed-citation><mixed-citation xml:lang="en">Xiao H., Rasul K., Vollgraf R. Fashion-mnist: a novel image dataset for benchmarking machine learning algorithms. arXiv, 2017, arXiv:1708.07747. https://doi.org/10.48550/arXiv.1708.07747</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Aumüller M., Bernhardsson E., Faithfull A. Ann-benchmarks: A benchmarking tool for approximate nearest neighbor algorithms // Lecture Notes in Computer Science. 2017. V. 10609. P. 34–49. https://doi.org/10.1007/978-3-319-68474-1_3</mixed-citation><mixed-citation xml:lang="en">Aumüller M., Bernhardsson E., Faithfull A. Ann-benchmarks: A benchmarking tool for approximate nearest neighbor algorithms. Lecture Notes in Computer Science, 2017, vol. 10609, pp. 34–49. https://doi.org/10.1007/978-3-319-68474-1_3</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Томилов Н.А., Туров В.П., Бабаянц А.А., Платонов А.В. Метод хранения векторных представлений в сжатом виде с применением кластеризации // Научно-технический вестник информационных технологий, механики и оптики. 2024. Т. 24, № 1. С. 112–117. https://doi.org/10.17586/2226-1494-2024-24-1-112-117</mixed-citation><mixed-citation xml:lang="en">Tomilov N.A., Turov V.P., Babayants A.A., Platonov A.V. A method of storing vector data in compressed form using clustering. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2024, vol. 24, no. 1, pp. 112–117. (in Russian). https://doi.org/10.17586/2226-1494-2024-24-1-112-117</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Douze M., Guzhva A., Deng C., Johnson J., Szilvasy G., Mazaré P.-E., Lomeli M., Hosseini L., Jégou H. The Faiss library // arXiv. 2024. arXiv.2401.08281. https://doi.org/10.48550/arXiv.2401.08281</mixed-citation><mixed-citation xml:lang="en">Douze M., Guzhva A., Deng C., Johnson J., Szilvasy G., Mazaré P.-E., Lomeli M., Hosseini L., Jégou H. The Faiss library. arXiv, 2024, arXiv.2401.08281. https://doi.org/10.48550/arXiv.2401.08281</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Malkov Y., Yashunin D. Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs // IEEE Transactions on Pattern Analysis and Machine Intelligence. 2020. V. 42. N 4. P. 824–836. https://doi.org/10.1109/TPAMI.2018.2889473</mixed-citation><mixed-citation xml:lang="en">Malkov Y., Yashunin D. Efficient and robust approximate nearest neighbor search using Hierarchical Navigable Small World graphs. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, vol. 42, no. 4. pp. 824–836. https://doi.org/10.1109/TPAMI.2018.2889473</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Туров В.П., Томилов Н.А., Бабаянц А.А. Разработка инструмента сравнения алгоритмов векторного поиска // XI Конгресс молодых учёных: Cборник научных трудов. СПб.: Национальный исследовательский университет ИТМО, 2022. Т. 1. С. 446–450.</mixed-citation><mixed-citation xml:lang="en">Tomilov N.A., Turov V.P., Babayants A.A. Developing a tool to compare vector search algorithms. Proc. of the 11th Congress of Young Scientists, 2022, vol. 1. pp. 446–450. (in Russian).</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Laaber C., Leitner P. An evaluation of open-source software microbenchmark suites for continuous performance assessment // Proc. of the 15th International Conference on Mining Software Repositories (MSR ‘18). 2018. P. 119–130. https://doi.org/10.1145/3196398.3196407</mixed-citation><mixed-citation xml:lang="en">Laaber C., Leitner P. An evaluation of open-source software microbenchmark suites for continuous performance assessment. Proc. of the 15th International Conference on Mining Software Repositories (MSR ‘18), 2018, pp. 119–130. https://doi.org/10.1145/3196398.3196407</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
