word2vec: নেতিবাচক নমুনা (সাধারণ শব্দে)?


91

আমি নীচের কাগজটি পড়ছি এবং নেতিবাচক নমুনার ধারণাটি বুঝতে আমার কিছুটা সমস্যা হচ্ছে।

http://arxiv.org/pdf/1402.3722v1.pdf

দয়া করে কেউ সাহায্য করতে পারেন?


4
সম্পর্কিত: stats.stackexchange.com
পিনোকিও

উত্তর:


166

ধারণাটি word2vecহ'ল ভেক্টরগুলির মধ্যে শব্দের জন্য মিলের (ডট পণ্য) সর্বাধিক করে তোলা যা পাঠ্যের সাথে একত্রে (একে অপরের প্রসঙ্গে) উপস্থিত হয় এবং শব্দের মিল খুঁজে পায় না যা না হয়। আপনি যে কাগজের সাথে লিঙ্ক করেছেন তার সমীকরণ (3) এ, ক্ষণিকের জন্য ক্ষণিকের জন্য উপেক্ষা করুন। তোমার আছে

      v_c * v_w
 -------------------
   sum(v_c1 * v_w)

অঙ্কটি মূলত শব্দ c(প্রসঙ্গ) এবং w(লক্ষ্য) শব্দের মধ্যে মিল রয়েছে the হর অন্য সব প্রেক্ষিতে এর সাদৃশ্য নির্ণয় c1এবং টার্গেট শব্দ w। এই অনুপাতকে সর্বাধিক করে তোলার মাধ্যমে শব্দগুলিকে টেক্সটটিতে আরও একত্রে উপস্থিত হওয়া নিশ্চিত হয় না যা শব্দের চেয়ে বেশি অনুরূপ ভেক্টর রয়েছে। তবে এটির কম্পিউটিং করা খুব ধীর হতে পারে কারণ অনেকগুলি প্রসঙ্গ রয়েছে c1। নেতিবাচক স্যাম্পলিং এই সমস্যাটির সমাধানের অন্যতম উপায় - c1এলোমেলোভাবে কেবল কয়েকটি প্রসঙ্গ নির্বাচন করুন। শেষ ফলাফল যে যদি catপ্রেক্ষাপটে প্রদর্শিত হয় food, তাহলে ভেক্টরের foodবেশি ভেক্টর অনুরূপ cat(তাদের ডট গুণফল দ্বারা পরিমাপ করে হিসাবে) এর ভেক্টর চেয়ে বেশ কয়েকটি এলোমেলোভাবে নির্বাচিত শব্দ(যেমন democracy, greed, Freddy), পরিবর্তে ভাষায় অন্যান্য সকল শব্দের। এটি word2vecপ্রশিক্ষণের জন্য আরও অনেক দ্রুত করে তোলে ।


15
ধন্যবাদ বা সুন্দর ব্যাখ্যা। আমি মনে করি এটি স্যাম্পলিং মাত্র। তবে কেন আপনি এটি "নেতিবাচক" বলেছেন কেন জানেন?
হ্যাপি কোডিং

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

40

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

এখানে চিত্র বর্ণনা লিখুন

কি করা যেতে পারে?

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

ওয়ার্ড 2vec এ ক্ষতির ফাংশনটি হ'ল:

এখানে চিত্র বর্ণনা লিখুন

কোন লোগারিদম এটিকে পচন করতে পারে:

এখানে চিত্র বর্ণনা লিখুন

কিছু গাণিতিক এবং গ্রেডিয়েন্ট সূত্র সহ ( 6 এ আরও বিশদ দেখুন ) এতে রূপান্তরিত হয়েছে:

এখানে চিত্র বর্ণনা লিখুন

আপনি দেখতে পেয়েছেন এটি বাইনারি শ্রেণিবদ্ধকরণ কার্যে রূপান্তরিত হয়েছে (y = 1 ধনাত্মক শ্রেণি, y = 0 নেতিবাচক শ্রেণি)। আমাদের বাইনারি শ্রেণিবদ্ধকরণ কার্য সম্পাদন করার জন্য আমাদের লেবেলগুলির প্রয়োজন হিসাবে, আমরা সমস্ত প্রসঙ্গ শব্দকে সি লেবেল (y = 1, ধনাত্মক নমুনা) হিসাবে মনোনীত করি এবং কর্পোরেশন থেকে এলোমেলোভাবে মিথ্যা লেবেল হিসাবে নির্বাচিত (y = 0, নেতিবাচক নমুনা) k


নিম্নলিখিত অনুচ্ছেদে দেখুন। ধরুন আমাদের টার্গেট শব্দটি হ'ল " ওয়ার্ড 2 ওয়েভ " 3 জানালা দিয়ে, আমাদের প্রসঙ্গ কথা বলেন: The, widely, popular, algorithm, was, developed। এই প্রসঙ্গে শব্দগুলি ইতিবাচক লেবেল হিসাবে বিবেচনা করে। আমাদের কিছু নেতিবাচক লেবেলও দরকার। আমরা এলোমেলোভাবে (কর্পাস থেকে কিছু শব্দ বাছাই produce, software, Collobert, margin-based,probabilistic ) এবং তাদের নেতিবাচক নমুনা হিসাবে বিবেচনা। এই কৌশলটি যা আমরা কর্পাস থেকে এলোমেলোভাবে উদাহরণ বেছে নিয়েছি তাকে নেতিবাচক নমুনা বলা হয়।

এখানে চিত্র বর্ণনা লিখুন

তথ্যসূত্র :


