பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்

என் பெயர் பாவெல் பார்கோமென்கோ, நான் ஒரு ML டெவலப்பர். இந்தக் கட்டுரையில், Yandex.Zen இன் வடிவமைப்பை விளக்கவும், பரிந்துரைகளின் தரத்தை மேம்படுத்திய தொழில்நுட்ப மேம்பாடுகளைப் பகிர்ந்து கொள்ளவும் விரும்புகிறேன். இந்தப் பதிவில், மில்லியன் கணக்கான ஆவணங்களில் மிகவும் பொருத்தமான ஆவணங்களை ஒரு சில மில்லி வினாடிகளில் எவ்வாறு கண்டுபிடிப்பது; ஒரு பெரிய மேட்ரிக்ஸை (மில்லியன் கணக்கான நெடுவரிசைகள் மற்றும் கோடிக்கணக்கான வரிசைகளைக் கொண்டது) தொடர்ந்து காரணியாக்குவது எப்படி, இதனால் புதிய ஆவணங்கள் பத்து நிமிடங்களில் அவற்றின் திசையன்களைப் பெறுகின்றன; மற்றும் வீடியோக்களுக்கு நல்ல திசையன் பிரதிநிதித்துவத்தைப் பெற பயனர்-கட்டுரை மேட்ரிக்ஸ் காரணியாக்கலை எவ்வாறு மீண்டும் பயன்படுத்துவது என்பதை நீங்கள் கற்றுக்கொள்வீர்கள்.

பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்

எங்கள் பரிந்துரை தரவுத்தளத்தில் பல்வேறு வடிவங்களின் மில்லியன் கணக்கான ஆவணங்கள் உள்ளன: எங்கள் தளத்தில் உருவாக்கப்பட்ட உரை கட்டுரைகள் மற்றும் வெளிப்புற வலைத்தளங்கள், வீடியோக்கள், விவரிப்புகள் மற்றும் குறுகிய இடுகைகளிலிருந்து எடுக்கப்பட்டது. அத்தகைய சேவையை உருவாக்குவது ஏராளமான தொழில்நுட்ப சவால்களை முன்வைக்கிறது. அவற்றில் சில இங்கே:

  • கணக்கீட்டுப் பணிகளைப் பிரிக்கவும்: அனைத்து கனமான செயல்பாடுகளையும் ஆஃப்லைனில் செய்யவும், மேலும் வேகமான மாதிரி பயன்பாட்டை நிகழ்நேரத்தில் மட்டுமே செய்யவும், இதனால் மறுமொழி நேரங்கள் 100-200 எம்எஸ்களுக்குள் இருக்கும்.
  • பயனர் செயல்களை விரைவாக இணைக்கவும். இதற்கு அனைத்து நிகழ்வுகளும் உடனடியாக பரிந்துரைப்பவருக்கு வழங்கப்பட வேண்டும், மேலும் மாதிரிகளின் செயல்திறனை பாதிக்க வேண்டும்.
  • புதிய பயனர்களின் நடத்தைக்கு விரைவாக ஏற்ப ஊட்டத்தை வடிவமைக்கவும். புதிய பயனர்கள் தங்கள் கருத்து பரிந்துரைகளை எவ்வாறு பாதிக்கிறது என்பதை உணர வேண்டும்.
  • புதிய கட்டுரையை யாருக்கு பரிந்துரைக்க வேண்டும் என்பதை விரைவாகப் புரிந்துகொள்ளுங்கள்.
  • புதிய உள்ளடக்கத்தின் தொடர்ச்சியான வெளிப்பாட்டிற்கு விரைவாக பதிலளிக்கவும். ஒவ்வொரு நாளும் பல்லாயிரக்கணக்கான கட்டுரைகள் வெளியிடப்படுகின்றன, மேலும் அவற்றில் பல (உதாரணமாக, செய்திகள் போன்றவை) வரையறுக்கப்பட்ட ஆயுட்காலம் கொண்டவை. இது திரைப்படங்கள், இசை மற்றும் பிற நீண்ட காலம் வாழும் மற்றும் விலையுயர்ந்த உள்ளடக்கத்திலிருந்து அவற்றை வேறுபடுத்துகிறது.
  • ஒரு டொமைனில் இருந்து இன்னொரு டொமைனுக்கு அறிவை மாற்றவும். பரிந்துரை அமைப்பு உரை கட்டுரைகளுக்கான பயிற்சி பெற்ற மாதிரிகளைக் கொண்டிருந்தால், நாங்கள் வீடியோக்களைச் சேர்த்தால், புதிய உள்ளடக்க வகைகளின் தரவரிசையை மேம்படுத்த ஏற்கனவே உள்ள மாதிரிகளை மீண்டும் பயன்படுத்தலாம்.

