পুনঃসূচনা তথ্যের উপর ভিত্তি করে কাজের শ্রেণিবদ্ধকরণ করতে আমার কোন অ্যালগরিদম ব্যবহার করা উচিত?


28

দ্রষ্টব্য যে আমি আর-তে সবকিছু করছি

সমস্যা অনুসরণ হিসাবে:

মূলত, আমার কাছে পুনঃসূচনাগুলির একটি তালিকা রয়েছে (সিভি)। কিছু প্রার্থীর আগে কাজের অভিজ্ঞতা থাকবে এবং কিছু না থাকুক। এখানে লক্ষ্যটি হ'ল: তাদের সিভিগুলির পাঠ্যের উপর ভিত্তি করে, আমি তাদের বিভিন্ন কাজের ক্ষেত্রে শ্রেণিবদ্ধ করতে চাই। আমি সেই ক্ষেত্রে বিশেষভাবে রয়েছি, যেখানে প্রার্থীদের কোনও অভিজ্ঞতা নেই / একজন শিক্ষার্থী এবং আমি প্রার্থী কোন চাকরি সেক্টর স্নাতক হওয়ার পরে সম্ভবত শ্রেণিবদ্ধ করার জন্য একটি ভবিষ্যদ্বাণী করতে চাই।

প্রশ্ন 1: আমি মেশিন লার্নিং অ্যালগরিদম জানি। তবে এর আগে আমি কখনও এনএলপি করিনি। আমি ইন্টারনেটে লেটেন্ট ডিরিচলেট বরাদ্দ পেয়েছি। তবে, আমি নিশ্চিত নই যে আমার সমস্যা সমাধানের জন্য এটিই সেরা পন্থা।

আমার আসল ধারণা: এটিকে তদারকি শিক্ষার সমস্যা করুন । ধরুন আমাদের কাছে ইতিমধ্যে প্রচুর পরিমাণে লেবেলযুক্ত ডেটা রয়েছে যার অর্থ আমরা প্রার্থীদের তালিকার জন্য কাজের ক্ষেত্রগুলি সঠিকভাবে লেবেল করেছি। আমরা এমএল অ্যালগরিদম (অর্থাৎ নিকটতম প্রতিবেশী ...) ব্যবহার করে মডেলটিকে প্রশিক্ষণ দিই এবং সেই অবিহিত ডেটাগুলিতে ফিড করি, যাঁরা কোনও কাজের অভিজ্ঞতা / প্রার্থী না এমন প্রার্থী, এবং তারা কোন চাকরি সেক্টরের অন্তর্ভুক্ত হবে তা ভবিষ্যদ্বাণী করার চেষ্টা করি।

আপডেট প্রশ্ন 2: আপনি কি পুনরায় শুরুতে সমস্ত কিছু বের করে একটি টেক্সট ফাইল তৈরি করে পাঠ্য ফাইলে এই তথ্যগুলি মুদ্রণ করা ভাল, যাতে প্রতিটি জীবনবৃত্তান্ত একটি পাঠ্য ফাইলের সাথে যুক্ত থাকে, যাতে কাঠামোগত স্ট্রিং থাকে এবং তারপরে আমরা পাঠ্য ফাইলগুলিতে পাঠ্য খননের কৌশল প্রয়োগ করে এবং ডেটাটি কাঠামোগত হয়ে যায় বা এমনকি পাঠ্য ফাইলগুলির বাইরে ব্যবহৃত পদগুলির একটি ফ্রিকোয়েন্সি ম্যাট্রিক্স তৈরি করতে পারে? উদাহরণস্বরূপ, পাঠ্য ফাইলটি এর মতো দেখতে পারে:

I deployed ML algorithm in this project and... Skills: Java, Python, c++ ...

এটিই আমি 'আনস্ট্রাকচার্ড' দ্বারা বোঝাতে চেয়েছিলাম, অর্থাত একক লাইনের স্ট্রিংয়ে সবকিছুকে সংকুচিত করে।

এই পদ্ধতির ভুল? আপনি যদি আমার ধারণা ভুল বলে মনে করেন তবে আমাকে সংশোধন করুন।

