আর এর সাথে গোলমাল (ডিবিএসসিএএন) ক্লাস্টারিং সহ অ্যাপ্লিকেশনগুলির ঘনত্ব ভিত্তিক স্থানিক ক্লাস্টারিং


9

এই প্রশ্নটি " আরে ক্লাস্টারিং স্পেসিয়াল ডেটা " হিসাবে শুরু হয়েছিল এবং এখন ডিবিএসসিএন প্রশ্নে চলে গেছে।

প্রথম প্রশ্নের প্রতিক্রিয়াগুলির পরামর্শ হিসাবে আমি ডিবিএসসিএএন সম্পর্কিত তথ্য অনুসন্ধান করেছি এবং সে সম্পর্কে কয়েকটি ডকস পড়েছি। নতুন প্রশ্ন উঠেছে।

ডিবিএসসিএএন এর জন্য কিছু পরামিতি প্রয়োজন, তার মধ্যে একটি "দূরত্ব"। যেহেতু আমার ডেটা তিনটি মাত্রিক, দ্রাঘিমাংশ, অক্ষাংশ এবং তাপমাত্রা, তাই আমার কোন "দূরত্ব" ব্যবহার করা উচিত? কোন মাত্রাটি সেই দূরত্বের সাথে সম্পর্কিত? আমি এটি তাপমাত্রা হওয়া উচিত। আর এর সাথে আমি এ জাতীয় ন্যূনতম দূরত্বটি কীভাবে খুঁজে পাব?

অন্য একটি প্যারামিটার হ'ল একটি ক্লাস্টার গঠনে ন্যূনতম পয়েন্টগুলির সংখ্যা। এই সংখ্যাটি খুঁজে পাওয়ার কোনও পদ্ধতি আছে কি? দুর্ভাগ্যক্রমে আমি খুঁজে পাইনি।

গুগল অনুসন্ধান করে আমি আমার মতো ডেটাসেটে ডাবসক্যান ব্যবহারের জন্য আর উদাহরণ খুঁজে পাইনি, আপনি কি এই জাতীয় উদাহরণ সহ কোনও ওয়েবসাইট জানেন? সুতরাং আমি পড়তে পারি এবং আমার ক্ষেত্রে খাপ খাইয়ে নিতে চেষ্টা করতে পারি।

সর্বশেষ প্রশ্নটি হ'ল ডিবিএসসিএএন (আমার পূর্ববর্তী প্রশ্নের যথাযথ উত্তর না দিয়ে) নিয়ে আমার প্রথম প্রচেষ্টাটির ফলে মেমরির সমস্যা দেখা দিয়েছে। আর বলছে এটি ভেক্টর বরাদ্দ করতে পারে না। বৈধ এসএসটি পয়েন্টগুলি অপসারণ করার সময় আমি প্রায় 4000 কিলোমিটার ব্যবধানযুক্ত গ্রিডটি 779191 পয়েন্ট দিয়ে শুরু করব যা প্রায় 300000 সারি x 3 কলাম (অক্ষাংশ, দ্রাঘিমাংশ এবং তাপমাত্রা) এ শেষ হয় valid এই স্মৃতি সমস্যাটি সমাধান করার জন্য কোনও ইঙ্গিত। এটি আমার কম্পিউটারের উপর বা ডিবিএসসিএন নিজেই নির্ভর করে?

একটি দীর্ঘ এবং সম্ভবত বিরক্তিকর বার্তা পড়ার জন্য ধৈর্য এবং আপনার সহায়তার জন্য ধন্যবাদ Thanks


স্থান বিশ্লেষণে নিবেদিত একটি ফোরাম রয়েছে। সম্ভবত এই পোস্টটি উল্লেখ করুন (অবশ্যই উল্লেখ করুন যে আপনি ক্রস পোস্টিং করছেন)। gis.stackexchange.com
রোমান Luštrik

উত্তর:


2

আমি এখনও এই সমস্যা নিয়ে আটকে আছি। আমি এখানে সংযুক্ত আর-মেইলিং তালিকা (খ্রিস্টান হেননিগকে ধন্যবাদ) থেকে কিছু পরামর্শ পেয়েছি:

আপনি কি লাইব্রেরি এফপিসিতে ডাবসস্ক্যান ফাংশনটি বিবেচনা করেছেন , বা এটি অন্য কোনও? fpc::dbscan()ফাংশন একটি "দূরত্ব" প্যারামিটারটি কিন্তু বিভিন্ন বিকল্প, যার মধ্যে একটি আপনার মেমরি সমস্যা সমাধান হতে পারে ( "মেমরি" প্যারামিটারের ডকুমেন্টেশন খোঁজা) নেই।

কয়েক লক্ষ পয়েন্টের জন্য দূরত্বের ম্যাট্রিক্স ব্যবহার করা বিপর্যয়ের একটি রেসিপি (স্মৃতি অনুসারে)। আপনি যে ফাংশনটি ব্যবহার করেছেন তা তা করেছে কিনা তা সম্পর্কে আমি নিশ্চিত নই তবে fpc::dbscan()এটি এড়াতে পারি।

