Artigo
· Out. 19 4min de leitura

A minha abordagem pessoal aos Vectores

Motivado pelo feedback pessoal de @EDILSON CARVALHO  e  uma excelente
apresentação de @Michael Braam relacionada com a Pesquisa Vetorial,
gostaria de partilhar a minha abordagem pessoal aos Vectores.

Quando comecei e encontrei vectores com 256, 384 e mais de 1200 dimensões - senti-me perdido.
No entanto, o meu exemplo Vector-inside-IRIS - uma simplificação da iris-vector-search - funcionou bem.

Para compreender a mecânica que lhe está subjacente, decidi começar por pequenos passos.
As nossas 3 dimensões comuns descrevem muito bem o nosso mundo físico. Mesmo
a meia quarta dimensão (sem negativos) acrescentada por Einstein não é muito difícil de compreender.
A teoria cosmológica das cordas com 0 a 11+ dimensões era para mim uma verdadeira fronteira.

Voltemos ao início: => 2 dimensões são suficientes para um principiante.
As coordenadas geográficas constituem um bom ponto de partida com dados de teste suficientes.
A função VECTOR_COSINE() foi o meu principal objetivo no meu exemplo de geo-vector-search

A gama de resultados de -1 a +1 é fácil de interpretar num mapa projetado quase plano.
Isto é matemática básica e a sua transposição para uma dimensão adicional não é um milagre.

Mas e quanto a algumas centenas de dimensões?

;#1
-.0104943, .01472898, .07107521, .07168121, -.0937807, .05828459, .04451195, -.1045385, -.0110124, -.0240547, -.0032111, -.0030188, -.0414225, -.1092015, .02203945, -.0129255, .14087346, .04734043, -.0181046, -.0458297, .02323769, .02859951, .01124321, .00857456, -.0049756, -.0144282, -.0846236, -.0284645, -.0147692, -.0989931, .04880870, .01899284, -.0176833, .04763242, -.0808972, -.0604988, .05757499, -.0638228, .04217084, .03707900, .03757081, .03086806, .02773610, .02082979, -.0495735, -.0337784, -.0438372, -.0827000, -.0018084, -.0072785, -.0797550, -.0055747, -.0551242, -.0918905, .01140710, -.0115834, -.0088469, -.0445509, .02972822, .04385065, .04125113, .01189815, .01809763
;#2
-.0340279, -.0930349, -.0356242, .03200291, .07393958, -.0164658, -.0218968, .01392244, -.0069597, .02677908, -.0800164, .07227557, -.0430033, -.1134698, -.0561500, -.0520939, -.0306403, .00750979, -.0345837, .03335380, -.0438071, -.0088005, .03423582, .00794844, .01172804, .05204785, .04179215, .01768089, -.0489745, -.0031708, -.0349655, -.0482467, .08090461, -.0596610, -.0565769, -.0043313, .01015284, .07152537, .04189436, -.0475862, -.0171517, .03899634, -.0705699, -.1133416, .08019342, .02138555, .01466019, .00184080, -.0905641, -.1039420, -.0290395, .02753796, .01674868, -.0259464, -.0107869, -.0407411, -.0120343, -.0636389, .00047146, .01514394, -.0694578, -.0204190, -.0024446
;#3
.00350692, .09432639, .01641871, .09951058, .10459023, .00019239, -.0823584, -.0022799, -.0227801, -.0023362, -.0397562, .07449327, -.1137044, .09173037, .08620572, -.0881805, -.0111093, -.0316556, -.0044012, -.1248759, -.0897788, .03191807, -.0147239, -.0198379, -.0849955, -.0026861, .02628867, -.0523788, -.0398543, -.0080245, .06736382, .01456158, .04700677, -.0171667, -.0217174, .06761254, -.0070750, .02879706, .01109632, .02541129, -.0384420, .00410159, .05145533, .06493697, -.0924961, -.0422163, -.0739539, .06107471, .06070494, -.0044191, .00238501, -.0182966, .03546700, .05925614, -.0361021, .09686610, .02930910, .01282224, .02953721, -.0526526, .03977891, .00501585, .00717564

O exemplo aqui em cima foi encurtado para facilitar a leitura

Depois de pensar durante algum tempo, encontrei uma imagem pessoal:

  • Quando procuro um objetivo no Google Maps que não seja mesmo ao virar da esquina, recebo uma escolha de percursos.
  • O mais curto, o mais rápido, o que consome menos combustível, os transportes públicos, ... 
  • e faço uma escolha de acordo com as minhas necessidades
  • interpretando as dimensões dos meus vectores como passos intermédios numerados até ao meu objetivo, obteria uma imagem semelhante
  • E com VECTOR_COSINE obtenho a melhor proposta

Os especialistas em LLM podem rir-se da minha simplificação.
Mas, para mim, é uma imagem que ultrapassa a matemática abstrata e as teorias linguísticas confusas.
E acredito que a minha imagem simples, baseada num processo usado diariamente na condução
de um automóvel ajuda a compreender como os resultados são encontrados.

NOTA:
Ainda não faço ideia de COMO esses vectores são calculados, desde que sejam consistentes.
Era importante para mim perceber como funciona a correspondência. 

Discussão (0)1
Entre ou crie uma conta para continuar