প্রশ্ন 3: কৌতুকপূর্ণ অংশটি: কীওয়ার্ডগুলি সনাক্ত এবং নিষ্ক্রিয় করবেন ? tmআর-তে প্যাকেজটি ব্যবহার করছেন ? tm প্যাকেজ ভিত্তিক কি অ্যালগরিদম হয় ? আমার কি এনএলপি অ্যালগরিদম ব্যবহার করা উচিত? যদি হ্যাঁ, তবে আমার কী অ্যালগরিদমগুলি উচিত? পাশাপাশি দেখার জন্য দয়া করে আমাকে কয়েকটি ভাল সংস্থার দিকে নির্দেশ করুন।

যেকোনো পরামর্শই বেশ কাজে দেবে.

উত্তর:


14

পরীক্ষা করে দেখুন এই লিঙ্কে ক্লিক করুন।

এখানে, তারা আপনাকে ওয়ার্ডক্লাউড তৈরির উদ্দেশ্যে অরক্ষিত পাঠ্য লোড করার মাধ্যমে নিয়ে যাবে। আপনি এই কৌশলটি মানিয়ে নিতে পারেন এবং ওয়ার্ডক্লাউড তৈরি করার পরিবর্তে, আপনি ব্যবহৃত পদগুলির একটি ফ্রিকোয়েন্সি ম্যাট্রিক্স তৈরি করতে পারেন। ধারণাটি হ'ল আনস্ট্রাক্ট্রাক্ট টেক্সট নেওয়া এবং এটি কোনওভাবে গঠন করা। আপনি ডকুমেন্ট টার্ম ম্যাট্রিকেসের মাধ্যমে সমস্ত কিছু ছোট হাতের অক্ষরে (বা বড় হাতের অক্ষরে) পরিবর্তন করুন, স্টপ শব্দগুলি মুছে ফেলুন এবং প্রতিটি কাজের জন্য ঘন ঘন শর্তগুলি খুঁজে পান। আপনার কাছে শব্দগুলি কান্ড করার বিকল্পও রয়েছে। যদি আপনি শব্দগুলি স্টেম করেন তবে আপনি একই শব্দ হিসাবে শব্দের বিভিন্ন রূপ সনাক্ত করতে সক্ষম হবেন। উদাহরণস্বরূপ, 'প্রোগ্রামড' এবং 'প্রোগ্রামিং' কে 'প্রোগ্রাম' তে পরিণত করা যেতে পারে। আপনি সম্ভবত আপনার এমএল মডেল প্রশিক্ষণে ওজনযুক্ত বৈশিষ্ট্য হিসাবে এই ঘন ঘন শর্তগুলির সংঘটন যোগ করতে পারেন।

আপনি প্রতিটি কাজের জন্য 2-3- words শব্দের সাধারণ দল খুঁজে বারবার বাক্যাংশগুলিতে এটিকে মানিয়ে নিতে পারেন।

উদাহরণ:

1) লাইব্রেরিগুলি লোড করুন এবং উদাহরণ ডেটা তৈরি করুন

library(tm)
library(SnowballC)

doc1 = "I am highly skilled in Java Programming.  I have spent 5 years developing bug-tracking systems and creating data managing system applications in C."
job1 = "Software Engineer"
doc2 = "Tested new software releases for major program enhancements.  Designed and executed test procedures and worked with relational databases.  I helped organize and lead meetings and work independently and in a group setting."
job2 = "Quality Assurance"
doc3 = "Developed large and complex web applications for client service center. Lead projects for upcoming releases and interact with consumers.  Perform database design and debugging of current releases."
job3 = "Software Engineer"
jobInfo = data.frame("text" = c(doc1,doc2,doc3),
                     "job" = c(job1,job2,job3))

2) এখন আমরা কিছু পাঠ্য কাঠামো করি। নিম্নলিখিতগুলি করার জন্য আমি আরও দ্রুত / খাটো পদ্ধতিতে ইতিবাচক।

# Convert to lowercase
jobInfo$text = sapply(jobInfo$text,tolower)

# Remove Punctuation
jobInfo$text = sapply(jobInfo$text,function(x) gsub("[[:punct:]]"," ",x))

