কম্পিউটার টিউটোরিয়াল

C#-এ লজিস্টিক রিগ্রেশন (Logistic Regression) বোঝা

লজিস্টিক রিগ্রেশন হল একটি স tendencia লিনিয়ার মডেল যা বাইনারি ক্লাসিফিকেশন (০/১, হ্যাঁ/না) জন্য ব্যবহৃত হয়। এটি মেডিকেল সায়েন্স, কাস্টমার পারচেজ প্রেডিকশন, ফ্রড ডিটেকশন ইত্যাদিতে প্রয়োগ হয়।

গাণিতিক মডেল

লিনিয়ার কম্বিনেশন:


z = c₁x₁ + c₂x₂ + ... + cₙxₙ + b = cᵀx + b

সিগময়েড ফাংশন দিয়ে প্রোবাবিলিটিতে রূপান্তর:


p = σ(z) = 1 / (1 + e⁻ᶻ)

যেখানে:

  • c = কোইফিসিয়েন্ট ভেক্টর (ওয়েট)
  • x = ইনপুট ফিচার ভেক্টর
  • b = বায়াস (ইন্টারসেপ্ট)
  • p = ক্লাস ১ হওয়ার প্রোবাবিলিটি

C#-এ ইমপ্লিমেন্টেশন (ML.NET ব্যবহার করে)


// NuGet: Microsoft.ML
using Microsoft.ML;
using Microsoft.ML.Data;

public class InputData
{
    [LoadColumn(0)] public float Feature1;
    [LoadColumn(1)] public float Feature2;
    [LoadColumn(2)] public bool Label; // বাইনারি লেবেল
}

public class Prediction
{
    [ColumnName("PredictedLabel")] public bool PredictedLabel;
    public float Probability;
    public float Score;
}

class LogisticRegressionDemo
{
    static void Main()
    {
        var mlContext = new MLContext();
        
        // ট্রেনিং ডেটা
        var data = new[]
        {
            new InputData { Feature1 = 1, Feature2 = 2, Label = false },
            new InputData { Feature1 = 2, Feature2 = 3, Label = true },
            new InputData { Feature1 = 3, Feature2 = 4, Label = true },
        };
        
        var trainData = mlContext.Data.LoadFromEnumerable(data);
        
        // পাইপলাইন
        var pipeline = mlContext.Transforms.Concatenate("Features", "Feature1", "Feature2")
            .Append(mlContext.BinaryClassification.Trainers.LogisticRegression());
        
        // ট্রেন
        var model = pipeline.Fit(trainData);
        
        // প্রেডিকশন
        var predEngine = mlContext.Model.CreatePredictionEngine<InputData, Prediction>(model);
        var prediction = predEngine.Predict(new InputData { Feature1 = 2.5f, Feature2 = 3.5f });
        
        Console.WriteLine($"Predicted: {prediction.PredictedLabel}, Probability: {prediction.Probability:F4}");
    }
}

মূল মূল্যায়ন মেট্রিক্স

  • Accuracy: সঠিক প্রেডিকশনের অনুপাত
  • Precision/Recall/F1: ক্লাস ব্যালেন্সের জন্য
  • AUC-ROC: থ্রেশহোল্ড-স্বতন্ত্র পারফরম্যান্স
  • Log Loss: প্রোবাবিলিটি ক্যালিব্রেশন

সতর্কতা

  • ফিচার স্কেলিং (Normalization/Standardization) জরুরি।
  • মাল্টিকোলিনিয়ারিটি চেক করুন (VIF)।
  • রেগুলারাইজেশন (L1/L2) ওভারফিটিং রোধ করে।
  1. আপনার ম্যাকের সিস্টেম ফোল্ডারগুলো বুঝুন

  2. ডোমেইন হাইজ্যাকিং বোঝা এবং প্রতিরোধ করা

  3. রুবি দিয়ে ইন্সারশন সর্টিং দক্ষতা অর্জন: ধাপে ধাপে গাইড

  4. SQL Server এক্সিকিউশন প্ল্যান মास্টার করুন: একটি প্র্যাক্টিক্যাল গাইড