இந்தப் பிரச்சினைகளை நாங்கள் எப்படித் தீர்த்தோம் என்பதை நான் உங்களுக்குச் சொல்கிறேன்.

வேட்பாளர்கள் தேர்வு

தரவரிசை தரத்தில் எந்தப் பாதிப்பும் ஏற்படாமல், ஒரு சில மில்லி வினாடிகளில் பரிசீலிக்கப்படும் ஆவணங்களின் எண்ணிக்கையை ஆயிரக்கணக்கான மடங்கு குறைப்பது எப்படி?

பல ML மாதிரிகளைப் பயிற்றுவித்து, அவற்றின் அடிப்படையில் அம்சங்களை உருவாக்கி, பயனருக்கான ஆவணங்களை தரவரிசைப்படுத்தும் மற்றொரு மாதிரியைப் பயிற்றுவித்தோம் என்று வைத்துக்கொள்வோம். இது எல்லாம் நன்றாக இருக்கும், ஆனால் மில்லியன் கணக்கான ஆவணங்கள் இருந்தால், அனைத்து ஆவணங்களுக்கான அனைத்து அம்சங்களையும் நிகழ்நேரத்தில் கணக்கிட முடியாது, மேலும் பரிந்துரைகள் 100-200 எம்எஸ்ஸில் உருவாக்கப்பட வேண்டும். பயனருக்கு தரவரிசைப்படுத்தப்படும் மில்லியன் கணக்கான துணைக்குழுவைத் தேர்ந்தெடுப்பதே குறிக்கோள். இந்த நிலை பொதுவாக வேட்பாளர் தேர்வு என்று அழைக்கப்படுகிறது. இதற்கு பல தேவைகள் உள்ளன. முதலாவதாக, தேர்வு மிக வேகமாக இருக்க வேண்டும், தரவரிசை செயல்முறைக்கு முடிந்தவரை அதிக நேரத்தை விட்டுவிட வேண்டும். இரண்டாவதாக, தரவரிசைப்படுத்த வேண்டிய ஆவணங்களின் எண்ணிக்கையை கணிசமாகக் குறைப்பதன் மூலம், முடிந்தவரை பல தொடர்புடைய ஆவணங்களை நாம் தக்க வைத்துக் கொள்ள வேண்டும்.

எங்கள் வேட்பாளர் தேர்வு செயல்முறை காலப்போக்கில் பரிணமித்துள்ளது, இப்போது நாங்கள் பல கட்ட அணுகுமுறையை அடைந்துள்ளோம்:

பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்

முதலில், அனைத்து ஆவணங்களும் குழுக்களாகப் பிரிக்கப்படுகின்றன, மேலும் ஒவ்வொரு குழுவிலிருந்தும் மிகவும் பிரபலமான ஆவணங்கள் தேர்ந்தெடுக்கப்படுகின்றன. குழுக்கள் தளங்கள், தலைப்புகள் அல்லது கிளஸ்டர்களாக இருக்கலாம். ஒவ்வொரு பயனருக்கும், மிகவும் பொருத்தமான குழுக்கள் அவர்களின் வரலாற்றின் அடிப்படையில் தேர்ந்தெடுக்கப்படுகின்றன, மேலும் சிறந்த ஆவணங்கள் இந்த குழுக்களிலிருந்து தேர்ந்தெடுக்கப்படுகின்றன. நிகழ்நேரத்தில் பயனருக்கு மிகவும் பொருத்தமான ஆவணங்களைத் தேர்ந்தெடுக்க நாங்கள் ஒரு kNN குறியீட்டையும் பயன்படுத்துகிறோம். kNN குறியீட்டை உருவாக்குவதற்கு பல முறைகள் உள்ளன, ஆனால் எங்களுடையது சிறப்பாக செயல்படுகிறது. எச்என்எஸ்டபிள்யூ (படிநிலை வழிசெலுத்தக்கூடிய சிறிய உலக வரைபடங்கள்). இது ஒரு படிநிலை மாதிரியாகும், இது மில்லியன் கணக்கான தரவுத்தளத்திலிருந்து ஒரு பயனருக்கு மிக நெருக்கமான N திசையன்களை சில மில்லி விநாடிகளில் கண்டுபிடிக்க அனுமதிக்கிறது. முதலில் நமது முழு ஆவண தரவுத்தளத்தையும் ஆஃப்லைனில் குறியீட்டுப்படுத்துகிறோம். குறியீட்டு தேடல் மிக வேகமாக இருப்பதால், பல வலுவான உட்பொதிப்புகள் இருந்தால், நாம் பல குறியீடுகளை (ஒவ்வொரு உட்பொதிப்பிற்கும் ஒரு குறியீடு) உருவாக்கி, அவை ஒவ்வொன்றையும் உண்மையான நேரத்தில் அணுகலாம்.