# Remove extra white space
jobInfo$text = sapply(jobInfo$text,function(x) gsub("[ ]+"," ",x))

# Remove stop words
jobInfo$text = sapply(jobInfo$text, function(x){
  paste(setdiff(strsplit(x," ")[[1]],stopwords()),collapse=" ")
})

# Stem words (Also try without stemming?)
jobInfo$text = sapply(jobInfo$text, function(x)  {
  paste(setdiff(wordStem(strsplit(x," ")[[1]]),""),collapse=" ")
})

3) একটি কর্পাস উত্স এবং নথি টার্ম ম্যাট্রিক্স করুন।

# Create Corpus Source
jobCorpus = Corpus(VectorSource(jobInfo$text))

# Create Document Term Matrix
jobDTM = DocumentTermMatrix(jobCorpus)

# Create Term Frequency Matrix
jobFreq = as.matrix(jobDTM)

এখন আমাদের কাছে ফ্রিকোয়েন্সি ম্যাট্রিক্স, জবফেরিক, এটি একটি (3 বাই এক্স) ম্যাট্রিক্স, 3 টি এন্ট্রি এবং শব্দের এক্স সংখ্যা।

আপনি এখান থেকে কোথায় যাবেন তা আপনার উপর নির্ভর করে। আপনি কেবলমাত্র নির্দিষ্ট (আরও সাধারণ) শব্দ রাখতে পারেন এবং এগুলিকে আপনার মডেলের বৈশিষ্ট্য হিসাবে ব্যবহার করতে পারেন। আরেকটি উপায় হ'ল এটি সহজ রাখা এবং প্রতিটি কাজের বিবরণে শতকরা কিছু শব্দ ব্যবহৃত হয়েছে, বলুন "জাভা" এর মধ্যে 'সফটওয়্যার ইঞ্জিনিয়ার' এর ৮০% এবং 'মানের নিশ্চয়তা'তে কেবল ৫০% ঘটনা ঘটবে।

এখন 'আশ্বাসে' কেন 1 'আর' রয়েছে এবং 'ঘটনা' এর 2 'আর কেন আছে তা খতিয়ে দেখার সময়।


আমি আপনার উদাহরণ দেখতে চাই।
ব্যবহারকারী 1769197

দ্রুত উদাহরণ সহ আপডেট করা হয়েছে।
nfmcclure

11

কেবল কীওয়ার্ডগুলি বের করুন এবং তাদের উপর একটি শ্রেণিবদ্ধ প্রশিক্ষণ দিন । সত্যিই, সব।

সিভি-র বেশিরভাগ পাঠ্য আসলে দক্ষতার সাথে সম্পর্কিত নয়। উদাহরণস্বরূপ "আমি জাভাতে অভিজ্ঞ এবং অত্যন্ত দক্ষ" বাক্যটিকে বিবেচনা করুন। এখানে 7 টির মধ্যে 1 টিরই একটি দক্ষতার নাম, বাকীটি কেবলমাত্র একটি শব্দ যা আপনার শ্রেণিবদ্ধকরণের নির্ভুলতাটিকে নীচে নামিয়ে আনছে।

বেশিরভাগ সিভি সত্যই কাঠামোগত নয়। বা খুব অবাধে কাঠামোযুক্ত। অথবা বিভাগগুলির জন্য অস্বাভাবিক নাম ব্যবহার করুন। বা ফাইল ফর্ম্যাটগুলি যা পাঠ্যে অনুবাদ করার সময় কাঠামো সংরক্ষণ করে না। আমার কাছে তারিখ, সময়, নাম, ঠিকানা এবং এমনকি লোকেরা অরক্ষিত পাঠ্য থেকে অভিপ্রায় আনার অভিজ্ঞতা আছে তবে দক্ষতা (বা বিশ্ববিদ্যালয় বা কোনও কিছু) তালিকা নয়, এমনকি খুব কাছ থেকেও নয়।

