দক্ষ গ্রাফ ক্লাস্টারিং অ্যালগরিদম


20

আমি একটি বড় গ্রাফে ক্লাস্টারগুলি খুঁজে পেতে একটি দক্ষ অ্যালগরিদম খুঁজছি (এটিতে প্রায় 5000 টি শীর্ষ এবং 10000 প্রান্ত রয়েছে)।

এখনও অবধি আমি JUNG জাভা লাইব্রেরিতে প্রয়োগ করা গিরওয়ান – নিউম্যান অ্যালগরিদম ব্যবহার করছি তবে যখন আমি অনেকগুলি প্রান্ত সরিয়ে দেওয়ার চেষ্টা করি তখন এটি বেশ ধীর হয়।

আপনি কি আমাকে বড় গ্রাফের জন্য আরও ভাল বিকল্প প্রস্তাব করতে পারেন?


আপনি কে-মানে দেখেছেন?
ওদে

আপনি কি দয়া করে গ্রাফে এটি কীভাবে ব্যবহার করবেন সে সম্পর্কে জানতে আমাকে কিছু রেফারেন্স দিতে পারেন?
mariosangiorgio


আমি ভোল্টেজক্লাস্টার এর JUNG প্রয়োগে স্যুইচ করেছি এবং এটি অবশ্যই দ্রুত fast jung.sourceforge.net/doc/api/edu/uci/ics/jung/algorithms/…
mariosangiorgio

1
এটি কি সফটওয়্যার ইঞ্জিনিয়ারের চেয়ে কম্পিউটার বিজ্ঞানের বিষয়ে বেশি বলে < সিএস.স্ট্যাকেক্সেঞ্জ.কম > এর জন্য বেশি বরাদ্দ নয়?
Oeufcoque Penteano

উত্তর:


13

আমি ব্যক্তিগতভাবে মার্কভ ক্লাস্টারিংয়ের পরামর্শ দিই । এর আগে আমি বেশ কয়েকবার ভাল ফলাফল দিয়ে ব্যবহার করেছি।

বন্ধুত্বের প্রচার আরও একটি কার্যকর বিকল্প, তবে এটি মার্কভ ক্লাস্টারিংয়ের চেয়ে কম সামঞ্জস্যপূর্ণ বলে মনে হয়।

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

পারফরম্যান্সের মানদণ্ডগুলি খুঁজতে গিয়ে আমি এই কাগজটি পেয়েছি , এটি বিষয়টির একটি ভাল সমীক্ষা।


ধন্যবাদ, আমি আপনাকে প্রস্তাবিত সমস্ত অ্যালগোরিদমগুলিতে এক নজর দেব।
mariosangiorgio

সংশোধন: এই অ্যালগরিদমগুলিকে ইনপুট ওজন হিসাবে প্রয়োজন যা দূরত্ব নয়, একইরকম প্রতিফলন করে। মেট্রিক সম্পত্তি (ত্রিভুজ বৈষম্য) এর মধ্যে আসে না। ওজন রূপান্তর করতে এটি কার্যকর হতে পারে যাতে তারা প্রাকৃতিক পরিসরে পড়ে, যেমন (পিয়ারসন) পারস্পরিক সম্পর্কের জন্য এখানে বর্ণিত ( micans.org/mcl/man/clmprotocols.html#array ), এবং এখানে বর্ণিত ব্লাস্ট ই-মানগুলির জন্য ( micans.org/mcl/man/clmprotocols.html#blast )।
মিকানস

10

হায়ারার্কিকাল ক্লাস্টারিং

এটি আমার এক বন্ধু দ্বারা প্রস্তাবিত হয়েছিল। উইকিপিডিয়া অনুসারে :

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

মার্কভ ক্লাস্টার

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


5

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


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