ஒவ்வொரு பயனருக்கும் பல்லாயிரக்கணக்கான ஆவணங்கள் எஞ்சியுள்ளன. இது இன்னும் அனைத்து அம்சங்களையும் கணக்கிட மிகப் பெரியதாக உள்ளது, எனவே இந்த கட்டத்தில் நாம் இலகுரக தரவரிசையைப் பயன்படுத்துகிறோம் - குறைவான அம்சங்களைக் கொண்ட கனரக தரவரிசையின் இலகுரக மாதிரி. கனரக மாதிரியின் உச்சியில் எந்த ஆவணங்கள் இருக்கும் என்பதைக் கணிப்பதே குறிக்கோள். அதிக முன்கணிப்பு மதிப்பைக் கொண்ட ஆவணங்கள் கனரக மாதிரியில் பயன்படுத்தப்படும், இது இறுதி தரவரிசை நிலை. இந்த அணுகுமுறை ஒரு பயனருக்குக் கருதப்படும் ஆவணங்களின் தரவுத்தளத்தை மில்லியன் கணக்கானவற்றிலிருந்து பல்லாயிரக்கணக்கான மில்லி வினாடிகளில் குறைக்க அனுமதிக்கிறது.

ALS இயக்க நேர படிநிலை

ஒரு கிளிக் செய்த உடனேயே பயனர் கருத்துக்களை எவ்வாறு கணக்கில் எடுத்துக்கொள்வது?

பரிந்துரைகளில் ஒரு முக்கிய காரணி பயனர் கருத்துக்களுக்கான பதில் நேரம். புதிய பயனர்களுக்கு இது மிகவும் முக்கியமானது: ஒருவர் முதலில் பரிந்துரை முறையைப் பயன்படுத்தத் தொடங்கும்போது, ​​பல்வேறு தலைப்புகளில் ஆவணங்களின் தனிப்பயனாக்கப்படாத ஊட்டம் அவர்களுக்கு வழங்கப்படும். அவர்கள் முதல் கிளிக் செய்தவுடன், உடனடியாக இதை கணக்கில் எடுத்துக்கொண்டு அவர்களின் ஆர்வங்களுக்கு ஏற்ப மாற்றுவது அவசியம். அனைத்து காரணிகளும் ஆஃப்லைனில் கணக்கிடப்பட்டால், தாமதம் காரணமாக விரைவான அமைப்பு பதில் சாத்தியமற்றதாகிவிடும். எனவே, பயனர் செயல்களை நிகழ்நேரத்தில் செயலாக்குவது அவசியம். இந்த நோக்கத்திற்காக, பயனரின் திசையன் பிரதிநிதித்துவத்தை உருவாக்க, இயக்க நேரத்தில் ALS படியைப் பயன்படுத்துகிறோம்.

எல்லா ஆவணங்களுக்கும் ஒரு வெக்டார் பிரதிநிதித்துவம் இருப்பதாக வைத்துக்கொள்வோம். எடுத்துக்காட்டாக, ELMo, BERT அல்லது பிற இயந்திர கற்றல் மாதிரிகளைப் பயன்படுத்தி கட்டுரை உரையின் அடிப்படையில் ஆஃப்லைனில் உட்பொதிவுகளை உருவாக்கலாம். கணினியில் அவர்களின் தொடர்புகளின் அடிப்படையில் ஒரே இடத்தில் பயனர்களின் வெக்டார் பிரதிநிதித்துவத்தை எவ்வாறு பெறுவது?