সুতরাং আপনার সিভিগুলিকে টোকানাইজ করুন (এবং সম্ভবত স্টেম ), পূর্বনির্ধারিত তালিকা থেকে কেবলমাত্র শব্দগুলি বেছে নিন (আপনি লিংকডইন বা এই তালিকাটি ধরতে অনুরূপ কিছু ব্যবহার করতে পারেন), একটি বৈশিষ্ট্য ভেক্টর তৈরি করুন এবং কয়েকটি শ্রেণিবদ্ধ চেষ্টা করুন (বলুন, এসভিএম এবং নাইভ বেইস) ।

(দ্রষ্টব্য: আমি লিঙ্কডইন প্রোফাইলগুলিকে যথাযথ> 90% এর সাথে 50 টিরও বেশি শ্রেণিতে শ্রেণিবদ্ধ করার জন্য অনুরূপ পন্থা ব্যবহার করেছি, তাই আমি নিশ্চিত যে এমনকি নিষ্পাপ বাস্তবায়নও কার্যকরভাবে কাজ করবে pretty)


বলুন যে আমি লিংকডিন ডেটা বিশ্লেষণ করছি, আপনি কি মনে করেন যে আমার জন্য পূর্ববর্তী কাজের অভিজ্ঞতা, শিক্ষার প্রস্তাবনা এবং একটি প্রোফাইলের দক্ষতাগুলিকে একটি পাঠ্য ফাইলে মার্জ করা এবং এর থেকে কীওয়ার্ডগুলি বের করা আমার পক্ষে ভাল ধারণা হবে?
ব্যবহারকারী 1769197

লিঙ্কডইনটিতে এখন এমন দক্ষতা ট্যাগ রয়েছে যা লোকেরা নিজেরাই নির্ধারণ করে এবং অন্যান্য ব্যবহারকারীরা এন্ডোর্স করতে পারে, সুতরাং মূলত ম্যানুয়ালি কীওয়ার্ডগুলি বের করার দরকার নেই। তবে কম কাঠামোগত ডেটার ক্ষেত্রে - হ্যাঁ, এটি সবকিছুকে মার্জ করতে এবং তারপরে কীওয়ার্ডগুলি পুনরুদ্ধার করতে সহায়ক হতে পারে। তবে, প্রধান নিয়ম মনে রাখবেন: চেষ্টা করে দেখুন । থিওরি ভাল, তবে বিভিন্ন পদ্ধতির সাথে কেবল ব্যবহারিক পরীক্ষাগুলিই সেরাটিকে প্রকাশ করবে।
বন্ধু

@ বন্ধু, আমরা কীওয়ার্ডের তালিকাটি কীভাবে পাব?
এনজি_2১

1
@ফ্রেন্ড নীচের বাক্য থেকে "অভিজ্ঞতা" = '5 বছর', "ভাষা" = 'সি' উত্তোলনের সর্বোত্তম উপায় কী। "আমি বাগে ট্র্যাকিং সিস্টেম তৈরি করতে এবং সি তে ডেটা ম্যানেজিং সিস্টেম অ্যাপ্লিকেশন তৈরি করতে 5 বছর ব্যয় করেছি"। আমি রেকে এনএলটিকে দিয়ে ব্যবহার করেছি এবং এটি কেবল স্টপওয়ার্ড + বিরামচিহ্নগুলি সরিয়ে ফেলেছে, তবে উপরের বাক্য থেকে আমার বিকাশ, বাগ-ট্র্যাকিং, সিস্টেম, তৈরি, ডেটা ইত্যাদির মতো শব্দের দরকার নেই ধন্যবাদ
খালিদ উসমান

3
@ খালিদউসমান: যেহেতু আপনি ইতিমধ্যে এনএলটিএল এর সাথে কাজ করছেন, নামকরণকৃত সত্তা স্বীকৃতি সরঞ্জামগুলি , বিশেষত "নিয়মিত অভিব্যক্তি সহ চুনকিং " বিভাগটি একবার দেখুন। সাধারণভাবে, আপনি নামকৃত সত্ত্বাগুলি নিষ্কাশনের জন্য কীওয়ার্ডের অভিধান (উদাহরণস্বরূপ "বছর", "সি", ইত্যাদি) এবং নিয়মের সহজ সেট (যেমন "" সি "" বা "<সংখ্যার বছর" রয়েছে) ব্যবহার করতে চান একটি ফ্রি-ফর্ম পাঠ্য বাইরে।
বন্ধু