4
হাই @ আমির, আমার প্রাথমিক প্রশ্নটি হ'ল নেতিবাচক নমুনার ধারণাটি বুঝতে আমার কিছুটা সমস্যা হয়েছে ...
অ্যান্ডি কে

4
গ্রহণযোগ্য উত্তরের চেয়ে খুব ভালভাবে ব্যাখ্যা করা এবং কিছুটা প্রযুক্তিগত। সুতরাং একটি নিখুঁত এসও পরিস্থিতি: ধারণাটি পাওয়ার জন্য গৃহীত উত্তরটি পড়ুন এবং তারপরে এটি বিশদভাবে বুঝতে এই উত্তরটি।
উরসিন ব্রুনার

22

আমি এখানে নেতিবাচক নমুনা সম্পর্কে একটি টিউটোরিয়াল নিবন্ধ লিখেছিলাম ।

কেন আমরা নেতিবাচক নমুনা ব্যবহার করি? -> গণনা ব্যয় হ্রাস করতে

ভ্যানিলা স্কিপ-গ্রাম (এসজি) এবং স্কিপ-গ্রাম নেতিবাচক নমুনা (এসজিএনএস) এর ব্যয় ক্রিয়াকলাপটি এর মতো দেখায়:

এখানে চিত্র বর্ণনা লিখুন

নোটটি Tহ'ল সমস্ত ভোকাবের সংখ্যা। এটি সমান V। অন্য কথায়, T= V

এসজিতে সম্ভাব্যতা বিতরণটি কর্পাসের p(w_t+j|w_t)সমস্ত Vভোকাবের জন্য গণনা করা হয়:

এখানে চিত্র বর্ণনা লিখুন

Vস্কিপ-গ্রাম মডেলের প্রশিক্ষণ দেওয়ার সময় সহজেই হাজার হাজার ছাড়িয়ে যেতে পারে। সম্ভাবনাটি Vগণনার বার করা দরকার, এটি গণনাগতভাবে ব্যয়বহুল করে তোলে। তদ্ব্যতীত, ডিনোমিনেটরে স্বাভাবিককরণের ফ্যাক্টরের অতিরিক্ত Vগণনা প্রয়োজন ।

অন্যদিকে, এসজিএনএসে সম্ভাব্যতা বন্টন এর সাথে গণনা করা হয়:

এখানে চিত্র বর্ণনা লিখুন

c_posধনাত্মক শব্দের জন্য একটি শব্দ ভেক্টর, এবং আউটপুট ওজন ম্যাট্রিক্সের W_negসমস্ত Kনেতিবাচক নমুনাগুলির জন্য শব্দ ভেক্টর । এসজিএনএসের সাথে, সম্ভাবনাটি কেবল K + 1কয়েকবার গণনা করা দরকার , যেখানেK সাধারণত 5 ~ 20 এর মধ্যে থাকে, তদ্ব্যতীত, ডিনোমিনেটরে সাধারণকরণ ফ্যাক্টর গণনা করার জন্য কোনও অতিরিক্ত পুনরাবৃত্তি প্রয়োজন হয় না।

এসজিএনএসের সাথে প্রতিটি প্রশিক্ষণের নমুনার জন্য কেবলমাত্র ওজনের একটি ভগ্নাংশ আপডেট করা হয়, যেখানে এসজি প্রতিটি প্রশিক্ষণের নমুনার জন্য সমস্ত মিলিয়ন ওজন আপডেট করে।

এখানে চিত্র বর্ণনা লিখুন

কীভাবে এসজিএনএস এটি অর্জন করবে?-> বহু-শ্রেণিবদ্ধকরণ কার্যকে বাইনারি শ্রেণিবদ্ধকরণ কার্যে রূপান্তর করে।

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

এখানে চিত্র বর্ণনা লিখুন

বাস্তব জীবনে, আপনি সাধারণত regressionএলোমেলো শব্দের মতো Gangnam-Styleবা এলোমেলো শব্দ ব্যবহার করে না pimples। ধারণাটি হ'ল যদি মডেলটি সম্ভাব্য (পজিটিভ) জোড়া বনাম সম্ভাব্য (নেতিবাচক) জোড়াগুলির মধ্যে পার্থক্য করতে পারে তবে ভাল শব্দ ভেক্টর শিখতে হবে।

এখানে চিত্র বর্ণনা লিখুন

উপরের চিত্রটিতে, বর্তমান ধনাত্মক শব্দ-প্রসঙ্গের জুটি ( drilling, engineer)। K=5নেতিবাচক নমুনা আছে এলোমেলোভাবে টানা থেকে গোলমাল বন্টন : minimized, primary, concerns, led, page। প্রশিক্ষণ নমুনাগুলির মাধ্যমে মডেলটি পুনরাবৃত্তি হওয়ার সাথে সাথে ওজনগুলি অনুকূলিত হয় যাতে ইতিবাচক জোড়ার p(D=1|w,c_pos)≈1সম্ভাবনা আউটপুট হয়ে যায় এবং নেতিবাচক জোড়গুলির সম্ভাবনা আউটপুট হয়ে যায় p(D=1|w,c_neg)≈0


4
টি টোকেন সংখ্যার জন্য (একটি পাঠ্যে শব্দের উপস্থিতি)। ভোকাবুলারি (অনন্য শব্দের) জন্য আমি বলব V
অ্যাডাম 20

আমরা সেট করেন তাহলে Kযেমন V -1, তারপর নেতিবাচক স্যাম্পলিং যেমন ভ্যানিলা লাফালাফি-গ্রাম মডেল একই। আমার বোধগম্যতা কি সঠিক?
শাশ্বত

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