பயனர்-ஆவண மேட்ரிக்ஸின் உருவாக்கம் மற்றும் சிதைவின் பொதுவான கொள்கைநம்மிடம் m பயனர்கள் மற்றும் n ஆவணங்கள் இருப்பதாக வைத்துக்கொள்வோம். சில பயனர்களுக்கு, சில ஆவணங்கள் மீதான அவர்களின் அணுகுமுறைகள் அறியப்படுகின்றன. இந்தத் தகவலை பின்னர் ஒரு m x n அணியாகக் குறிப்பிடலாம்: வரிசைகள் பயனர்களுக்கும், நெடுவரிசைகள் ஆவணங்களுக்கும் ஒத்திருக்கும். பெரும்பாலான ஆவணங்கள் பயனரால் பார்க்கப்படாததால், பெரும்பாலான அணி செல்கள் காலியாகவே இருக்கும், மற்றவை நிரப்பப்படும். ஒவ்வொரு நிகழ்வுக்கும் (விருப்பம், வெறுப்பு, கிளிக்), அணிக்கு ஒரு மதிப்பு உள்ளது - ஆனால் ஒரு விருப்பம் 1 ஐயும் ஒரு வெறுப்பு 1 ஐயும் குறிக்கும் ஒரு எளிமைப்படுத்தப்பட்ட மாதிரியைக் கருத்தில் கொள்வோம்.

அணியை இரண்டாகப் பிரிப்போம்: P (m x d) மற்றும் Q (d x n), இங்கு d என்பது திசையன் பிரதிநிதித்துவத்தின் பரிமாணம் (பொதுவாக ஒரு சிறிய எண்). பின்னர், ஒவ்வொரு பொருளும் ஒரு d-பரிமாண திசையனுடன் ஒத்திருக்கும் (பயனர் P அணியில் ஒரு வரிசையாகவும், ஆவணம் Q அணியில் ஒரு நெடுவரிசையாகவும் இருக்கும்). இந்த திசையன்கள் தொடர்புடைய பொருட்களின் உட்பொதிப்புகளாக இருக்கும். ஒரு பயனர் ஒரு ஆவணத்தை விரும்புவாரா என்பதைக் கணிக்க, நீங்கள் அவர்களின் உட்பொதிப்புகளைப் பெருக்கலாம்.

பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்
மேட்ரிக்ஸ் காரணியாக்க முறைகளில் ஒன்று ALS (Alternating Least Squares) ஆகும். பின்வரும் இழப்புச் செயல்பாட்டை நாங்கள் மேம்படுத்துவோம்:

பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்

இங்கே rui என்பது பயனர் u மற்றும் ஆவணம் i இன் தொடர்பு, qi என்பது ஆவணம் i இன் திசையன், pu என்பது பயனர் u இன் திசையன்.

பின்னர் (நிலையான ஆவண திசையன்களுடன்) சராசரி சதுரப் பிழையின் அடிப்படையில் உகந்த பயனர் திசையன், தொடர்புடைய நேரியல் பின்னடைவைத் தீர்ப்பதன் மூலம் பகுப்பாய்வு ரீதியாகக் கண்டறியப்படுகிறது.

இது "ALS படி" என்று அழைக்கப்படுகிறது. ALS வழிமுறையே, மேட்ரிக்ஸில் ஒன்றை (பயனர்கள் மற்றும் கட்டுரைகள்) மாறி மாறி சரிசெய்து, மற்றொன்றைப் புதுப்பித்து, உகந்த தீர்வைக் கண்டறிவதைக் கொண்டுள்ளது.

அதிர்ஷ்டவசமாக, பயனரின் வெக்டார் பிரதிநிதித்துவத்தைக் கண்டறிவது என்பது வெக்டார் வழிமுறைகளைப் பயன்படுத்தி இயக்க நேரத்தில் செய்யக்கூடிய ஒரு வேகமான செயல்பாடாகும். இந்த தந்திரம் பயனர் கருத்துக்களை உடனடியாக தரவரிசையில் காரணியாக்க அனுமதிக்கிறது. வேட்பாளர் தேர்வை மேம்படுத்த அதே உட்பொதிப்பை kNN குறியீட்டிலும் பயன்படுத்தலாம்.