7

এটি একটি জটিল সমস্যা। এটি পরিচালনা করার বিভিন্ন উপায় রয়েছে। আমার ধারণা, পুনরারম্ভগুলি আধা-কাঠামোযুক্ত নথি হিসাবে বিবেচনা করা যেতে পারে। কখনও কখনও, নথিতে কিছু ন্যূনতম কাঠামো থাকা উপকারী। আমি বিশ্বাস করি, জীবনবৃত্তান্তে আপনি কিছু সারণী ডেটা দেখতে পাবেন। আপনি এগুলি অ্যাট্রিবিউট মান জোড় হিসাবে বিবেচনা করতে চাইতে পারেন। উদাহরণস্বরূপ, আপনি "দক্ষতা সেট" বৈশিষ্ট্যের জন্য পদগুলির একটি তালিকা পাবেন।

মূল ধারণাটি হ'ল "দক্ষতা", "শিক্ষা", "প্রকাশনার" ইত্যাদির মতো মূল বাক্যাংশগুলির একটি তালিকা ম্যানুয়ালি কনফিগার করা পরবর্তী পদক্ষেপটি মূল উপায়গুলির সাথে সম্পর্কিত শর্তাদি বের করা যা হয় কোনওভাবে কাঠামোকে কাজে লাগিয়ে (যেমন: টেবিল হিসাবে) বা এই মূল বাক্যাংশগুলির চারপাশে পদগুলির সান্নিধ্য ব্যবহার করে, উদাহরণস্বরূপ যে "জাভা" শব্দটি "দক্ষতা" শব্দের নিকটবর্তী হয় এটি সম্ভবত ইঙ্গিত দেয় যে ব্যক্তি জাভাতে দক্ষ is

আপনি এই তথ্যগুলি বের করার পরে, পরবর্তী পদক্ষেপটি এই প্রতিটি মূল বাক্যাংশের জন্য একটি বৈশিষ্ট্য ভেক্টর তৈরি করা হতে পারে। তারপরে আপনি বিভিন্ন ক্ষেত্র (একটি মূল বাক্যাংশের জন্য একটি করে) সহ ভেক্টর হিসাবে একটি দস্তাবেজকে উপস্থাপন করতে পারেন। উদাহরণস্বরূপ, প্রকল্প এবং শিক্ষা নামে দুটি ক্ষেত্রের সাথে প্রতিনিধিত্ব করা নিম্নলিখিত দুটি পুনরায় শুরুগুলি বিবেচনা করুন ।

ডক 1: {প্রকল্প: (জাভা, 3) (সি, 4)}, {শিক্ষা: (কম্পিউটার, 2), (পদার্থবিজ্ঞান, 1)}

ডক 2: {প্রকল্প: (জাভা, 3) (অজগর, 2)}, {শিক্ষা: (গণিত, 3), (কম্পিউটার, 2)}

উপরের উদাহরণে, আমি ফ্রিকোয়েন্সি সহ একটি শব্দ প্রদর্শন করি। অবশ্যই, শর্তাদি বের করার সময় আপনার স্টেম-শব্দগুলি স্টেম এবং মুছে ফেলা দরকার। উদাহরণগুলি থেকে এটি স্পষ্ট যে, যার জীবনবৃত্তান্ত ডক 1, সে ডি 2 এর চেয়ে সিতে বেশি দক্ষ। বাস্তবায়ন অনুসারে, লুসিনে ফিল্ড ভেক্টর হিসাবে নথিগুলি উপস্থাপন করা খুব সহজ।

