എംബെഡിംഗുകൾ ലളിതമായി വിവരിക്കുന്നു
കമ്പ്യൂട്ടറുകൾക്ക് അക്കങ്ങൾ ഇഷ്ടമാണ്. എന്നാൽ അവയ്ക്ക് അർത്ഥം അറിയില്ല.
ഒരു കമ്പ്യൂട്ടറിനെ സംബന്ധിച്ചിടത്തോളം "happy", "joyful" എന്നീ വാക്കുകൾ വെറും വ്യത്യസ്ത അക്ഷരങ്ങൾ മാത്രമാണ്. ഈ വാക്കുകൾ ഒരേ വികാരം പങ്കിടുന്നുണ്ടെന്ന് അവയ്ക്ക് അറിയില്ല.
എംബെഡിംഗുകൾ (Embeddings) ഈ പ്രശ്നം പരിഹരിക്കുന്നു. അവ വാക്കുകളെ അക്കങ്ങളുടെ പട്ടികകളാക്കി മാറ്റുന്നു. ഈ അക്കങ്ങൾ അർത്ഥത്തിനായുള്ള ജിപിഎസ് (GPS) കോർഡിനേറ്റുകൾ പോലെ പ്രവർത്തിക്കുന്നു.
നിങ്ങൾ വാക്കുകളെ അക്കങ്ങളാക്കി മാറ്റുമ്പോൾ, സമാനമായ വാക്കുകൾ ഒരു ഡിജിറ്റൽ മാപ്പിൽ അടുത്തടുത്തായി വരുന്നു.
- "Dog", "puppy" എന്നിവയ്ക്ക് അടുത്തുള്ള കോർഡിനേറ്റുകൾ ലഭിക്കുന്നു.
- "Dog", "democracy" എന്നിവയ്ക്ക് വളരെ അകലെയുള്ള കോർഡിനേറ്റുകൾ ലഭിക്കുന്നു.
ഒരു വെക്റ്റർ (vector) എന്നത് അക്കങ്ങളുടെ ക്രമബദ്ധമായ ഒരു പട്ടിക മാത്രമാണ്. "king" → [0.21, -0.44, 0.88] "queen" → [0.19, -0.41, 0.85]
യഥാർത്ഥ മോഡലുകൾ ഒരു വാക്കിനായി ആയിരക്കണക്കിന് അക്കങ്ങൾ ഉപയോഗിക്കുന്നു. അവയെല്ലാം നിങ്ങൾ കാണേണ്ടതില്ല. രണ്ട് പോയിന്റുകൾ തമ്മിൽ എത്രത്തോളം അടുത്താണെന്ന് മാത്രം അറിഞ്ഞാൽ മതി.
ഈ അടുപ്പം അളക്കാൻ നമ്മൾ കോസൈൻ സിമിലാരിറ്റി (cosine similarity) ഉപയോഗിക്കുന്നു.
- ഒരേ ദിശയിലുള്ള പോയിന്റുകൾ = ഉയർന്ന ബന്ധം.
- ലംബമായ (right angles) പോയിന്റുകൾ = ബന്ധമില്ലാത്തവ.
ഇത് അർത്ഥത്തെ ജ്യാമിതിയായി (geometry) മാറ്റുന്നു. നിങ്ങൾക്ക് വാക്കുകൾ ഉപയോഗിച്ച് ഗണിതക്രിയകൾ പോലും ചെയ്യാൻ കഴിയും.
നിങ്ങൾ "king" എന്നതിന്റെ വെക്റ്റർ എടുത്ത്, അതിൽ നിന്ന് "man" കുറയ്ക്കുകയും "woman" കൂട്ടുകയും ചെയ്താൽ, നിങ്ങൾ "queen" എന്ന വാക്കിന് അടുത്തേക്ക് എത്തും. കോടിക്കണക്കിന് വാചകങ്ങൾ വായിക്കുന്നതിലൂടെ മോഡൽ ഈ പാറ്റേണുകൾ പഠിക്കുന്നു.
നിങ്ങൾ ദിവസവും ഉപയോഗിക്കുന്ന AI ടൂളുകൾക്ക് കരുത്ത് പകരുന്നത് ഈ ഗണിതമാണ്:
- സെമാന്റിക് സെർച്ച് (Semantic search): കൃത്യമായ കീവേഡുകൾക്ക് പകരം അർത്ഥം അനുസരിച്ച് ഫലങ്ങൾ കണ്ടെത്തുന്നു.
- റെക്കമെൻഡേഷനുകൾ (Recommendations): സമാനമായ വെക്റ്ററുകൾ അടിസ്ഥാനമാക്കി ഉൽപ്പന്നങ്ങളോ പാട്ടുകളോ നിർദ്ദേശിക്കുന്നു.
- RAG: ചോദ്യങ്ങൾക്ക് ഉത്തരം നൽകുന്നതിനായി നിങ്ങളുടെ ഡോക്യുമെന്റുകളിൽ നിന്ന് വസ്തുതകൾ കണ്ടെത്താൻ AI-യെ സഹായിക്കുന്നു.
- ക്ലസ്റ്ററിംഗ് (Clustering): സമാനമായ ഇനങ്ങൾ സ്വയമേവ ഗ്രൂപ്പുകളായി തിരിക്കുന്നു.
നിങ്ങൾ ഈ അക്കങ്ങൾ സ്വയം കണക്കാക്കേണ്ടതില്ല. നിങ്ങൾ ഒരു ടെക്സ്റ്റ് മോഡലിലേക്ക് അയക്കുന്നു, അത് വെക്റ്റർ തിരികെ നൽകുന്നു. പിന്നീട് ഇവ തിരയുന്നതിനായി നിങ്ങൾ ഈ വെക്റ്ററുകൾ ഒരു വെക്റ്റർ ഡാറ്റാബേസിൽ (vector database) സൂക്ഷിക്കുന്നു.
എംബെഡിംഗുകൾ ഭാഷയുടെ നിഗൂഢതയെ ജ്യാമിതിയുടെ യുക്തിയാക്കി മാറ്റുന്നു.
വാക്കുകൾ എങ്ങനെ ബന്ധപ്പെട്ടിരിക്കുന്നു എന്ന് കാണാൻ Meaning Map പരീക്ഷിച്ചു നോക്കൂ: https://dev48v.infy.uk/ai/days/day3-embeddings.html
എല്ലാ ആശയങ്ങളും: https://dev48v.infy.uk/aifromzero.php
ഉറവിടം: https://dev.to/dev48v/embeddings-explained-simply-how-ai-turns-words-into-a-map-of-meaning-36f4