பரவலாக்கப்பட்ட கூட்டு வடிகட்டுதல்

அதிகரிக்கும் பரவலாக்கப்பட்ட அணி காரணிமயமாக்கலை எவ்வாறு செயல்படுத்துவது மற்றும் புதிய கட்டுரைகளின் திசையன் பிரதிநிதித்துவங்களை விரைவாகக் கண்டுபிடிப்பது எப்படி?

பரிந்துரை சமிக்ஞைகளின் ஒரே ஆதாரம் உள்ளடக்கம் மட்டுமல்ல. மற்றொரு முக்கியமான ஆதாரம் கூட்டுத் தரவு. நல்ல தரவரிசை அம்சங்களை பாரம்பரியமாக பயனர்-ஆவண மேட்ரிக்ஸ் சிதைவிலிருந்து பெறலாம். இருப்பினும், அத்தகைய சிதைவைச் செயல்படுத்த முயற்சிக்கும்போது, ​​நாங்கள் பல சிக்கல்களைச் சந்தித்தோம்:

1. எங்களிடம் மில்லியன் கணக்கான ஆவணங்களும் கோடிக்கணக்கான பயனர்களும் உள்ளனர். முழு மேட்ரிக்ஸும் ஒரே கணினியில் பொருந்தாது, மேலும் சிதைவு மிக நீண்ட நேரம் எடுக்கும்.
2. கணினியில் உள்ள பெரும்பாலான உள்ளடக்கம் குறுகிய ஆயுட்காலம் கொண்டது: ஆவணங்கள் சில மணிநேரங்களுக்கு மட்டுமே பொருத்தமானதாக இருக்கும். எனவே, அவற்றின் திசையன் பிரதிநிதித்துவத்தை விரைவில் உருவாக்குவது அவசியம்.
3. ஒரு ஆவணம் வெளியிடப்பட்ட உடனேயே நீங்கள் சிதைவை உருவாக்கினால், போதுமான எண்ணிக்கையிலான பயனர்களால் மதிப்பீடு செய்ய அதற்கு நேரம் இருக்காது. எனவே, அதன் திசையன் பிரதிநிதித்துவம் பெரும்பாலும் மோசமாக இருக்கும்.
4. ஒரு பயனர் ஒரு பதிவை விரும்பியோ அல்லது விரும்பாமலோ வைத்திருந்தால், அதை உடனடியாகப் பிரிவின் கீழ் கொண்டு வர முடியாது.

இந்த சிக்கல்களைத் தீர்க்க, பயனர்-ஆவண மேட்ரிக்ஸின் பரவலாக்கப்பட்ட சிதைவை அடிக்கடி அதிகரிக்கும் புதுப்பிப்புகளுடன் செயல்படுத்தினோம். இது சரியாக எப்படி வேலை செய்கிறது?

நம்மிடம் N இயந்திரங்களின் ஒரு கொத்து இருப்பதாக வைத்துக்கொள்வோம் (N நூற்றுக்கணக்கானது) மேலும், அவை முழுவதும் ஒரு கணினியில் பொருந்தாத ஒரு மேட்ரிக்ஸின் பரவலாக்கப்பட்ட சிதைவைச் செய்ய விரும்புகிறோம். கேள்வி என்னவென்றால்: ஒருபுறம், ஒவ்வொரு இயந்திரமும் போதுமான தரவைக் கொண்டிருக்கும் வகையில், மறுபுறம், கணக்கீடுகள் சுயாதீனமாக இருக்கும் வகையில் இந்த சிதைவை எவ்வாறு செய்ய முடியும்?

பரிந்துரைகளின் தேர்வின் தரம் மற்றும் வேகத்தில் நாங்கள் எவ்வாறு செயல்படுகிறோம்