এখন, পরবর্তী পদক্ষেপটি একটি কাজের স্পেসিফিকেশন প্রদেয় পুনঃসূচনাগুলির তালিকাভুক্ত তালিকা পুনরুদ্ধার করা। প্রকৃতপক্ষে, যদি আপনি ক্ষেত্রের ভেক্টর হিসাবে কোয়েরিগুলি (কাজের চশমা) উপস্থাপন করেন তবে এটি মোটামুটি সোজা এগিয়ে। আপনাকে কেবল তালিকাভুক্ত পুনরারম্ভের সংগ্রহ থেকে লুসিন ব্যবহার করে প্রার্থীদের তালিকাভুক্ত তালিকা (পুনঃসূচনা) পুনরুদ্ধার করতে হবে।


অ্যালগরিদম অনুযায়ী: আপনি কি সুপারিশ করবেন?
ব্যবহারকারী 1769197

আপনি কি কোয়েরি কাজের ভেক্টর প্রদত্ত সর্বাধিক অনুরূপ পুনঃসূচনা ভেক্টর গণনার জন্য অ্যালগরিদম বলতে চান? আপনি এই ধরনের BM25 বা শুধুমাত্র মডেল ... কোন মান অ্যালগরিদম ব্যবহার করতে পারেন
দেবাশিস

আমি এই অ্যালগরিদমগুলি মোটেও শুনিনি। এগুলি কি এনএলপি অ্যালগরিদম বা এমএল আলগো?
ব্যবহারকারী 1769197

এগুলি হ'ল মানক পুনরুদ্ধার মডেল ... একটি পুনরুদ্ধার মডেল সংজ্ঞা দেয় যে কীভাবে কোনও দস্তাবেজের (আপনার ক্ষেত্রে পুনরায় শুরু) এবং একটি প্রশ্নের (আপনার ক্ষেত্রে কাজ) মধ্যে সাদৃশ্য গণনা করা যায়।
দেবাসিস

তথ্য পুনরুদ্ধার সম্পর্কে আমার কোন জ্ঞান নেই, আপনি কি ভাবেন যে ক্লাস্টারিং / নিকটতম প্রতিবেশী যেমন মেশিন লার্নিং অ্যালগরিদমগুলিও আমার ক্ষেত্রে কাজ করবে?
ব্যবহারকারী 1769197

7

আমি একটি অনলাইন জব সাইটের জন্য কাজ করি এবং আমরা জীবনবৃত্তান্তের উপর ভিত্তি করে কাজের প্রস্তাব দেওয়ার সমাধান তৈরি করি। আমাদের পদ্ধতির কোনও ব্যক্তির কাজের শিরোনাম (বা যদি শিক্ষার্থী এবং পরিচিত হিসাবে কাঙ্ক্ষিত কাজের শিরোনাম) গ্রহণ করা হয়, সেই দক্ষতার পাশাপাশি আমরা তাদের জীবনবৃত্তান্ত থেকে বের করি এবং তাদের অবস্থান (যা বেশিরভাগ মানুষের কাছে অত্যন্ত গুরুত্বপূর্ণ) এবং এর ভিত্তিতে কাজের সাথে ম্যাচগুলি খুঁজে পাই।

নথির শ্রেণিবিন্যাসের ক্ষেত্রে, আমি একই ধরণের পদ্ধতি গ্রহণ করব take আমি প্রতিটি রেজ্যুমের জন্য শব্দের মডেলের একটি স্ট্যান্ডার্ড ব্যাগ হিসাবে একটি টিএফ আইডিএফ ম্যাট্রিক্স গণনা করার পরামর্শ দেব, কেবলমাত্র ব্যক্তির কাজের শিরোনাম এবং দক্ষতা (যার জন্য আপনাকে দক্ষতার একটি তালিকা নির্ধারণ করতে হবে) এবং এটি এমএলে ফিড করুন অ্যালগরিদম। আমি নিট চেষ্টা করার সুপারিশ করব এবং একটি এসভিএম, আধুনিকটি উচ্চ মাত্রিক পাঠ্য ডেটার সাথে খুব ভালভাবে কাজ করে। লিনিয়ার এসভিএম এর অ-লিনিয়ার (যেমন আরবিএফ কার্নেল ব্যবহার করে) এর চেয়ে ভাল করার ঝোঁক। যদি আপনার যদি আউটপুটটিং যুক্তিসঙ্গত ফলাফল থাকে তবে আমি তখন একটি প্রাকৃতিক ভাষা পার্সার-চুনকার ব্যবহার করে এবং কিছুগুলি কাস্টম বিল্ট বাক্যাংশ ব্যবহার করে যা রেজেক্সের সাথে মিলে।