এটি সত্য যে fpc::dbscan()ব্যবহারকারীকে সরবরাহ করতে হবে এমন টিউনিং ধরণের প্রয়োজন requires দুর্ভাগ্যক্রমে এটি করার জন্য কোনও সাধারণ নিয়ম নেই; ধাপগুলির পদ্ধতি এবং তার অর্থ এবং এটি কীভাবে আপনার অ্যাপ্লিকেশনটির প্রয়োজনীয়তার সাথে অনুবাদ করে তা বোঝা দরকার।

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

আমি আমার ডেটা দিয়ে কিছু চেষ্টা করেছি তবে কোনও সাফল্য ছাড়াই:

"হ্যাঁ, আমি এফপিসি থেকে ডাবসকান চেষ্টা করেছি কিন্তু আমি এখনও স্মৃতি সমস্যার জন্য আটকে আছি। আপনার উত্তর সম্পর্কে, আমি নিশ্চিত নই যে কোন মেমোরি প্যারামিটারটি আমার দিকে নেওয়া উচিত। কোন ভুল আছে কিনা দেখুন।

> sstdat=read.csv("sst.dat",sep=";",header=F,col.names=c("lon","lat","sst"))
> library(fpc)
> sst1=subset(sstdat, sst<50)
> sst2=subset(sst1, lon>-6)
> sst2=subset(sst2, lon<40)
> sst2=subset(sst2, lat<46)
> dbscan(sst2$sst, 0.1, MinPts = 5, scale = FALSE, method = c("hybrid"), 
         seeds = FALSE, showplot = FALSE, countmode = NULL)
Error: no se puede ubicar un vector de tamaño  858.2 Mb
> head(sst2)
             lon   lat   sst
1257 35.18 24.98 26.78
1258 35.22 24.98 26.78
1259 35.27 24.98 26.78
1260 35.31 24.98 26.78
1261 35.35 24.98 26.78
1262 35.40 24.98 26.85

এই উদাহরণে আমি কেবলমাত্র dbscan()তাপমাত্রা মানগুলিতে প্রয়োগ করি , দীর্ঘ / লাত নয়, তাই epsপ্যারামিটারটি 0.1 হয়। যেহেতু এটি একটি গ্রিডড ডেটা সেট হিসাবে কোনও পয়েন্ট আটটি ডেটা পয়েন্ট দ্বারা বেষ্টিত থাকে, তখন আমি ভেবেছিলাম যে পার্শ্ববর্তী পয়েন্টগুলির কমপক্ষে 5 টি পুনঃব্যবহারের দূরত্বে থাকা উচিত। তবে আমি নিশ্চিত না যে কেবলমাত্র তাপমাত্রার মান বিবেচনা করে আমি সঠিক পন্থা পাচ্ছি, তবে সম্ভবত আমি স্থানিক তথ্য অনুপস্থিত। দ্রাঘিমাংশ এবং অক্ষাংশের ডেটা নিয়ে আমার কীভাবে व्यवहार করা উচিত?

এর মাত্রা sst2: 152243 সারি x 3 কলাম "

আপনারা কেউ আর এবং ডিবিএসসিএন-তে কিছু আলো ভাগ করতে পারলে আমি এই মেল বার্তাগুলি এখানে ভাগ করি। আবার ধন্যবাদ


আরে আপনি কোথায় সমস্যার সমাধান করতে পারবেন? আমি একই বিষয় নিয়ে আটকেছি। আপনি দয়া করে আপনার চিন্তা ভাগ করতে পারেন?
কুমার

প্রিয় @ কুমার আমাকে ক্লারার ক্লাস্টার পদ্ধতিতে ফিরে যেতে হয়েছিল। আমি ডিবিএসসিএন ব্যবহার করতে পারিনি, আমি দুঃখিত আমি আপনাকে সহায়তা করতে পারি না
পাকোমেট

2

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

দূরত্ব ফাংশন হিসাবে, এটি আপনার "ডোমেন জ্ঞান" প্রয়োজন। আপনার যদি নমনীয় পর্যাপ্ত ডিবিএসসিএন বাস্তবায়ন হয় (এটি বাস্তবায়ন করা সত্যিই সহজ, চেয়ে দ্রুততর করার সূচকটি আরও শক্ত!) আপনি একটি নির্বিচারে দূরত্ব রাখতে সক্ষম হবেন। আপনি এটি দুটি দূরত্বের ক্রিয়া এবং অ্যাপসিলনের মানগুলিও তৈরি করতে পারেন: পয়েন্টগুলি অবশ্যই দূরে থাকতে হবে এবং তাপমাত্রার পার্থক্যটি কম হওয়া উচিত mustO(n2)10km1K.

ডিবিএসসিএএন প্রয়োজনীয় নীতিগুলির জন্য "জেনারেলাইজড ডিবিএসসিএন" দেখুন: "প্রতিবেশী" ধারণা এবং "মূল পয়েন্টগুলি" (বা "ঘনত্ব") এর ধারণা।

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