மேலே விவரிக்கப்பட்ட ALS சிதைவு வழிமுறையைப் பயன்படுத்துவோம். ஒரு ALS படியை எவ்வாறு பரவலாக்கப்பட்ட முறையில் செய்வது என்பதைக் கருத்தில் கொள்வோம் - மீதமுள்ள படிகள் ஒரே மாதிரியாக இருக்கும். நம்மிடம் ஒரு நிலையான ஆவண அணி உள்ளது மற்றும் ஒரு பயனர் அணியை உருவாக்க விரும்புகிறோம் என்று வைத்துக்கொள்வோம். இதைச் செய்ய, அதை வரிசைகள் வாரியாக N பகுதிகளாகப் பிரிப்போம், ஒவ்வொரு பகுதியும் தோராயமாக ஒரே எண்ணிக்கையிலான வரிசைகளைக் கொண்டிருக்கும். தொடர்புடைய வரிசைகளின் காலியாக இல்லாத செல்களை ஒவ்வொரு இயந்திரத்திற்கும், முழு ஆவண உட்பொதிக்கும் அணிக்கும் விநியோகிப்போம். இந்தத் தரவு மிகப் பெரியதாக இல்லாததால், பயனர்-ஆவண அணிகள் பொதுவாக மிகவும் குறைவாக இருப்பதால், இந்தத் தரவு ஒரு பொதுவான கணினியில் பொருந்தும்.

இந்த தந்திரத்தை மாதிரி ஒன்றிணைக்கும் வரை பல சகாப்தங்களுக்கு மீண்டும் மீண்டும் செய்யலாம், நிலையான மேட்ரிக்ஸை மாறி மாறி மாற்றலாம். ஆனால் அப்போதும் கூட, மேட்ரிக்ஸ் சிதைவு பல மணிநேரம் ஆகலாம். மேலும் இது புதிய ஆவணங்களுக்கான உட்பொதிப்புகளை விரைவாகப் பெறுவதற்கும், மாதிரியை உருவாக்கும் போது குறைந்த தகவல்கள் கிடைத்தவற்றின் உட்பொதிப்புகளைப் புதுப்பிப்பதற்கும் உள்ள சிக்கலைத் தீர்க்காது.

வேகமான அதிகரிக்கும் மாதிரி புதுப்பிப்புகளை செயல்படுத்துவதன் மூலம் நாங்கள் உதவினோம். எங்களிடம் தற்போது பயிற்சி பெற்ற மாதிரி இருப்பதாக வைத்துக்கொள்வோம். அதன் பயிற்சிக்குப் பிறகு, எங்கள் பயனர்கள் தொடர்பு கொண்ட புதிய கட்டுரைகள் சேர்க்கப்பட்டுள்ளன, அதே போல் பயிற்சியின் போது குறைவான தொடர்புகளைக் கொண்ட கட்டுரைகளும் சேர்க்கப்பட்டுள்ளன. இந்தக் கட்டுரைகளுக்கான உட்பொதிப்புகளை விரைவாகப் பெற, மாதிரியின் முதல் பெரிய அளவிலான பயிற்சியின் போது பெறப்பட்ட பயனர் உட்பொதிப்புகளைப் பயன்படுத்துகிறோம் மற்றும் நிலையான பயனர் மேட்ரிக்ஸுடன் ஆவண மேட்ரிக்ஸைக் கணக்கிட ஒற்றை ALS படியைச் செய்கிறோம். இது ஒரு ஆவணம் வெளியிடப்பட்ட சில நிமிடங்களுக்குள் - மிக விரைவாக உட்பொதிப்புகளைப் பெறவும், புதிய ஆவணங்களின் உட்பொதிப்புகளை அடிக்கடி புதுப்பிக்கவும் அனுமதிக்கிறது.

பரிந்துரைகள் உடனடியாக மனித செயல்களின் அடிப்படையில் இருப்பதை உறுதிசெய்ய, இயக்க நேரத்தில் ஆஃப்லைனில் பெறப்பட்ட பயனர் உட்பொதிவுகளை நாங்கள் பயன்படுத்துவதில்லை. அதற்கு பதிலாக, நாங்கள் ஒரு ALS படியைச் செய்து தற்போதைய பயனர் வெக்டரைப் பெறுகிறோம்.

வேறொரு டொமைன் பகுதிக்கு மாற்றவும்

வீடியோவின் வெக்டார் பிரதிநிதித்துவத்தை உருவாக்க உரை கட்டுரைகளில் பயனர் கருத்துக்களை எவ்வாறு பயன்படுத்துவது?

