• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 1
  • 1
  • Tagged with
  • 2
  • 2
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • 1
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

[pt] METODOS DE BUSCA POR SIMILARIDADE EM SEQUÊNCIAS TEMPORAIS DE VETORES COM UMA APLICAÇÃO À RECUPERAÇÃO DE ANÚNCIOS CLASSIFICADOS / [en] STAGED VECTOR STREAM SIMILARITY SEARCH METHODS WITH AN APPLICATION TO CLASSIFIED AD RETRIEVA

BRUNO FRANCISCO MARTINS DA SILVA 22 February 2024 (has links)
[pt] Uma sequência temporal de vetores (vector stream) pode ser modeladacomo uma sequência de pares ((v1, t1). . .(vn, tn)), onde vk é um vetor e tk écarimbo de tempo tais que todos os vetores são da mesma dimensão e tkmenor que tk+1. O problema de busca por similaridade em sequências temporais devetores é definido como: Dado um vetor (de alta dimensão) v e um intervalode tempo T, encontre uma lista ranqueada de vetores, recuperados de umasequência temporal de vetores, que sejam similares a v e que foram recebidosdentro do intervalo de tempo T. Esta dissertação primeiro introduz umafamília de métodos de busca por similaridade em sequências temporais devetores que não dependem da sequência completa, mas se adaptam à medidaque os vetores são incluídos na sequência. Os métodos geram uma sequênciade índices, que são então usados para implementar uma busca aproximadado vizinho mais próximo na sequência temporal de vetores. Em seguida, adissertação descreve uma implementação de um método da família baseado em Hierarchical Navigable Small World graphs. Utilizando esta implementação,a dissertação apresenta uma ferramenta de busca de anúncios classificadosque oferece recuperação de anúncios à medida que usuários continuamentesubmetem novos anúncios. A ferramenta é estruturada em um módulo principale três módulos auxiliares, sendo que o módulo principal é responsável porcoordenar os módulos auxiliares e prover uma interface para o usuário, e osmódulos auxiliares são responsáveis pela codificação dos textos e imagens emvetores, a indexação dos vetores, e o armazenamento dos textos, imagens evetores. Por fim, para avaliar a ferramenta, a dissertação utiliza um conjuntode aproximadamente 1 milhão de registros com as descrições de anúnciosclassificados e suas imagens. Os resultados mostraram que a ferramenta atingiuuma precisão de 98 por cento e um recall de 97 por cento. / [en] A vector stream can be modeled as a sequence of pairs ((v1, t1). . .(vn, tn)), where vk is a vector and tk is a timestamp such that all vectors are of the same dimension and tk less than tk+1. The vector stream similarity search problem is defined as: Given a (high-dimensional) vector q and a time interval T, find a ranked list of vectors, retrieved from a vector stream, that are similar to q and that were received in the time interval T. This dissertation first introduces a family of vector stream similarity search methods that do not depend on having the full set of vectors available beforehand but adapt to the vector stream as the vectors are added. The methods generate a sequence of indices that are used to implement approximated nearest neighbor search over the vector stream. Then, the dissertation describes an implementation of a method in the family based on Hierarchical Navigable Small World graphs. Based on this implementation, the dissertation presents a Classified Ad Retrieval tool that supports classified ad retrieval as new ads are continuously submitted. The tool is structured into a main module and three auxiliary modules, where the main module is responsible for coordinating the auxiliary modules and for providing a user interface, and the auxiliary modules are responsible for text and image encoding, vector stream indexing, and data storage. To evaluate the tool, the dissertation uses a dataset with approximately 1 million records with descriptions of classified ads and their respective images. The results showed that the tool reached an average precision of 98 percent and an average recall of 97 percent.
2

[en] PARALLEL PROGRAMING IN THE REDIS KEY-VALUE DATASTORE / [pt] PROGRAMAÇÃO PARALELA NO BANCO DE DADOS CHAVE-VALOR REDIS

JUAREZ DA SILVA BOCHI 12 April 2016 (has links)
[pt] Redis é um banco de dados chave-valor de código livre que dá suporte à avaliação de scripts Lua, mas sua implementação utiliza apenas uma tarefa de sistema operacional. Scripts longos são desencorajados porque a avaliação do código é bloqueante, o que pode causar degradação de desempenho para os demais usuários. Através da aplicação do modelo de concorrência M:N, que combina tarefas de nível de sistema operacional com tarefas do nível de usuário, adicionamos no Redis a capacidade de execução de scripts em paralelo, permitindo que todos os núcleos do servidor sejam explorados. Com a utilização de corotinas Lua, implementamos um escalonador capaz de alocar e suspender a execução de tarefas de nível de usuário nos núcleos disponíveis sem necessidade de alteração do código dos scripts. Este modelo permitiu proteger o programador das complexidades naturais do paralelismo como sincronização no acesso a recursos compartilhados e escalonamento das tarefas. / [en] Redis is an open source key-value database that supports Lua programming language scripts, but it s implementation is single threaded. Long running scripts are discouraged because script evaluation is blocking, which may cause service levels deterioration. Applying the M:N threading model, which combines user and operating system threads, we added to Redis the ability of running scripts in parallel, leveraging all server cores.With the use of Lua coroutines, we implemented a scheduler able to allocate and suspend user-level tasks in the available cores without the need of changing scripts source code. The M:N model allowed us to protect the programmer from the natural complexities that arise from parallel programming, such as access to shared resources synchronization and scheduling of tasks into different operational system threads.

Page generated in 0.0315 seconds