আপনার 3 বা ততোধিক ক্লাস থাকা অবস্থায় আপনি কি এখনও এসভিএম ব্যবহার করেন? এবং প্রাকৃতিক ভাষার পার্সার ব্যবহার করে আপনি কোন বৈশিষ্ট্যগুলি বের করতে চান? কোন উদ্দেশ্যে ?
ব্যবহারকারী 1769197

আপনি বনাম একটি কৌশল ব্যবহার করে এন ক্লাসের জন্য এন এস এম এর প্রশিক্ষণ দিতে পারেন। এটি স্বয়ংক্রিয়ভাবে করার জন্য সাইকিটলিয়ারের কোড রয়েছে। প্রযুক্তিগতভাবে আপনার এন -1 শ্রেণিবদ্ধ প্রয়োজন, তবে আমি এন আরও ভাল কাজ করে দেখেছি।
সাইমন

@ সিমন আপনি কি এই সুপারিশ সিস্টেমের জন্য সম্পূর্ণ পদক্ষেপগুলি লিখতে পারেন? এমএল তে আমার খুব কম অভিজ্ঞতা আছে (এমএস থিসিস প্রয়োগ করুন), তবে আইআর ক্ষেত্রে সম্পূর্ণ নতুন। এখন আমি এই সিস্টেমে কাজ করছি এবং আমি নিম্নলিখিত পদক্ষেপগুলি লিখেছি। ১. কীওয়ার্ড নিষ্কাশনের জন্য এনএলটিকে ব্যবহার করুন, ২. কীওয়ার্ড এবং বাক্যাংশগুলির জন্য স্কোর গণনা করুন, ৩. স্টেমার, ৪. শ্রেণিবদ্ধকরণ (সবচেয়ে চ্যালেঞ্জিং টাস্ক) এবং ৫. ফ্রিকোয়েন্সি ম্যাট্রিক্স, টিএফ-আইডিএফ বা বিএম 25 এলোগো। আমি কি বাস্তবায়নের সঠিক পথে আছি? ধন্যবাদ
খালিদ উসমান

@ খালিদউসমান এটি কীভাবে কাজ করে আমি আপনাকে ঠিক তা বলতে পারি না, এটি আমাকে সমস্যায় ফেলতে পারে। সবচেয়ে সহজ সমাধান হ'ল সোলার বা ইলাস্টিক অনুসন্ধানে ডেটা স্থাপন করা এবং তাদের এমএলটি সুপারিশকারী প্রয়োগগুলি ব্যবহার করা। আরও পরিশীলিত পদ্ধতির মধ্যে কী শব্দ এবং বাক্যাংশগুলি বের করা, এলএসএর মাধ্যমে ডক্সকে ঠেলে দেওয়া এবং ফলস্বরূপ ভেক্টরগুলিতে কে-এনএন করা। তারপরে আপনি অন্যান্য সংকেত যেমন সহযোগী ফিল্টারিং এবং সামগ্রিক জনপ্রিয়তা ব্যবহার করতে ইচ্ছুক হতে পারেন।
সাইমন 19

@ সিমন, আপনার গাইডেন্সের জন্য ধন্যবাদ। আমি ২ য় পদ্ধতিতে প্রয়োগ করছি, আমি RAKE + NLTK ব্যবহার করে কীওয়ার্ড / কীফ্রেসগুলি বের করেছি এবং তার পরে আমি টিএফ-আইডিএফ বা বিএম 25 প্রয়োগ করার পরিকল্পনা করছিলাম। আমি কি সঠিক? আপনি কি দয়া করে কেএনএনকে কিছুটা বিশদভাবে ব্যাখ্যা করতে পারেন, কীওয়ার্ডগুলিতে কীভাবে নিট প্রয়োগ করা যায়, আমি কীওয়ার্ডগুলি বৈশিষ্ট্য হিসাবে তৈরি করব? ধন্যবাদ
খালিদ উসমান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.