বড় ডেটাসেটের জন্য দক্ষ মাত্রিকতা হ্রাস


12

আমার কাছে M 1M সারি এবং ~ 500K স্পার্স বৈশিষ্ট্যযুক্ত একটি ডেটাসেট রয়েছে। আমি 1K-5K ঘন বৈশিষ্ট্যগুলির ক্রম অনুসারে মাত্রাটি কোথাও কমাতে চাই।

sklearn.decomposition.PCAবিরল ডেটাতে কাজ করে না, এবং আমি ব্যবহার করার চেষ্টা করেছি sklearn.decomposition.TruncatedSVDতবে খুব দ্রুত একটি স্মৃতি ত্রুটি পেয়েছি । এই স্কেলে দক্ষ মাত্রিকতা হ্রাসের জন্য আমার বিকল্পগুলি কী কী?

উত্তর:


11

আপনি ইউনিফর্ম ম্যানিফোল্ড আনুমানিকতা এবং প্রজেকশন (ইউএমএপি) শুনেছেন ?

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

উপকারিতা এবং বিপরীতে তালিকার জন্য তাদের কোড এবং মূল কাগজটি পরীক্ষা করুন , এটি ব্যবহার করা অত্যন্ত সহজ।

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

কংক্রিট উদাহরণ: আমি তাত্ক্ষণিকভাবে ঝাঁপ দাও এবং লাফ শুরু করতে আগ্রহী হলে আমি পদ্ধতিটি বেঞ্চমার্ক করেছি এবং কিছু অন্যান্য মাত্রিকতা হ্রাস কৌশল বেঞ্চমার্ক নোটবুকের সাথে তুলনা করেছি ।


2
(+1) - ইউএমএপ প্রকৃতপক্ষে দুর্দান্ত! আপনি কিছুটা সংস্কারের বিষয়টি বিবেচনা করতে পারেন: আপনার অনুচ্ছেদ মাঝখানে এবং ফলউইং বুলেট-পয়েন্ট একই তথ্যের পুনরাবৃত্তি করবে। এছাড়াও, আপনি এটিকে একটি কোট হিসাবে তৈরি করতে পারেন, কারণ এটি (কম-বেশি) তাদের ওয়েবসাইট থেকে অনুলিপি করা হয়েছে।
n1k31t4

2
অবশ্যই, আমি অবশ্যই এটি হ্রাস করতে পারি, আমি কেবল তাদের এখানে এখানে উল্লেখ করতে চেয়েছিলাম এবং কিছু পয়েন্টগুলি কিছুটা পুনঃব্যবহারযোগ্য। ধন্যবাদ। যাইহোক আমি ইউএমএপি পছন্দ করি।
টুইনপেনগুইন্স

1
সুপারিশের জন্য ধন্যবাদ! আমি ভিজুয়ালাইজেশনের জন্য এটি টি-এসএনইর বিকল্প হিসাবে জানতাম, তবে বুঝতে পারিনি এটি সাধারণ মাত্রা হ্রাসের পক্ষেও ভাল।
টিমলিথার্ট

1

এই পোস্টটি জুড়ে আসা লোকেরা যদি ইউএমএপি পর্যাপ্ত দক্ষ না হয় বলে মনে করে, তবে এখানে আরো কিছু দক্ষতা রয়েছে যা আমি আরও কার্যকর (তবে উচ্চমানের হিসাবে নয়):

  • র্যান্ডম প্রজেকশন: মূলত আকারের এলোমেলো ম্যাট্রিক্স তৈরি করুন × মি কোথায় মূল মাত্রা এবং মিহ'ল কাঙ্ক্ষিত মাত্রা এবং হ্রাস করা ডেটাসেট উত্পাদন করতে প্রজেকশন ম্যাট্রিক্সের সাথে ডেটা ম্যাট্রিক্সকে গুণ করুন ly sklearn.random_projectionএর কিছু বাস্তবায়ন আছে। যদি প্রজেকশন ম্যাট্রিক্সের আকার এবং বন্টন যথাযথ হয় তবে পয়েন্টগুলির মধ্যে জোড়াযুক্ত দূরত্বগুলি প্রায় অনুমানকৃত স্থানে সংরক্ষিত থাকে।

  • বৈশিষ্ট্য হ্যাশিং: বৈশিষ্ট্যের মানগুলির একটি হ্যাশ নিন, মডিউলাস নিনমি কোথায় মিকাঙ্ক্ষিত মাত্রা। হ্যাশ সংঘর্ষগুলির সাথে সংঘর্ষের মানগুলির যোগফল নিয়ে মোকাবেলা করা হয়। আপনি এটিকে বৈশিষ্ট্যগুলির ক্রমটি বদলানো, ডেটা ম্যাট্রিক্সকে উল্লম্ব টুকরোয়ের একটি সিরিজে বিভক্ত করা এবং এগুলি সমস্তকে একত্রে যুক্ত হিসাবে যুক্ত করতে পারেন। বিরল তথ্যের জন্য, সংঘর্ষগুলি খুব বিরল। sklearn.feature_extraction.FeatureHasherএমন একটি বাস্তবায়ন যা (আমি বিশ্বাস করি) কেবল স্ট্রিং ইনপুটগুলিতে কাজ করে; আমি মনে করি এটি সাধারণত ব্যাগ অফ শব্দের পাঠ্য শৈলীর ডেটার জন্য ব্যবহৃত হয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.