ஆரம்பத்தில், நாங்கள் உரை கட்டுரைகளை மட்டுமே பரிந்துரைத்தோம், எனவே எங்கள் வழிமுறைகளில் பல இந்த வகை உள்ளடக்கத்திற்கு ஏற்றவாறு வடிவமைக்கப்பட்டுள்ளன. இருப்பினும், பிற வகையான உள்ளடக்கங்களைச் சேர்க்கும்போது, ​​எங்கள் மாதிரிகளை மாற்றியமைக்க வேண்டிய அவசியத்தை நாங்கள் எதிர்கொண்டோம். வீடியோவை உதாரணமாகப் பயன்படுத்தி இந்த சிக்கலை எவ்வாறு தீர்த்தோம்? அனைத்து மாதிரிகளையும் புதிதாக மீண்டும் பயிற்சி அளிப்பது ஒரு வழி. ஆனால் இது நேரத்தை எடுத்துக்கொள்ளும், மேலும் சில வழிமுறைகள் பயிற்சி மாதிரியின் அளவைக் கோருகின்றன, இது சேவையில் அவற்றின் ஆயுட்காலத்தின் ஆரம்ப கட்டங்களில் புதிய உள்ளடக்க வகைகளுக்கு இன்னும் போதுமான அளவில் கிடைக்கவில்லை.

நாங்கள் வேறுபட்ட அணுகுமுறையை எடுத்து வீடியோக்களுக்கு உரை மாதிரிகளை மீண்டும் பயன்படுத்தினோம். அதே ALS தந்திரம் வீடியோ திசையன் பிரதிநிதித்துவங்களை உருவாக்க எங்களுக்கு உதவியது. உரை கட்டுரைகளின் அடிப்படையில் பயனர் திசையன் பிரதிநிதித்துவத்தை எடுத்து, வீடியோ பார்வை தரவைப் பயன்படுத்தி ALS படியைச் செய்தோம். இந்த வழியில், நாங்கள் எளிதாக ஒரு வீடியோ திசையன் பிரதிநிதித்துவத்தைப் பெற்றோம். இயக்க நேரத்தில், உரை கட்டுரைகளிலிருந்து பெறப்பட்ட பயனர் திசையன் மற்றும் வீடியோ திசையன் இடையேயான ஒற்றுமையை நாங்கள் கணக்கிடுகிறோம்.

முடிவுக்கு

நிகழ்நேர பரிந்துரை அமைப்பின் மையத்தை உருவாக்குவது ஏராளமான சவால்களை உள்ளடக்கியது. தரவை விரைவாக செயலாக்குவதும், அதை திறம்பட பயன்படுத்த இயந்திர கற்றல் முறைகளைப் பயன்படுத்துவதும் இதற்குத் தேவை; பயனர் சிக்னல்கள் மற்றும் புதிய உள்ளடக்க அலகுகளை குறைந்தபட்ச நேரத்தில் செயலாக்கக்கூடிய சிக்கலான பரவலாக்கப்பட்ட அமைப்புகளை உருவாக்குதல்; மற்றும் பல பணிகள்.

நான் விவரித்த தற்போதைய அமைப்பில், ஒரு பயனரின் செயல்பாடு மற்றும் பயன்பாட்டு கால அளவு ஆகியவற்றுடன் பரிந்துரைகளின் தரமும் அதிகரிக்கிறது. ஆனால், முக்கிய சவால் இதுதான்: உள்ளடக்கத்துடன் அதிகம் தொடர்பு கொள்ளாத ஒருவரின் நலன்களை அமைப்பு உடனடியாகப் புரிந்துகொள்வது கடினம். புதிய பயனர்களுக்கான பரிந்துரைகளை மேம்படுத்துவதே எங்கள் முக்கிய குறிக்கோள். தொடர்புடைய உள்ளடக்கம் பயனரின் ஊட்டத்தை விரைவாகச் சென்றடைவதையும், பொருத்தமற்ற உள்ளடக்கம் காட்டப்படாமல் இருப்பதையும் உறுதிசெய்ய, வழிமுறைகளை நாங்கள் தொடர்ந்து மேம்படுத்துவோம்.

ஆதாரம்: www.habr.com