ইউজারজেন্ট, আইপি, সেশন_আইডি দ্বারা অনন্য দর্শকদের ক্লাস্টারিং


15

ফর্মটিতে ওয়েবসাইট অ্যাক্সেসের ডেটা দেওয়া হয়েছে session_id, ip, user_agentএবং নীচের শর্তাবলী অনুসরণ করে optionচ্ছিকভাবে টাইমস্ট্যাম্প দিয়ে কীভাবে আপনি অনন্য দর্শনার্থীদের মধ্যে সেশন সেরাভাবে ক্লাস্টার করবেন?

session_id: প্রতিটি নতুন দর্শনার্থীর দেওয়া আইডি। এটির মেয়াদ শেষ হয় না, তবে ব্যবহারকারী যদি কুকিজ গ্রহণ না করে / কুকিজ সাফ করে / ব্রাউজার পরিবর্তন / ডিভাইস পরিবর্তন করে তবে সে আর স্বীকৃত হবে না

IP বিভিন্ন ব্যবহারকারীর মধ্যে ভাগ করা যেতে পারে (একটি ফ্রি ওয়াই-ফাই ক্যাফে বা আপনার আইএসপি পুনরায় নিয়োগের আইপিগুলি কল্পনা করুন) এবং তাদের প্রায়শই কমপক্ষে 2, বাড়ি এবং কাজ থাকে।

User_agentব্রাউজার + ওএস সংস্করণ যা ডিভাইসগুলির মধ্যে পার্থক্য করতে দেয়। উদাহরণস্বরূপ কোনও ব্যবহারকারী ফোন এবং ল্যাপটপ উভয়ই ব্যবহার করতে পারবেন তবে উইন্ডোজ + অ্যাপল ল্যাপটপ ব্যবহারের সম্ভাবনা কম। একই সেশনের আইডিতে একাধিক ইউজারেজ রয়েছে এমন সম্ভাবনা কম is

ডেটা এখানে কোলাহল হিসাবে দেখাবে: http://sqlfiddle.com/#!2/c4de40/1

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

সম্পাদনা: যে ভাষায় সমস্যাটি সমাধান করা হয়েছে তা হতাশাগ্রস্ত, এটি বেশিরভাগ ক্ষেত্রে যুক্তি সম্পর্কিত এবং বাস্তবায়ন নয়। সিউডোকোড ঠিক আছে।

সম্পাদনা করুন: মুরগির ধীর গতির কারণে, আপনি বিকল্পভাবে mysql পড়তে / চালাতে পারেন:

select session_id, floor(rand()*256*256*256*256) as ip_num , floor(rand()*1000) as user_agent_id
from 
    (select 1+a.nr+10*b.nr as session_id, ceil(rand()*3) as nr
    from
        (select 1 as nr union all select 2 union all select 3   union all select 4 union all select 5
        union all select 6 union all select 7 union all select 8 union all select 9 union all select 0)a
    join
        (select 1 as nr union all select 2 union all select 3   union all select 4 union all select 5
        union all select 6 union all select 7 union all select 8 union all select 9 union all select 0)b
        order by 1
    )d
inner join
    (select 1 as nr union all select 2 union all select 3   union all select 4 union all select 5
    union all select 6 union all select 7 union all select 8 union all select 9 )e
    on d.nr>=e.nr

উত্তর:


9

এখানে একটি সম্ভাবনা (এবং এটি শন ওউন পোস্ট করেছেন কী এটিই একটি এক্সটেনশন) একটি "স্থিতিশীল ব্যবহারকারী" হিসাবে সংজ্ঞা দেওয়া হয়।

প্রদত্ত তথ্যের জন্য আপনি কোনও ইউজার_আইডি তৈরির কল্পনা করতে পারেন যা আইপি-র একটি হ্যাশ এবং কিছু ব্যবহারকারী এজেন্ট তথ্য (সিউডো কোড) রয়েছে:

uid = MD5Hash(ip + UA.device + UA.model)

তারপরে আপনি এই আইডিকে "স্থিতিশীল" বা "অস্থির" দিয়ে ফ্ল্যাগ করে আপনার ব্যবহারকারীর জন্য ব্যবহারের হিউরিস্টিকের উপর ভিত্তি করে। এটি কোনও নির্দিষ্ট সময় উইন্ডোতে # টি দর্শনার্থের একটি দ্বার হতে পারে, তাদের কুকিগুলি অবধি বহাল থাকবে, আপনার সাইটে কিছু শেষ ক্রিয়া হবে (আমি বুঝতে পারি এটি আপনার মূল লগে বর্ণিত হয়নি) ইত্যাদি ...

এখানে ধারণাটি হ'ল ব্যবহারকারীদের আলাদা করা যা কুকিগুলিকে না করে তাদের থেকে বাদ দেয়।

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

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

projected_num_unstable_users = num_sess_unstable / num_sess_per_stable_uid

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

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


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

1
লগ ইন করার প্রয়োজন নেই এমন পরিষেবাগুলির জন্য কুকি মন্থন বেশ সমস্যা Many
cwharland

6

কেবলমাত্র এই ডেটা দিয়ে আপনি অনেক কিছু করতে পারবেন না, তবে আপনি যা কিছু করতে পারেন তা মেশিন লার্নিংয়ের উপর নির্ভর করে না।

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

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


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

পরিদর্শন করা পণ্যের পৃষ্ঠাগুলি সন্ধান করা তেমন কোনও
উপকারে

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