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

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

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

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

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

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

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

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

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

வேட்பாளர் தேர்வுக்கான எங்கள் கொள்கை உருவாகியுள்ளது, தற்போது நாங்கள் பல கட்ட திட்டத்திற்கு வந்துள்ளோம்:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

விநியோகிக்கப்பட்ட கூட்டு வடிகட்டுதல்

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

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

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

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

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

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

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

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

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

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

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

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

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

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

முடிவுக்கு

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

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

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

கருத்தைச் சேர்