ხარისხის მაჩვენებელი მანქანათმცოდნეობაში. მეტრიკა მანქანათმცოდნეობის პრობლემებში

თითოეული სიის შიგნით არსებულ ელემენტებზე. ნაწილობრივი წესრიგი ჩვეულებრივ განისაზღვრება თითოეული ელემენტისთვის ქულის მითითებით (მაგალითად, "შესაბამისი" ან "შეუსაბამო"; შესაძლებელია ორზე მეტი შეფასება). რანჟირების მოდელის მიზანია ახალი მონაცემებისათვის შექმნილ ტრენინგში რანჟირების მეთოდის მიახლოება და საუკეთესო გაგებით (გაგებით).

სწავლების რანჟირება ჯერ კიდევ საკმაოდ ახალგაზრდა, სწრაფად განვითარებადი სფეროა, რომელიც წარმოიშვა 2000 -იან წლებში, ინფორმაციის მოძიების სფეროში ინტერესის გაჩენით, მანქანათმცოდნეობის მეთოდების გამოყენებაში პრობლემების რანჟირებისთვის.

კოლეგიალური YouTube

  • 1 / 5

    რანჟირების მოდელის სწავლებისას და მისი მუშაობის დროს, თითოეული დოკუმენტი-შეკითხვა წყვილი ითარგმნება რანჟირების მახასიათებლების რიცხვით ვექტორში (ასევე უწოდებენ რანჟირების ფაქტორებს ან სიგნალებს), რომლებიც ახასიათებს დოკუმენტის თვისებებს, მოთხოვნას და მათ ურთიერთობას. ასეთი ნიშნები შეიძლება დაიყოს სამ ჯგუფად:

    ქვემოთ მოცემულია რენტგენის მახასიათებლების მაგალითები, რომლებიც გამოიყენება LETOR მონაცემთა ნაკრებში, რომელიც კარგად არის ცნობილი ხელოვნებაში:

    • ზომების ღირებულებები TF, TF-IDF, BM25 და დოკუმენტის სხვადასხვა სფეროს მოთხოვნის შესატყვისი ენის მოდელი (სათაური, URL, ძირითადი ტექსტი, ბმულის ტექსტი);
    • დოკუმენტის ზონების სიგრძე და IDF- თანხები;
    • ბმულის რანგის ალგორითმების სხვადასხვა ვარიანტით მიღებული დოკუმენტების რანგი, როგორიცაა PageRank და HITS.

    ხარისხის მეტრიკის რანჟირება

    არსებობს რამდენიმე მეტრიკა, რომელიც გამოიყენება ნიმუშზე რანგირების ალგორითმების შესრულების შესაფასებლად და შესადარებლად შემფასებლებთან. ხშირად, რანჟირების მოდელის პარამეტრები, როგორც წესი, მორგებულია ისე, რომ მაქსიმალურად გაზარდოს ერთ -ერთი ამ მაჩვენებლის მნიშვნელობა.

    მეტრიკის მაგალითები:

    ალგორითმის კლასიფიკაცია

    თავის სტატიაში "ვისწავლოთ რანჟირება ინფორმაციის მოპოვებისთვის" და სიტყვით თემატურ კონფერენციებზე, ტაი-იან ლიუმ Microsoft Research Asia- დან გააანალიზა სწავლების რანგის პრობლემის გადაჭრის არსებული მეთოდები და შესთავაზა მათი კლასიფიკაცია სამ მიდგომად, გამოყენებული შეყვანის წარმოდგენის მიხედვით. მონაცემები და საჯარიმო ფუნქციები:

    წერტილოვანი მიდგომა

    შენიშვნები (რედაქტირება)

    1. ჰალსტუხი იან ლიუ (2009), ვისწავლოთ რანგის ინფორმაციის მოძიება, საფუძვლები და ტენდენციები ინფორმაციის მოძიებაში: ტ. 3: No 3, გვ. 225-331, ISBN 978-1-60198-244-5, DOI 10.1561 / 1500000016... სლაიდები T. Lew– ის გამოსვლიდან WWW 2009 ხელმისაწვდომია.

    სატელეკომუნიკაციო ოპერატორის მომხმარებელთა გადინების შესახებ.


    მოდით ჩავტვირთოთ საჭირო ბიბლიოთეკები და შევხედოთ მონაცემებს

    იმპორტი pandas როგორც pd იმპორტი matplotlib.pyplot როგორც plt matplotlib.pylab იმპორტი rc, ნაკვეთი იმპორტი ზღვისპირა როგორც sns საწყისი sklearn.preporting იმპორტი LabelmbleEncoder, OneHotEncoder from sklearn.model_selection იმპორტი cross_val_score საწყისი sklearnellinearline.fromelline.frinal sklearn.metrics იმპორტი precision_recall_curve, კლასიფიკაცია_მოხსენება sklearn.model_selection იმპორტი მატარებელი_ტესტი_სპლიტი df = pd.read_csv ("../../ data/ telecom_churn.csv")


    df.head (5)

    მონაცემთა წინასწარი დამუშავება

    # მოდით გავაკეთოთ ორობითი სვეტების რუქა # და დავშიფროთ მდგომარეობა დუმული კოდირებით (სიმარტივისთვის, უმჯობესია არ გავაკეთოთ ეს ხის მოდელებისთვის) d = ("დიახ": 1, "არა": 0) df ["საერთაშორისო გეგმა "] = df [" საერთაშორისო გეგმა "]. რუკა (დ) df [" ხმოვანი ფოსტის გეგმა "] = df [" ხმოვანი ფოსტის გეგმა "]. რუკა (დ) df [" ჩურნი "] = df [" ჩურნი "] . Astype ("int64") le = LabelEncoder () df ["State"] = le.fit_transform (df ["State"]) ohe = OneHotEncoder (sparse = False) encoded_state = ohe.fit_transform (df ["State"] . values.reshape (- 1, 1)) tmp = pd.DataFrame (encoded_state, columns = ["state" + str (i) for i in range (encoded_state.shape)]) df = pd.concat (, axis = 1)

    სიზუსტე, სიზუსტე და გახსენება

    სანამ თავად მეტრიკაზე გადახვალთ, აუცილებელია შემოვიღოთ მნიშვნელოვანი კონცეფცია ამ მეტრიკის აღსაწერად კლასიფიკაციის შეცდომების თვალსაზრისით - დაბნეულობის მატრიცა(შეცდომის მატრიცა).
    დავუშვათ, რომ ჩვენ გვაქვს ორი კლასი და ალგორითმი, რომელიც პროგნოზირებს თითოეული ობიექტის კუთვნილებას ერთ კლასს, მაშინ კლასიფიკაციის შეცდომის მატრიცა ასე გამოიყურება:


    ჭეშმარიტი დადებითი (TP) ცრუ დადებითი (FP)
    ცრუ უარყოფითი (FN) ჭეშმარიტი უარყოფითი (TN)

    აქ არის ალგორითმის პასუხი ობიექტზე და არის ნამდვილი კლასის ეტიკეტი ამ ობიექტზე.
    ამრიგად, კლასიფიკაციის შეცდომების ორი ტიპი არსებობს: ცრუ უარყოფითი (FN) და ცრუ დადებითი (FP).


    ალგორითმის სწავლება და შეცდომის მატრიცის აგება

    X = df.drop ("Churn", axis = 1) y = df ["Churn"] # დაყავით ნიმუში მატარებელში და გამოცადეთ, ყველა მეტრიკა შეფასდება ტესტის მონაცემთა ბაზაზე X_train, X_test, y_train, y_test = train_test_split ( X, y, stratify = y, test_size = 0.33, random_state = 42) # მოვარჯულეთ მშობლიური ლოგისტიკური რეგრესია lr = LogisticRegression (random_state = 42) lr.fit (X_train, y_train) # გამოიყენეთ შეცდომის მატრიცის აგების ფუნქცია დოკუმენტაცია def plot_confusion_matrix (სმ, კლასები, ნორმალიზება = ყალბი, სათაური = "(! LANG: დაბნეულობის მატრიცა", cmap=plt.cm.Blues): """ This function prints and plots the confusion matrix. Normalization can be applied by setting `normalize=True`. """ plt.imshow(cm, interpolation="nearest", cmap=cmap) plt.title(title) plt.colorbar() tick_marks = np.arange(len(classes)) plt.xticks(tick_marks, classes, rotation=45) plt.yticks(tick_marks, classes) if normalize: cm = cm.astype("float") / cm.sum(axis=1)[:, np.newaxis] print("Normalized confusion matrix") else: print("Confusion matrix, without normalization") print(cm) thresh = cm.max() / 2. for i, j in itertools.product(range(cm.shape), range(cm.shape)): plt.text(j, i, cm, horizontalalignment="center", color="white" if cm > thresh else "black") plt.tight_layout() plt.ylabel("True label") plt.xlabel("Predicted label") font = {"size" : 15} plt.rc("font", **font) cnf_matrix = confusion_matrix(y_test, lr.predict(X_test)) plt.figure(figsize=(10, 8)) plot_confusion_matrix(cnf_matrix, classes=["Non-churned", "Churned"], title="დაბნეულობის მატრიცა") plt.savefig("conf_matrix.png") plt.show()!}


    სიზუსტე

    ინტუიციური, აშკარა და თითქმის გამოუყენებელი მეტრიკა არის სიზუსტე - ალგორითმის სწორი პასუხების პროცენტი:



    ეს მეტრიკა უსარგებლოა არათანაბარი კლასების პრობლემებში და ადვილია ამის ჩვენება მაგალითით.


    ვთქვათ, ჩვენ გვინდა შევაფასოთ სპამის წერილების ფილტრის მოქმედება. ჩვენ გვაქვს 100 არასამთავრობო სპამი ელ.წერილი, რომელთაგან 90 ჩვენმა კლასიფიკატორმა სწორად დაასახელა (ჭეშმარიტი უარყოფითი = 90, ცრუ დადებითი = 10) და 10 სპამი ელ.წერილი, რომელთაგან 5 კლასიფიკატორმა ასევე სწორად განსაზღვრა (ჭეშმარიტი დადებითი = 5, ცრუ უარყოფითი = ხუთი ).
    შემდეგ სიზუსტე:



    თუმცა, თუ ჩვენ უბრალოდ ვწინასწარმეტყველებთ ყველა წერილს, როგორც არა-სპამი, მივიღებთ უფრო მაღალ სიზუსტეს:



    ამავე დროს, ჩვენს მოდელს აბსოლუტურად არა აქვს პროგნოზირების ძალა, რადგან თავდაპირველად გვინდოდა სპამ შეტყობინებების იდენტიფიცირება. ამის დასაძლევად ჩვენ გვეხმარება გადასვლა ყველა კლასის საერთო მეტრიკიდან კლასების ხარისხის ცალკეულ ინდიკატორებზე.

    სიზუსტე, გახსენება და F- ზომა

    თითოეულ კლასზე ალგორითმის მუშაობის შესაფასებლად, ჩვენ შემოვიღებთ სიზუსტეს და გავიხსენებთ მეტრიკას.




    სიზუსტე შეიძლება განმარტდეს, როგორც კლასიფიკატორის მიერ დასახელებული ობიექტების პროპორცია პოზიტიური და ამავე დროს მართლაც პოზიტიური, ხოლო გახსენება აჩვენებს რა პოზიტიური კლასის ობიექტების პროპორციას ალგორითმით ნაპოვნი პოზიტიური კლასის ყველა ობიექტიდან.



    ეს არის სიზუსტის დანერგვა, რომელიც არ გვაძლევს საშუალებას დავწეროთ ყველა ობიექტი ერთ კლასში, ვინაიდან ამ შემთხვევაში ჩვენ ვიღებთ ცრუ პოზიტიური დონის ზრდას. გახსენება აჩვენებს ალგორითმის შესაძლებლობას, განსაზღვროს მოცემული კლასი ზოგადად, და სიზუსტე აჩვენებს უნარი განასხვავოს ეს კლასი სხვა კლასებისგან.


    როგორც უკვე აღვნიშნეთ, არსებობს ორი სახის კლასიფიკაციის შეცდომები: ცრუ დადებითი და ცრუ უარყოფითი. სტატისტიკაში, შეცდომების პირველ ტიპს უწოდებენ I ტიპის შეცდომას, ხოლო მეორეს ეწოდება II ტიპის შეცდომა. ჩვენს პრობლემაში, რომელიც განსაზღვრავს აბონენტთა რაოდენობას, პირველი სახის შეცდომა იქნება ერთგული აბონენტის მიღება გამავალი მომხმარებლისთვის, ვინაიდან ჩვენი ნულოვანი ჰიპოთეზაა, რომ არც ერთი აბონენტი არ მიდის და ჩვენ უარვყოფთ ამ ჰიპოთეზას. შესაბამისად, მეორე სახის შეცდომა იქნება გამავალი აბონენტის „გამოტოვება“ და ნულოვანი ჰიპოთეზის არასწორი მიღება.


    სიზუსტე და გახსენება არ არის დამოკიდებული, სიზუსტისგან განსხვავებით, კლასების თანაფარდობაზე და ამიტომ გამოიყენება არათანაბარი ნიმუშების პირობებში.
    ხშირად რეალურ პრაქტიკაში ამოცანაა ამ ორ მეტრიკას შორის ოპტიმალური (მომხმარებლისთვის) ბალანსის პოვნა. კლასიკური მაგალითია მომხმარებლის დარეგულირების განსაზღვრის პრობლემა.
    ცხადია, ჩვენ ვერ ვიპოვით ყველაგამავალი მომხმარებლები და მხოლოდმათ მაგრამ, მომხმარებელთა შენარჩუნების სტრატეგიისა და რესურსის განსაზღვრის შემდეგ, ჩვენ შეგვიძლია შევარჩიოთ საჭირო ბარიერები სიზუსტისა და გახსენებისთვის. მაგალითად, თქვენ შეგიძლიათ კონცენტრირება მოახდინოთ მხოლოდ მაღალპროდუქტიული მომხმარებლების შენარჩუნებაზე ან მათზე, ვინც უფრო სავარაუდოა, რომ დატოვონ, რადგან ჩვენ გვაქვს შეზღუდული სატელეფონო ცენტრის რესურსები.


    ჩვეულებრივ, ალგორითმის ჰიპერპარამეტრების ოპტიმიზაციისას (მაგალითად, ქსელში გამეორების შემთხვევაში GridSearchCV), გამოიყენება ერთი მეტრიკა, რომლის გაუმჯობესებას ველოდებით ტესტის ნიმუშზე.
    არსებობს რამდენიმე განსხვავებული ხერხი სიზუსტისა და დამახსოვრების ხარისხის საერთო მაჩვენებელში. F- ზომა (ზოგადად) - ჰარმონიული საშუალო სიზუსტე და გახსენება:



    ამ შემთხვევაში, ის განსაზღვრავს სიზუსტის წონას მეტრიკაში და როდესაც ეს არის ჰარმონიული საშუალო (2 ფაქტორით, ისე რომ სიზუსტის შემთხვევაში = 1 და გაწვევა = 1 ქონდეს)
    F- ზომა აღწევს თავის მაქსიმუმს, როდესაც სისრულე და სიზუსტე ერთის ტოლია, ხოლო ნულთან ახლოს, თუ რომელიმე არგუმენტი ნულთან ახლოს არის.
    Sklearn– ს აქვს მოსახერხებელი ფუნქცია _metrics.classification ანგარიში, რომელიც აბრუნებს გახსენებას, სიზუსტეს და F- ზომას თითოეული კლასისათვის, ასევე თითოეული კლასის შემთხვევების რაოდენობას.


    ანგარიში = კლასიფიკაციის_მოხსენება (y_test, lr.predict (X_test), target_names = ["Non-churned", "Churned"]) print (report)
    კლასი სიზუსტე გახსენება f1 ქულა მხარდაჭერა
    არა-ჩურჩულით 0.88 0.97 0.93 941
    დაწურული 0.60 0.25 0.35 159
    საშუალო / სულ 0.84 0.87 0.84 1100

    აქვე უნდა აღინიშნოს, რომ დაუბალანსებელი კლასების პრობლემების შემთხვევაში, რომელიც რეალურ პრაქტიკაში დომინირებს, ხშირად საჭიროა მიმართება მონაცემთა ნაკრების ხელოვნური მოდიფიკაციის მეთოდებს კლასების თანაფარდობის გასათანაბრებლად. ბევრი მათგანია და ჩვენ არ შევეხებით მათ, შეგიძლიათ გადახედოთ ზოგიერთ მეთოდს და აირჩიოთ ის, რაც თქვენს ამოცანას შეესაბამება.

    AUC-ROC და AUC-PR

    ალგორითმის რეალური პასუხის (როგორც წესი, კლასის კუთვნილების ალბათობა, იხ. SVM ცალკე) ორობითი ლეიბლით გადაყვანისას, ჩვენ უნდა ავირჩიოთ რაღაც ბარიერი, რომლის დროსაც 0 ​​ხდება 1. ბარიერი 0.5 -ის ტოლფასია ბუნებრივი და ახლო , მაგრამ ის ყოველთვის არ აღმოჩნდება ოპტიმალური, მაგალითად, კლასობრივი ბალანსის ზემოაღნიშნული არარსებობისას.


    მოდელის მთლიანობაში შეფასების ერთ -ერთი გზა, კონკრეტულ ზღურბლთან მიბმის გარეშე, არის AUC -ROC (ან ROC AUC) - ფართობი ( რეა პატივი urve) შეცდომის მრუდის ქვეშ ( მიმღები პირაჟი დამახასიათებელი მრუდი). ეს მრუდი არის ხაზი (0,0) - დან (1,1) - მდე ჭეშმარიტი პოზიტიური მაჩვენებლის (TPR) და ცრუ პოზიტიური მაჩვენებლის (FPR) კოორდინატებში:




    ჩვენ უკვე ვიცით TPR, ეს არის სისრულე და FPR გვიჩვენებს, თუ რა უარყოფითი ობიექტების პროპორციაა ალგორითმმა არასწორად პროგნოზირებული. იდეალურ შემთხვევაში, როდესაც კლასიფიკატორი არ უშვებს შეცდომებს (FPR = 0, TPR = 1), ვიღებთ მრუდის ქვეშ მყოფ ფართობს ერთის ტოლფასი; წინააღმდეგ შემთხვევაში, როდესაც კლასიფიკატორი შემთხვევით გამოაქვეყნებს კლასის ალბათობას, AUC-ROC იქნება 0.5-ისკენ, ვინაიდან კლასიფიკატორი გამოუშვებს იგივე რაოდენობის TP და FP.
    გრაფიკის თითოეული წერტილი შეესაბამება გარკვეული ბარიერის არჩევანს. მრუდის ქვეშ მყოფი ტერიტორია ამ შემთხვევაში აჩვენებს ალგორითმის ხარისხს (მეტი უკეთესია), გარდა ამისა, მრუდის ციცაბოობა მნიშვნელოვანია - ჩვენ გვსურს TPR– ის მაქსიმალურად გაზრდა FPR– ის მინიმიზაციით, რაც იმას ნიშნავს, რომ ჩვენი მრუდი იდეალურად უნდა იყოს მიდრეკილი წერტილი (0,1).


    ROC მრუდის ხატვის კოდი

    sns.set (font_scale = 1.5) sns.set_color_codes ("მდუმარე") plt.figure (figsize = (10, 8)) fpr, tpr, thresholds = roc_curve (y_test, lr.predict_proba (X_test) [:, 1], pos_label = 1) lw = 2 plt.plot (fpr, tpr, lw = lw, label = "ROC curve") plt.plot (,) plt.xlim () plt.ylim () plt.xlabel ("ცრუ დადებითი მაჩვენებელი ") plt.ylabel (" ჭეშმარიტი დადებითი მაჩვენებელი ") plt.title (" ROC მრუდი ") plt.savefig (" ROC.png ") plt.show ()



    AUC-ROC კრიტერიუმი მდგრადია გაუწონასწორებელი კლასების მიმართ (გაფუჭების გაფრთხილება: სამწუხაროდ, ყველაფერი ასე არ არის ერთმნიშვნელოვანი) და შეიძლება განმარტდეს, როგორც ალბათობა იმისა, რომ შემთხვევით შერჩეული პოზიტიური ობიექტი კლასიფიცირებულად უფრო მაღალი იქნება (ექნება უფრო მაღალი ალბათობა დადებითი) ვიდრე შემთხვევით შერჩეული უარყოფითი ობიექტი ...


    განვიხილოთ შემდეგი პრობლემა: ჩვენ უნდა შევარჩიოთ 100 შესაბამისი დოკუმენტი 1 მილიონი დოკუმენტიდან. ჩვენ ორი ალგორითმი გვაქვს ათვისებული:

    • ალგორითმი 1აბრუნებს 100 დოკუმენტს, რომელთაგან 90 შესაბამისია. ამდენად,

    • ალგორითმი 2აბრუნებს 2000 დოკუმენტს, რომელთაგან 90 შესაბამისია. ამდენად,


    დიდი ალბათობით, ჩვენ ავირჩევდით პირველ ალგორითმს, რომელიც ძალიან ცოტა ცრუ პოზიტივს აწარმოებს თავის კონკურენტთან შედარებით. მაგრამ განსხვავება ცრუ პოზიტიურ მაჩვენებელში ამ ორ ალგორითმს შორის უკიდურესადმცირე - მხოლოდ 0.0019. ეს განპირობებულია იმით, რომ AUC-ROC ზომავს ცრუ პოზიტივის პროპორციას ჭეშმარიტ ნეგატივთან შედარებით და იმ პრობლემებში, სადაც მეორე (უფრო დიდი) კლასი ჩვენთვის არც ისე მნიშვნელოვანია, შეიძლება ალგორითმების შედარებისას მთლად ადეკვატური სურათი არ იყოს.


    სიტუაციის გამოსასწორებლად, დავუბრუნდეთ სისრულეს და სიზუსტეს:

    • ალგორითმი 1

    • ალგორითმი 2


    აქ უკვე შესამჩნევია მნიშვნელოვანი განსხვავება ორ ალგორითმს შორის - სიზუსტით 0.855!


    სიზუსტე და გაწვევა ასევე გამოიყენება მრუდის ასაგებად და, AUC-ROC– ის მსგავსად, მის ქვეშ მდებარე ფართობის პოვნა.



    აქ შეიძლება აღინიშნოს, რომ მცირე მონაცემთა ნაკრებებზე, PR- მრუდის ქვეშ არსებული ტერიტორია შეიძლება იყოს ზედმეტად ოპტიმისტური, რადგან იგი გამოითვლება ტრაპეციული მეთოდის გამოყენებით, მაგრამ, ჩვეულებრივ, ასეთ დავალებებში არის საკმარისი მონაცემები. დეტალები AUC-ROC და AUC-PR შორის ურთიერთობის შესახებ, იხილეთ აქ.

    ლოგისტიკური ზარალი

    ლოგისტიკური დანაკარგის ფუნქცია განცალკევებულია, განსაზღვრულია როგორც:



    აქ არის ალგორითმის პასუხი -th ობიექტზე, არის ნამდვილი კლასის ეტიკეტი -th ობიექტზე და ნიმუშის ზომა.


    ლოგისტიკური დანაკარგის ფუნქციის მათემატიკური ინტერპრეტაციის შესახებ დეტალები უკვე დაწერილია პოსტის ფარგლებში ხაზოვანი მოდელების შესახებ.
    ეს მეტრიკა იშვიათად ჩნდება ბიზნესის მოთხოვნებში, მაგრამ ხშირად ამოცანებში.
    ინტუიციურად, თქვენ შეგიძლიათ წარმოიდგინოთ ლოგოსის შემცირება, როგორც ამოცანის გაზრდის სიზუსტეს არასწორი პროგნოზების დასჯით. თუმცა, უნდა აღინიშნოს, რომ logloss მკაცრად აჯარიმებს კლასიფიკატორის არასწორი პასუხის ნდობას.


    განვიხილოთ მაგალითი:


    def logloss_crutch (y_true, y_pred, eps = 1e -15): დაბრუნება - (y_true * np.log (y_pred) + (1 - y_true) * np.log (1 - y_pred)) ბეჭდვა ("Logloss გაურკვეველი კლასიფიკაციით% f "% logloss_crutch (1, 0.5)) >> Logloss გაურკვეველი კლასიფიკაციით 0.693147 ბეჭდვა (" Logloss დარწმუნებული კლასიფიკაციით და სწორი პასუხი% f "% logloss_crutch (1, 0.9)) >> Logloss დარწმუნებული კლასიფიკაციით და სწორი პასუხი 0.105361 ბეჭდვა (" Logloss დარწმუნებული კლასიფიკაციით და არასწორი პასუხი% f "% logloss_crutch (1, 0.1)) >> Logloss დარწმუნებული კლასიფიკაციით და არასწორი პასუხი 2.302585

    გაითვალისწინეთ, თუ როგორ გაიზარდა ლოგოსტი მკვეთრად არასწორი პასუხით და დარწმუნებული კლასიფიკაციით!
    შესაბამისად, ერთ ობიექტზე დაშვებულმა შეცდომამ შეიძლება გამოიწვიოს საერთო ნიმუშის შეცდომის მნიშვნელოვანი დეგრადაცია. ასეთი ობიექტები ხშირად უფრო შორს არის, რაც უნდა გვახსოვდეს, რომ გავფილტროთ ან განვიხილოთ ცალკე.
    ყველაფერი თავის ადგილზე დადგება თუ დახაზავთ logloss გრაფიკს:



    ჩანს, რომ რაც უფრო ნულს უახლოვდება ალგორითმის პასუხი გონივრული ჭეშმარიტებით = 1, მით უფრო მაღალია შეცდომის მნიშვნელობა და უფრო მკვეთრი იზრდება მრუდი.

    მოდით შევაჯამოთ:

    • მრავალკლასიანი კლასიფიკაციის შემთხვევაში, საჭიროა ყურადღებით დააკვირდეთ თითოეული კლასის მეტრიკას და დაიცვას გადაწყვეტილების ლოგიკა დავალებებივიდრე მეტრის ოპტიმიზაცია
    • არათანაბარი კლასების შემთხვევაში აუცილებელია სასწავლო კლასების ბალანსის შერჩევა და მეტრიკა, რომელიც სწორად ასახავს კლასიფიკაციის ხარისხს
    • და მადრუგადო ამ სტატიაში დახმარებისთვის.

    ეს თავი წარმოადგენს კლასიფიკაციის მოდელის ხარისხის შეფასების პოპულარულ მეთოდებს, რომლებიც, სხვა საკითხებთან ერთად, გამოიყენება ამ თემაზე სხვა ნაშრომებში. მოცემულია მათი შეფასება და დასაბუთება ამ შეფასებისათვის გამოყენებული მეტრიკისა.

    ხარისხის შეფასების მეტრიკა

    სრული სიზუსტე

    ეს მეტრი არის ერთ -ერთი ყველაზე მარტივი და ამავდროულად უნივერსალური მეტრიკა კლასიფიკაციის ალგორითმების შესრულების შესაფასებლად. ამ კოეფიციენტის მნიშვნელობა გამოითვლება, როგორც სწორად კლასიფიცირებული ობიექტების პროპორციები ნიმუშში არსებული ობიექტების საერთო რაოდენობიდან. ეს მეტრიკა პოპულარულია მისი სიმარტივისა და ნებისმიერი რაოდენობის კლასზე გავრცელების უნარის გამო. ამ მეტრიკის მთავარი მინუსი ის არის, რომ იგი ერთსა და იმავე წონას ანიჭებს ყველა დოკუმენტს, რაც შეიძლება არასწორი იყოს ერთ ან რამდენიმე კლასში მითითებულ ტრენინგში დოკუმენტების ძლიერი გადაადგილების შემთხვევაში. ამ მეტრიკას შეიძლება ჰქონდეს მაღალი ღირებულება, მაგრამ იმავე კლასში შემსწავლელს შეუძლია აჩვენოს სამუშაოს უკიდურესად დაბალი ხარისხი. ამავე დროს, მეტრიკა ამას არანაირად არ ნიშნავს.

    სიზუსტე, სისრულე და F- ზომა

    მეტრიკა, როგორიცაა სიზუსტე და გახსენება, პირველად ფართოდ იქნა გამოყენებული ინფორმაციის მოპოვების პრობლემების გადაჭრის სისტემების მუშაობის შეფასებისას. სისტემის სიზუსტე ერთ კლასში არის იმ ობიექტების პროპორცია, რომლებიც ნამდვილად ეკუთვნის გარკვეულ კლასს, სისტემის მიერ ამ კლასისთვის მინიჭებული ყველა ობიექტის მიმართ. სისრულე გამოიხატება, როგორც კლასიფიკატორის მიერ მიკუთვნებული ობიექტების პროპორცია, რომელიც მიეკუთვნება კლასს ამ კლასის ყველა ობიექტის მიმართ. ცხრილი 4 არის ცალკეული კლასის შემთხვევითი ცხრილი, სადაც TP (ჭეშმარიტი დადებითი) არის ჭეშმარიტად დადებითი გადაწყვეტილება, TN (ჭეშმარიტი უარყოფითი) არის ჭეშმარიტად უარყოფითი გადაწყვეტილება, FP (ცრუ დადებითი) არის ცრუ დადებითი გადაწყვეტილება და FN (ცრუ უარყოფითი) არის მცდარი. -ნეგატიური გადაწყვეტილება.

    ცხრილი 1 - ობიექტების კლასის შემთხვევითობის ცხრილი

    ამრიგად, სიზუსტე და სისრულე გამოითვლება შემდეგნაირად:

    F- ზომა აერთიანებს ინფორმაციას შეფასებული ალგორითმის სიზუსტისა და სისრულის შესახებ. იგი გამოითვლება როგორც სიზუსტისა და სისრულის მაჩვენებლების ჰარმონიული საშუალო:

    გამომდინარე იქიდან, რომ F- ზომა გამოითვლება ცალკე თითოეული კლასისთვის, მოსახერხებელია მისი გამოყენება ალგორითმის კონკრეტული შეცდომების მოსაძიებლად და გასაანალიზებლად, რამდენიმე კლასით კლასიფიკაციის შესაფასებლად. უფრო მეტიც, კლასების დიდი რაოდენობის შემთხვევაში, საჭიროა მახასიათებელი, რომელიც აერთიანებს ყველა კლასის სრულყოფილებას და სიზუსტეს და ახასიათებს სისტემის საერთო ქცევას. ამ ნაშრომში ამ მიზნით გამოიყენება შემდეგი საერთო ღირებულებები: მაკრო სიზუსტე, რომელიც გამოითვლება ყველა კლასის სიზუსტის საშუალო არითმეტიკულად, მაკრო გაწვევა, რომელიც გამოითვლება ყველა კლასისთვის სისრულის საშუალო არითმეტიკულად, და მაკრო F- ზომა (მაკრო F- ქულა), რაც მათ შორის ჰარმონიული საშუალოა.

    ჯვარედინი დადასტურება

    ჯვარედინი დადასტურება არის ერთ-ერთი ყველაზე გავრცელებული მეთოდი მანქანათმცოდნეობის სხვადასხვა ალგორითმის სრული ტესტირებისა და მუშაობის შესაფასებლად. დამოუკიდებელი ნიმუშისთვის, ეს მეთოდი საშუალებას იძლევა მიიღოთ შეცდომის ალბათობის მიუკერძოებელი შეფასება, განსხვავებით გაწვრთნილი ნიმუშის საშუალო შეცდომისაგან, რომელიც შეიძლება იყოს შეცდომის ალბათობის მიკერძოებული შეფასება ალგორითმის გადაჭარბების გამო. ამ პროცედურის კიდევ ერთი უპირატესობა არის ალგორითმის შეცდომის ალბათობის შეფასების უნარი, სპეციალურად შემუშავებული საკონტროლო ნიმუშის არარსებობის შემთხვევაში.

    დავუშვათ, რომ ეს არის ობიექტების მახასიათებლების აღწერილობის ერთობლიობა, რომელზედაც მითითებულია გამოყენების შემთხვევების სასრული ნიმუში, სადაც არის კლასების სასრული ნაკრები. მოცემულია რუქა, რომელიც ალგორითმს ანიჭებს გამოყენების შემთხვევების თვითნებურ შერჩევას. შემდეგ პრეცედენტების თვითნებური ნიმუშის ალგორითმის ხარისხი შეფასებულია ხარისხის ფუნქციის გამოყენებით:

    სად არის რაღაც არა-უარყოფითი ფუნქცია, რომელიც აბრუნებს ალგორითმის შეცდომის მნიშვნელობას სწორი კლასის ეტიკეტით.

    გამარჯობა, ჰაბრ!

    მანქანათმცოდნეობის ამოცანებში მეტრიკა გამოიყენება მოდელების ხარისხის შესაფასებლად და სხვადასხვა ალგორითმის შესადარებლად, ხოლო მათი შერჩევა და ანალიზი არის მონაცემთა ბაზის შემსრულებლის შეუცვლელი ნაწილი.

    ამ სტატიაში ჩვენ შევხედავთ ხარისხის კრიტერიუმებს კლასიფიკაციის პრობლემებში, განვიხილავთ რა არის მნიშვნელოვანი მეტრის არჩევისას და რისი ბრალი შეიძლება იყოს.

    მეტრიკა კლასიფიკაციის პრობლემებში

    სასარგებლო თვისებების საჩვენებლად სკლერინდა მეტრიკის ვიზუალური წარმოდგენა, ჩვენ გამოვიყენებთ ჩვენს მონაცემთა ნაკრებს სატელეკომუნიკაციო ოპერატორის კლიენტებზე, რომლებიც კურსის პირველ სტატიაში შევხვდით.

    მოდით ჩავტვირთოთ საჭირო ბიბლიოთეკები და შევხედოთ მონაცემებს

    იმუშავეთ პანდები როგორც pd იმპორტი sklearn.metrics იმპორტი precision_recall_curve, კლასიფიკაცია_მოხსენება sklearn.model_selection იმპორტი მატარებელი_ტესტი_სპლიტი df = pd.read_csv ("../../ data/ telecom_churn.csv")

    Df.head (5)

    მონაცემთა წინასწარი დამუშავება

    # მოდით გავაკეთოთ ორობითი სვეტების რუქა # და დავშიფროთ მდგომარეობა დუმული კოდირებით (სიმარტივისთვის, უმჯობესია არ გავაკეთოთ ეს ხის მოდელებისთვის) d = ("დიახ": 1, "არა": 0) df ["საერთაშორისო გეგმა "] = df [" საერთაშორისო გეგმა "]. რუკა (დ) df [" ხმოვანი ფოსტის გეგმა "] = df [" ხმოვანი ფოსტის გეგმა "]. რუკა (დ) df [" ჩურნი "] = df [" ჩურნი "] . Astype ("int64") le = LabelEncoder () df ["State"] = le.fit_transform (df ["State"]) ohe = OneHotEncoder (sparse = False) encoded_state = ohe.fit_transform (df ["State"] . values.reshape (- 1, 1)) tmp = pd.DataFrame (encoded_state, columns = ["state" + str (i) for i in range (encoded_state.shape)]) df = pd.concat (, axis = 1)

    სიზუსტე, სიზუსტე და გახსენება

    სანამ მეტრიკაზე გადავიდოდეთ, აუცილებელია შემოვიღოთ მნიშვნელოვანი კონცეფცია ამ მეტრიკის აღსაწერად კლასიფიკაციის შეცდომების თვალსაზრისით - დაბნეულობის მატრიცა(შეცდომის მატრიცა).
    დავუშვათ, რომ ჩვენ გვაქვს ორი კლასი და ალგორითმი, რომელიც პროგნოზირებს თითოეული ობიექტის კუთვნილებას ერთ კლასს, მაშინ კლასიფიკაციის შეცდომის მატრიცა ასე გამოიყურება:

    ჭეშმარიტი დადებითი (TP) ცრუ დადებითი (FP)
    ცრუ უარყოფითი (FN) ჭეშმარიტი უარყოფითი (TN)

    ეს არის ალგორითმის პასუხი ობიექტზე და

    ჭეშმარიტი კლასის ეტიკეტი ამ ობიექტზე.
    ამრიგად, კლასიფიკაციის შეცდომების ორი ტიპი არსებობს: ცრუ უარყოფითი (FN) და ცრუ დადებითი (FP).

    ალგორითმის სწავლება და შეცდომის მატრიცის აგება

    X = df.drop ("Churn", axis = 1) y = df ["Churn"] # დაყავით ნიმუში მატარებელში და გამოცადეთ, ყველა მეტრიკა შეფასდება ტესტის მონაცემთა ბაზაზე X_train, X_test, y_train, y_test = train_test_split ( X, y, stratify = y, test_size = 0.33, random_state = 42) # მოვარჯულეთ მშობლიური ლოგისტიკური რეგრესია lr = LogisticRegression (random_state = 42) lr.fit (X_train, y_train) # გამოიყენეთ ფუნქცია sklearn– დან შეცდომის მატრიცის შესაქმნელად დოკუმენტაცია def plot_confusion_matrix (სმ, კლასები, ნორმალიზება = ყალბი, სათაური = "(! LANG: დაბნეულობის მატრიცა", cmap=plt.cm.Blues): """ This function prints and plots the confusion matrix. Normalization can be applied by setting `normalize=True`. """ plt.imshow(cm, interpolation="nearest", cmap=cmap) plt.title(title) plt.colorbar() tick_marks = np.arange(len(classes)) plt.xticks(tick_marks, classes, rotation=45) plt.yticks(tick_marks, classes) if normalize: cm = cm.astype("float") / cm.sum(axis=1)[:, np.newaxis] print("Normalized confusion matrix") else: print("Confusion matrix, without normalization") print(cm) thresh = cm.max() / 2. for i, j in itertools.product(range(cm.shape), range(cm.shape)): plt.text(j, i, cm, horizontalalignment="center", color="white" if cm > thresh else "black") plt.tight_layout() plt.ylabel("True label") plt.xlabel("Predicted label") font = {"size" : 15} plt.rc("font", **font) cnf_matrix = confusion_matrix(y_test, lr.predict(X_test)) plt.figure(figsize=(10, 8)) plot_confusion_matrix(cnf_matrix, classes=["Non-churned", "Churned"], title="დაბნეულობის მატრიცა") plt.savefig("conf_matrix.png") plt.show()!}

    სიზუსტე

    ინტუიციური, აშკარა და თითქმის გამოუყენებელი მეტრიკა არის სიზუსტე - ალგორითმის სწორი პასუხების პროცენტი:

    ეს მეტრიკა უსარგებლოა არათანაბარი კლასების პრობლემებში და ადვილია მისი ჩვენება მაგალითით.

    ვთქვათ, ჩვენ გვინდა შევაფასოთ სპამის წერილების ფილტრის მოქმედება. ჩვენ გვაქვს 100 არასამთავრობო სპამი ელ.წერილი, რომელთაგან 90 ჩვენმა კლასიფიკატორმა სწორად იდენტიფიცირება (ჭეშმარიტი უარყოფითი = 90, ცრუ დადებითი = 10) და 10 სპამი ელ.წერილი, რომელთაგან 5 კლასიფიკატორმა ასევე სწორად განსაზღვრა (ჭეშმარიტი დადებითი = 5, ცრუ უარყოფითი = 5) რა
    შემდეგ სიზუსტე:

    თუმცა, თუ ჩვენ უბრალოდ ვწინასწარმეტყველებთ ყველა წერილს, როგორც არა-სპამი, მივიღებთ უფრო მაღალ სიზუსტეს:

    ამავე დროს, ჩვენს მოდელს საერთოდ არ აქვს პროგნოზირების ძალა, ვინაიდან ჩვენ თავდაპირველად გვინდოდა სპამ შეტყობინებების იდენტიფიცირება. ამის დასაძლევად ჩვენ გვეხმარება გადასვლა ყველა კლასის საერთო მეტრიკიდან კლასების ხარისხის ცალკეულ ინდიკატორებზე.

    სიზუსტე, გახსენება და F- ზომა

    თითოეულ კლასზე ალგორითმის მუშაობის შესაფასებლად, ჩვენ შემოვიღებთ სიზუსტეს და გავიხსენებთ მეტრიკას.

    სიზუსტე შეიძლება განმარტდეს, როგორც კლასიფიკატორის მიერ დასახელებული ობიექტების პროპორცია პოზიტიური და ამავე დროს მართლაც პოზიტიური, ხოლო გახსენება აჩვენებს რა პოზიტიური კლასის ობიექტების პროპორციას ალგორითმით ნაპოვნი პოზიტიური კლასის ყველა ობიექტიდან.

    ეს არის სიზუსტის დანერგვა, რომელიც არ გვაძლევს საშუალებას დავწეროთ ყველა ობიექტი ერთ კლასში, ვინაიდან ამ შემთხვევაში ჩვენ ვიღებთ ცრუ პოზიტიური დონის ზრდას. გახსენება აჩვენებს ალგორითმის შესაძლებლობას, განსაზღვროს მოცემული კლასი ზოგადად, და სიზუსტე აჩვენებს უნარი განასხვავოს ეს კლასი სხვა კლასებისგან.

    როგორც უკვე აღვნიშნეთ, არსებობს კლასიფიკაციის შეცდომების ორი ტიპი: ცრუ დადებითი და ცრუ უარყოფითი. სტატისტიკაში შეცდომების პირველ ტიპს უწოდებენ I ტიპის შეცდომას, ხოლო მეორეს II ტიპის შეცდომას. ჩვენი პრობლემის განსაზღვრისას აბონენტთა კრახი, პირველი სახის შეცდომა იქნება ერთგული აბონენტის მიღება გამავალი მომხმარებლისთვის, ვინაიდან ჩვენი ნულოვანი ჰიპოთეზა არის ის, რომ არცერთი აბონენტი არ გამოდის და ჩვენ უარვყოფთ ამ ჰიპოთეზას. შესაბამისად, მეორე სახის შეცდომა იქნება გამავალი აბონენტის „გამოტოვება“ და ნულოვანი ჰიპოთეზის არასწორი მიღება.

    სიზუსტე და გახსენება არ არის დამოკიდებული, სიზუსტისგან განსხვავებით, კლასების თანაფარდობაზე და ამიტომ გამოიყენება არათანაბარი ნიმუშების პირობებში.
    ხშირად რეალურ პრაქტიკაში ამოცანაა ამ ორ მეტრიკას შორის ოპტიმალური (მომხმარებლისთვის) ბალანსის პოვნა. კლასიკური მაგალითია მომხმარებლის დარეგულირების განსაზღვრის პრობლემა.
    ცხადია, ჩვენ ვერ ვიპოვით ყველაგამავალი მომხმარებლები და მხოლოდმათ მომხმარებელთა შენარჩუნების სტრატეგიისა და რესურსის განსაზღვრის შემდეგ, ჩვენ შეგვიძლია შევარჩიოთ საჭირო სიზუსტე და გავიხსენოთ ზღურბლები. მაგალითად, თქვენ შეგიძლიათ ფოკუსირება მოახდინოთ მხოლოდ მაღალი შემოსავლის მქონე მომხმარებლების შენარჩუნებაზე ან მათზე, ვინც უფრო მეტს იტყვის ანგარიშზე, ვინაიდან ჩვენ შეზღუდული ვართ სატელეფონო ცენტრის რესურსით.

    ჩვეულებრივ, ალგორითმის ჰიპერპარამეტრების ოპტიმიზაციისას (მაგალითად, ქსელში გამეორების შემთხვევაში GridSearchCV), გამოიყენება ერთი მეტრიკა, რომლის გაუმჯობესებას ველოდებით ტესტის ნიმუშზე.
    არსებობს რამდენიმე განსხვავებული ხერხი სიზუსტისა და დამახსოვრების ხარისხის საერთო რაოდენობაში. F- ზომა (ზოგადად

    ) - ჰარმონიული საშუალო სიზუსტე და გახსენება:

    ამ შემთხვევაში განსაზღვრავს სიზუსტის წონა მეტრიკაში და for

    ეს არის ჰარმონიული საშუალო (2 -ის გამრავლებით, ასე რომ სიზუსტის = 1 და გაწვევის = 1 შემთხვევაში, ჩვენ გვაქვს

    )
    F- ზომა აღწევს თავის მაქსიმუმს, როდესაც სისრულე და სიზუსტე ერთის ტოლია და ნულის ტოლია, თუ რომელიმე არგუმენტი ნულთან ახლოს არის.
    Sklearn– ს აქვს მოსახერხებელი ფუნქცია _metrics.classification ანგარიშიდაბრუნების გაწვევა, სიზუსტე და F- ზომა თითოეული კლასისთვის, ასევე თითოეული კლასის შემთხვევების რაოდენობა.

    ანგარიში = კლასიფიკაციის_მოხსენება (y_test, lr.predict (X_test), target_names = ["Non-churned", "Churned"]) print (report)

    კლასი სიზუსტე გახსენება f1 ქულა მხარდაჭერა
    არა-ჩურჩულით 0.88 0.97 0.93 941
    დაწურული 0.60 0.25 0.35 159
    საშუალო / სულ 0.84 0.87 0.84 1100

    აქვე უნდა აღინიშნოს, რომ დაუბალანსებელი კლასების პრობლემების შემთხვევაში, რომელიც რეალურ პრაქტიკაში დომინირებს, ხშირად საჭიროა მიმართება მონაცემთა ნაკრების ხელოვნური მოდიფიკაციის მეთოდებს კლასების თანაფარდობის გასათანაბრებლად. ბევრი მათგანია და ჩვენ არ შევეხებით მათ, შეგიძლიათ გადახედოთ ზოგიერთ მეთოდს და აირჩიოთ ის, რაც თქვენს ამოცანას შეესაბამება.

    AUC-ROC და AUC-PR

    ალგორითმის რეალური პასუხის (როგორც წესი, კლასის კუთვნილების ალბათობა, იხ. SVM ცალკე) ორობითი ლეიბლით გადაყვანისას, ჩვენ უნდა ავირჩიოთ რაღაც ბარიერი, რომლის დროსაც 0 ​​ხდება 1. ბარიერი 0.5 -ის ტოლფასია ბუნებრივი და ახლო , მაგრამ ის ყოველთვის არ აღმოჩნდება ოპტიმალური, მაგალითად, კლასობრივი ბალანსის ზემოაღნიშნული არარსებობისას.

    მოდელის მთლიანობაში შეფასების ერთ -ერთი გზა, კონკრეტულ ზღურბლთან მიბმის გარეშე, არის AUC -ROC (ან ROC AUC) - ფართობი ( რეა პატივი urve) შეცდომის მრუდის ქვეშ ( მიმღები პირაჟი დამახასიათებელი მრუდი). ეს მრუდი არის ხაზი (0,0) - დან (1,1) - მდე ჭეშმარიტი პოზიტიური მაჩვენებლის (TPR) და ცრუ პოზიტიური მაჩვენებლის (FPR) კოორდინატებში:

    ჩვენ უკვე ვიცით TPR, ეს არის სისრულე და FPR გვიჩვენებს, თუ რა უარყოფითი ობიექტების პროპორციაა ალგორითმმა არასწორად პროგნოზირებული. იდეალურ შემთხვევაში, როდესაც კლასიფიკატორი არ უშვებს შეცდომებს (FPR = 0, TPR = 1), ჩვენ ვიღებთ ფართობს მრუდის ქვეშ ტოლი ერთის, წინააღმდეგ შემთხვევაში, როდესაც კლასიფიკატორი შემთხვევით გამოაქვეყნებს კლასის ალბათობას, AUC-ROC იქნება 0.5-ისკენ, ვინაიდან კლასიფიკატორი გასცემს იგივე რაოდენობის TP და FP.
    გრაფიკის თითოეული წერტილი შეესაბამება გარკვეული ბარიერის არჩევანს. მრუდის ქვეშ მყოფი ტერიტორია ამ შემთხვევაში აჩვენებს ალგორითმის ხარისხს (მეტი უკეთესია), გარდა ამისა, მრუდის ციცაბოობა მნიშვნელოვანია - ჩვენ გვსურს TPR– ის მაქსიმალურად გაზრდა FPR– ის მინიმიზაციით, რაც იმას ნიშნავს, რომ ჩვენი მრუდი იდეალურად უნდა იყოს მიდრეკილი წერტილი (0,1).

    ROC მრუდის ხატვის კოდი

    Sns.set (font_scale = 1.5) sns.set_color_codes ("მდუმარე") plt.figure (figsize = (10, 8)) fpr, tpr, thresholds = roc_curve (y_test, lr.predict_proba (X_test) [:, 1], pos_label = 1) lw = 2 plt.plot (fpr, tpr, lw = lw, label = "ROC curve") plt.plot (,) plt.xlim () plt.ylim () plt.xlabel ("ცრუ დადებითი მაჩვენებელი ") plt.ylabel (" ჭეშმარიტი დადებითი მაჩვენებელი ") plt.title (" ROC მრუდი ") plt.savefig (" ROC.png ") plt.show ()

    AUC-ROC კრიტერიუმი მდგრადია გაუწონასწორებელი კლასების მიმართ (სპოილერი: სამწუხაროდ, მაგრამ ყველაფერი არც ისე ცალსახაა) და შეიძლება განმარტდეს, როგორც ალბათობა იმისა, რომ შემთხვევით შერჩეული პოზიტიური ობიექტი კლასიფიცირებულად უფრო მაღალი იქნება (ექნება უფრო მაღალი ალბათობა დადებითი) ვიდრე შემთხვევით შერჩეული უარყოფითი ობიექტი.

    განვიხილოთ შემდეგი პრობლემა: ჩვენ უნდა შევარჩიოთ 100 შესაბამისი დოკუმენტი 1 მილიონი დოკუმენტიდან. ჩვენ ორი ალგორითმი გვაქვს ათვისებული:

    • ალგორითმი 1აბრუნებს 100 დოკუმენტს, რომელთაგან 90 შესაბამისია. ამდენად,
    • ალგორითმი 2აბრუნებს 2000 დოკუმენტს, რომელთაგან 90 შესაბამისია. ამდენად,

    დიდი ალბათობით, ჩვენ ავირჩევდით პირველ ალგორითმს, რომელიც ძალიან ცოტა ცრუ პოზიტივს აწარმოებს თავის კონკურენტთან შედარებით. მაგრამ განსხვავება ცრუ პოზიტიურ მაჩვენებელში ამ ორ ალგორითმს შორის უკიდურესადმცირე - მხოლოდ 0.0019. ეს განპირობებულია იმით, რომ AUC-ROC ზომავს ცრუ პოზიტივის პროპორციას ჭეშმარიტ ნეგატივთან შედარებით და იმ პრობლემებში, სადაც მეორე (უფრო დიდი) კლასი ჩვენთვის არც ისე მნიშვნელოვანია, შეიძლება ალგორითმების შედარებისას მთლად ადეკვატური სურათი არ იყოს.

    სიტუაციის გამოსასწორებლად, დავუბრუნდეთ სისრულეს და სიზუსტეს:

    • ალგორითმი 1
    • ალგორითმი 2

    აქ უკვე შესამჩნევია მნიშვნელოვანი განსხვავება ორ ალგორითმს შორის - სიზუსტით 0.855!

    სიზუსტე და გაწვევა ასევე გამოიყენება მრუდის ასაგებად და, AUC-ROC– ის მსგავსად, მის ქვეშ მდებარე ფართობის პოვნა.

    აქ შეიძლება აღინიშნოს, რომ მცირე მონაცემთა ნაკრებებზე, PR- მრუდის ქვეშ არსებული ტერიტორია შეიძლება იყოს ზედმეტად ოპტიმისტური, რადგან იგი გამოითვლება ტრაპეციული მეთოდის გამოყენებით, მაგრამ, ჩვეულებრივ, ასეთ დავალებებში არის საკმარისი მონაცემები. დეტალები AUC-ROC და AUC-PR შორის ურთიერთობის შესახებ, იხილეთ აქ.

    ლოგისტიკური ზარალი

    ლოგისტიკური დანაკარგის ფუნქცია განცალკევებულია, განსაზღვრულია როგორც:

    ეს არის ალგორითმის პასუხი

    ომის ობიექტი,

    ნამდვილი კლასის ეტიკეტი

    ომის ობიექტი და

    ნიმუშის ზომა.

    ლოგისტიკური დანაკარგის ფუნქციის მათემატიკური ინტერპრეტაციის შესახებ დეტალები უკვე დაწერილია პოსტის ფარგლებში ხაზოვანი მოდელების შესახებ.
    ეს მეტრიკა იშვიათად ჩნდება ბიზნესის მოთხოვნებში, მაგრამ ხშირად ამოცანებში.
    ინტუიციურად, ლოგოსის მინიმიზაცია შეიძლება ჩაითვალოს ამოცანად სიზუსტის გაზრდის მცდარი პროგნოზების დასჯით. თუმცა, უნდა აღინიშნოს, რომ logloss მკაცრად აჯარიმებს კლასიფიკატორის არასწორი პასუხის ნდობას.

    განვიხილოთ მაგალითი:

    Def logloss_crutch (y_true, y_pred, eps = 1e -15): დაბრუნება - (y_true * np.log (y_pred) + (1 - y_true) * np.log (1 - y_pred)) ბეჭდვა ("Logloss გაურკვეველი კლასიფიკაციით% f "% logloss_crutch (1, 0.5)) >> Logloss გაურკვეველი კლასიფიკაციით 0.693147 ბეჭდვა (" Logloss დარწმუნებული კლასიფიკაციით და სწორი პასუხი% f "% logloss_crutch (1, 0.9)) >> Logloss დარწმუნებული კლასიფიკაციით და სწორი პასუხი 0.105361 ბეჭდვა (" Logloss დარწმუნებული კლასიფიკაციით და არასწორი პასუხი% f "% logloss_crutch (1, 0.1)) >> Logloss დარწმუნებული კლასიფიკაციით და არასწორი პასუხი 2.302585

    გაითვალისწინეთ, თუ როგორ გაიზარდა ლოგოსტი მკვეთრად არასწორი პასუხით და დარწმუნებული კლასიფიკაციით!
    შესაბამისად, ერთ ობიექტზე დაშვებულმა შეცდომამ შეიძლება გამოიწვიოს საერთო ნიმუშის შეცდომის მნიშვნელოვანი დეგრადაცია. ასეთი ობიექტები ხშირად უფრო შორს არის, რაც უნდა გვახსოვდეს, რომ გავფილტროთ ან განვიხილოთ ცალკე.
    ყველაფერი თავის ადგილზე დადგება თუ დახაზავთ logloss გრაფიკს:

    ჩანს, რომ რაც უფრო ნულს უახლოვდება ალგორითმის პასუხი ჭეშმარიტებასთან = 1, მით უფრო მაღალია შეცდომის მნიშვნელობა და უფრო მკვეთრი იზრდება მრუდი.

    შეჯამება:

    • მრავალკლასიანი კლასიფიკაციის შემთხვევაში, საჭიროა ყურადღებით დააკვირდეთ თითოეული კლასის მეტრიკას და დაიცვას გადაწყვეტილების ლოგიკა დავალებებივიდრე მეტრის ოპტიმიზაცია
    • არათანაბარი კლასების შემთხვევაში აუცილებელია სასწავლო კლასების ბალანსის შერჩევა და მეტრიკა, რომელიც სწორად ასახავს კლასიფიკაციის ხარისხს
    • მეტრის არჩევა უნდა მოხდეს საგნის სფეროზე ფოკუსირებით, მონაცემების წინასწარ დამუშავებით და, შესაძლოა, სეგმენტირებით (როგორც მდიდარ და ღარიბ მომხმარებლებად დაყოფის შემთხვევაში)

    გამოსადეგი ბმულები

    1. ევგენი სოკოლოვის კურსი: სემინარი მოდელების არჩევის შესახებ (არის ინფორმაცია რეგრესიული პრობლემების მეტრიკის შესახებ)
    2. პრობლემები AUC-ROC– დან A.G. დიაკონოვა
    3. თქვენ შეგიძლიათ წაიკითხოთ მეტი სხვა მეტრიკის შესახებ kaggle– ზე. თითოეული მეტრის აღწერილობას დაემატა კონკურსის ბმული, სადაც ის იყო გამოყენებული
    4. ბოგდან მელნიკის აკა ld86 პრეზენტაცია გაუწონასწორებელ ნიმუშებზე ტრენინგის შესახებ

    UDC 519.816

    S. V. SEMENIKHIN L. A. DENISOVA

    ომსკის სახელმწიფო ტექნიკური უნივერსიტეტი

    RANGE MACHINE სწავლის მეთოდი

    დაფუძნებულია მოდიფიცირებულ გენეტიკურ ალგორითმზე YRSO METRIC

    განიხილება ინფორმაციის ძიების შედეგების გვერდზე დოკუმენტების რანჟირების პრობლემა და რანჟირების მანქანათმცოდნეობის საკითხები. შემოთავაზებულია მიდგომა რანჟირების ფუნქციის ოპტიმიზაციისათვის NOCO ხარისხის მეტრიკის გამოყენებით მოდიფიცირებული გენეტიკური ალგორითმის საფუძველზე. შემუშავებული ალგორითმების კვლევა (LETO ^ საცდელ კოლექციებზე ჩატარდა და ნაჩვენები იქნა მათი ეფექტურობა რანჟირების მანქანათმცოდნეობისათვის.

    საკვანძო სიტყვები: ინფორმაციის მოძიება, მანქანათმცოდნეობის რანგირება, რელევანტურობა, ოპტიმიზაცია, გენეტიკური ალგორითმები.

    1. შესავალი. თანამედროვე ინფორმაციის მოძიების სისტემებში (ISS), სისტემის მიერ გამოყენებული მონაცემთა მოცულობა იმდენად დიდია, რომ მთავარი ამოცანაა შესაბამისი დოკუმენტების რანჟირება მომხმარებლის საძიებო მოთხოვნის საპასუხოდ. ISS– ის განვითარების ამ ეტაპზე, მანქანათმცოდნეობის (ML) რანჟირება არის ყველაზე დიდი ინტერესი. ML– ის არსებული მიდგომები, რიცხვითი მეთოდების (კერძოდ, გრადიენტის მეთოდების) ან ანალიტიკური გამოთვლების საფუძველზე, აქვს არაერთი მინუსი, რაც მნიშვნელოვნად აისახება ინფორმაციის მოძიების ხარისხზე და დროზე, რაც საჭიროა შესაბამისი დოკუმენტების კლასიფიკაციისათვის.

    კვლევის დასაწყისში განხილული იქნა მანქანათმცოდნეობის რანჟირების მიდგომები, რომელთა უმეტესობა იყენებს გრადიენტის წარმოშობის მეთოდს. განხილულ ნაშრომებში, ML მცირდება ძებნის ხარისხის მეტრიკის ოპტიმიზაციამდე (SEQ), მაგრამ გამოიყენება მხოლოდ უწყვეტი ფუნქციების მქონე მეტრიკა. ეს შეზღუდვა ხშირად იწვევს იმ ფაქტს, რომ ოპტიმიზაციის შედეგად, რანჟირების ფუნქციას აქვს დაბალი ქულა მრავალი მნიშვნელოვანი მიღებულ ინდიკატორზე (DCG, nDCG, საშუალო საშუალო საპროცენტო რანგი და სხვა), რომლებიც არის დისკრეტული ფუნქციები. ნაშრომი გვთავაზობს გენეტიკური ალგორითმების (GA) გამოყენებას რანჟირების სწავლებისას, რათა მინიმუმამდე დაიყვანოს ჰუბერის დანაკარგის ფუნქცია შესაბამისობის, როგორც საცნობარო მნიშვნელობების, ექსპერტთა შეფასებების გამოყენებით. ასევე შემოთავაზებულია ინფორმაციის მიღების ხარისხის დისკრეტული მეტრიკის ოპტიმიზაციაზე დაფუძნებული ML– ის მიდგომა.

    2. მანქანათმცოდნეობის რანჟირების პრობლემის განცხადება. ინფორმაციის მოძიების თანამედროვე სისტემებში, რანჟირების ფუნქცია აგებულია n მარტივი რანჟირების ფუნქციების (PRF) საფუძველზე და შეიძლება დაიწეროს როგორც:

    სადაც SRF¡ არის დოკუმენტის d და q კითხვის მე –5 მარტივი რანჟირების ფუნქცია, WCi არის მე –5 მარტივი რანგის ფუნქციის წონის კოეფიციენტი, n არის რანჟირების სისტემაში PRF– ების რაოდენობა.

    რანჟირებისათვის მანქანათმცოდნეობის მსვლელობისას გამოყენებულ იქნა საძიებო დოკუმენტების B და O მოთხოვნები საცდელი კოლექციიდან LBTOY. ყველა deO მოთხოვნისათვის წყვილი იქმნება თითოეულ deD დოკუმენტთან ერთად. თითოეული ასეთი წყვილისთვის IRS განსაზღვრავს შესაბამისობის მნიშვნელობებს, რომლებიც გამოიყენება ძებნის შედეგების რანჟირებისთვის. რანჟირების ხარისხის შესაფასებლად, სისტემა მოითხოვს საცნობარო მნიშვნელობის მნიშვნელობას E თითოეული დოკუმენტი-შეკითხვის წყვილისთვის ^, ე). ამ მიზნებისათვის გამოიყენება შესაბამისობის ექსპერტული შეფასებები.

    კვლევის ჩასატარებლად გამოყენებულ იქნა ISS, სადაც რეიტინგი შედგენილია N = 5 მარტივი რანჟირების ფუნქციის საფუძველზე SRFi (WC) l г = 1, N, რომლებიც ქმნიან ოპტიმალურობის ვექტორულ კრიტერიუმს:

    სადაც WCе (WC) არის ცვლადი პარამეტრების ვექტორი; (ШС), (ЯБ) არის პარამეტრების და ვექტორული კრიტერიუმების სივრცეები, შესაბამისად.

    გენეტიკური ალგორითმების გამოყენება ML რანგისთვის შესაძლებელს ხდის მაქსიმალურად გაზარდოს დისკრეტული ხარისხის მეტრიკა, როგორიცაა nDCG. საძიებო სისტემაში დოკუმენტების რანჟირების nDCG მეტრიკა განისაზღვრება გამოთქმის შესაბამისად:

    DCG @ n = X 2 ---

    RF (q, d) = X WC. R SRF., I = 1 1 1

    სადაც ნიშანი (p) არის საშუალო შესაბამისობის ქულა, რომელსაც ექსპერტები აძლევენ იმ შედეგებს დოკუმენტში, რომელიც მდებარეობს პოზიციის ჩამონათვალში, gradee; 1 / log2 (2 + p) - კოეფიციენტი დამოკიდებულია დოკუმენტის პოზიციაზე (პირველ დოკუმენტებს უფრო მეტი წონა აქვთ).

    შემდეგ NDCG- ის ნორმალიზებული ვერსია დაიწერება როგორც

    N000 @ n = RSD @ n / g,

    სადაც r არის ნორმალიზაციის ფაქტორი, რომელიც უდრის მაქსიმალურ მნიშვნელობას 0С [ელფოსტა დაცულია] n მოცემული მოთხოვნისათვის (ანუ ტოლია იდეალური რანგის OOO- ს).

    ამრიგად, OSS- ის მეტრიკის ოპტიმიზაციის (მაქსიმიზაციის) მიზნით, ობიექტური ფუნქცია (YM) დაიწერება შემდეგი ფორმით

    3. ძიების შედეგების რანჟირების ხარისხის მეტრიკა. ძიების შედეგებში დოკუმენტების რანჟირებისას, ხარისხის მაჩვენებლები კრიტერიუმებად იქცევა. ISS ხარისხის შეფასების საყოველთაოდ მიღებული მეტრიკის სიიდან შეირჩა სამი ძირითადი, რომელიც აფასებს ინფორმაციის მოპოვების სიზუსტეს, შესაბამისობას და სისრულეს.

    1. ინფორმაციის მოპოვების სიზუსტის კრიტერიუმი

    სადაც a არის ნაპოვნი შესაბამისი დოკუმენტების რაოდენობა, b არის დოკუმენტების რაოდენობა, რომლებიც შეცდომით არის შესაბამისი.

    2. Bpref კრიტერიუმი, რომელიც აფასებს ინფორმაციის მოძიების შესაბამისობას, გამოიყენება R შესაბამისი დოკუმენტებით სამუშაოს დასამუშავებლად და გამოითვლება ფორმულით

    Bpref = - ^ (1 - Non Re ¡ადრე (r) / R). (4)

    აქ, r აღნიშნავს ცნობილ შესაბამის დოკუმენტს, ხოლო NonRelBefore (r) - ცნობილი შეუსაბამო დოკუმენტების რიცხვი r- ზე მაღალია (გაანგარიშებისას მხედველობაში მიიღება სავარაუდო შეუსაბამო დოკუმენტების მხოლოდ პირველი R).

    3. ძიების შედეგების სისრულის კრიტერიუმი

    r = a / (a+ c),

    სადაც a არის ნაპოვნი შესაბამისი დოკუმენტების რიცხვი, c არის უპოვარი შესაბამისი დოკუმენტების რაოდენობა.

    4. საცდელი კოლექციები. მანქანათმცოდნეობის ამოცანაში, რანჟირება მოითხოვს დოკუმენტების ერთობლიობას და შეკითხვებს ექსპერტთა მიერ განსაზღვრული შესაბამისი რელევანტური ქულებით. ეს მონაცემები გამოიყენება რანჟირების ფუნქციის მანქანური სწავლებისთვის, ასევე ხარისხის შესაფასებლად.

    ძიების შედეგების რეიტინგი სისტემის მიხედვით. ML პროცესში, ტესტის კოლექციები გამოიყენება როგორც სასწავლო ნაკრები და, შესაბამისად, მნიშვნელოვან გავლენას ახდენს შედეგებზე. კვლევისათვის გამოყენებულ იქნა დოკუმენტებისა და მოთხოვნების LETOR სატესტო კოლექცია. ეს კოლექცია გამოიყენება Microsoft Research– ის მიერ ინფორმაციის მოძიების კვლევისათვის. მაგიდა 1 გვიჩვენებს LETOR სატესტო კოლექციების მახასიათებლებს.

    5. მოდიფიცირებული გენეტიკური ალგორითმი. რენტგენისათვის მანქანათმცოდნეობაში გენეტიკური ალგორითმების გამოსაყენებლად, პრობლემა ისე უნდა იყოს ფორმულირებული, რომ გამოსავალი დაშიფრული იყოს როგორც ვექტორი (გენოტიპი), სადაც თითოეული გენი შეიძლება იყოს ბიტი, რიცხვი ან სხვა ობიექტი. ამ შემთხვევაში, გენოტიპი წარმოდგენილია წონითი ფაქტორების ვექტორით შესაბამისი რანჟირების ფაქტორებისთვის. გენეტიკური ალგორითმის შესრულების შეწყვეტის პირობა არის ოპტიმალური გადაწყვეტის პოვნა, თაობების რაოდენობის ამოწურვა ან ევოლუციისთვის გამოყოფილი დრო.

    უნდა აღინიშნოს, რომ GAs ყველაზე ეფექტურია გლობალური ექსტრემის რეგიონის მოსაძებნად, თუმცა მათ შეუძლიათ ნელა იმუშაონ, როდესაც აუცილებელია ამ რეგიონში ადგილობრივი მინიმუმის პოვნა. ამ ნაკლოვანების თავიდან აცილების შემოთავაზებული გზა არის მოდიფიცირებული გენეტიკური ალგორითმის (MGA) შექმნა, რომელიც გადადის ადგილობრივ (მაღალსიჩქარიანი) ოპტიმიზაციის ალგორითმზე გლობალური ოპტიმალური რეგიონის ძირითადი GA გამოყენებით. შემოთავაზებული MGA არის ჰიბრიდული მეთოდი, რომელიც დაფუძნებულია კლასიკურ GA და Nelder - Mead მეთოდზე (მარტივი ალგორითმი). ნელდერ -მიდის მეთოდი, ხშირად გამოყენებული არაწრფივი ოპტიმიზაციის ალგორითმი, არის რიცხვითი მეთოდი მრავალგანზომილებიან სივრცეში ობიექტური ფუნქციის მინიმუმის დასადგენად. ამ სტატიაში შემოთავაზებული ჰიბრიდული MGA ალგორითმი გადადის Nelder - Mead მეთოდზე GA– ს შეწყვეტის პირობების დაკმაყოფილების შემდეგ. MGA ალგორითმის ბლოკ -დიაგრამა ნაჩვენებია ნახ. ერთი

    კვლევის ჩატარებისას, ობიექტური ფუნქციის გამოთვლების რაოდენობის შეზღუდვა (Nrf = 16,000) მიღებული იქნა გლობალური ექსტრემის რეგიონის ძებნისას და ნელდერ -მედის მეთოდის საფუძველზე ადგილობრივ ოპტიმიზაციის ალგორითმზე გადასვლის პირობა ( ძირითადი გენეტიკური ალგორითმი ასრულებდა Nrf ოპერაციების 75%).

    6. შედეგები. მანქანური სწავლების ალგორითმის გამოყენებით ჩატარებული კვლევის შედეგად

    ცხრილი 1

    დოკუმენტების რაოდენობა და შეკითხვები სატესტო კოლექციებში

    საცდელი კოლექციის სახელი ქვესისტემის სახელი მოთხოვნათა რაოდენობა დოკუმენტების რაოდენობა

    LETOR 4.0 MQ2007 1692 69623

    LETOR 4.0 MQ2008 784 15211

    LETOR 3.0 OHSUMED 106 16140

    LETOR 3.0 Gov03td 50 49058

    LETOR 3.0 Gov03np 150 148657

    LETOR 3.0 Gov03hp 150 147606

    LETOR 3.0 Gov04td 75 74146

    LETOR 3.0 Gov04np 75 73834

    LETOR 3.0 Gov04hp 75 74409

    ბრინჯი 1. ჰიბრიდული MVL ალგორითმის ბლოკ-დიაგრამა გენეტიკური ალგორითმებისა და ნელდერ-მედის მეთოდის საფუძველზე

    LTR-MGA რანგის მისაღებად მიიღება რანჟირების ფუნქციის WC * წონის ვექტორი. გარდა ამისა, LETOYA საცდელი კოლექციის მონაცემების საფუძველზე შეფასდა რანჟირების ხარისხი, რისთვისაც გამოითვლება ხარისხის მაჩვენებლები. რანგის ხარისხის დისკრეტული მეტრიკა [ელფოსტა დაცულია]აფასებს სისტემის რეაგირების პირველი n დოკუმენტების ხარისხს. საყოველთაოდ მიღებული მეტრიკა რანგის ხარისხის შესაფასებლად არის [ელფოსტა დაცულია], [ელფოსტა დაცულია]და [ელფოსტა დაცულია]ამასთან, მეტრიკაში ცვლილებების უფრო დეტალური განხილვისთვის, რაც დამოკიდებულია ღირებულებებზე [ელფოსტა დაცულია]ყველა n– დან 1 – დან 10 – მდე. შემუშავებული ალგორითმის ეფექტურობა არსებულ გადაწყვეტილებებთან შედარების მიზნით, ჩატარდა შედარებითი ანალიზი LETOIA 3.0 კოლექციებში მოცემული რანჟირების ალგორითმების გამოყენებით. ტესტების კოლექციების TB2003 და TB2004 ალგორითმების გაშვების შედეგები NDCG მეტრიკისთვის ნაჩვენებია ნახ. 2. შედეგები აჩვენებს, რომ LTR-MGA ალგორითმი აღემატება ტესტის ალგორითმებს, უმაღლესი მნიშვნელობებით

    არიან ამისთვის [ელფოსტა დაცულია](პირველი დოკუმენტის დონეზე). LTR-MGA ალგორითმის უპირატესობა განპირობებულია იმით, რომ ექსპერიმენტებში განხილული სატესტო რანჟირების ფუნქციებისგან განსხვავებით, რანჟირების ფუნქციის ოპტიმიზაციის შემოთავაზებულ მიდგომაში, ეს არის NDCG მეტრიკა, რომელიც გამოიყენება როგორც ობიექტური ფუნქცია.

    რანჟირების ხარისხის შესაფასებლად შემოთავაზებული LTR-MGA ალგორითმის გამოყენებისას, გამოითვლება ძიების შედეგებში დოკუმენტების რანჟირების ხარისხის მეტრიკის ღირებულებები (სურ. 3). რანჟირების შედეგების შედარება (ცხრილი 2) ძირითადი რანჟირების ფუნქციის გამოყენებისას, ძირითადი LTR-GA ალგორითმი და შეცვლილი LTR-MGA ალგორითმი მიუთითებს ამ უკანასკნელის უპირატესობაზე.

    გარდა ამისა, კვლევამ შეაფასა MO- ს რანგისთვის საჭირო დრო. ეს აუცილებელია იმის დასადასტურებლად, რომ შემოთავაზებული LTR-MGA მეთოდი ამ ინდიკატორში აღემატება მიდგომას ტრადიციული გამოყენების საფუძველზე.

    ბრინჯი 2. რანჟირების მანქანათმცოდნეობის ალგორითმების შედარება

    საცდელი კოლექციების NDCG მეტრიკის მიხედვით: მარცხნივ - Gov03td მონაცემთა ნაკრები, მარჯვნივ - Gov04td მონაცემთა ნაკრები

    ბრინჯი 3. რანგის ხარისხის მეტრიკის შეფასება ძირითადი რანგის ფორმულისთვის და სწავლის ალგორითმები LTR-GA და LTR-MGA

    რანჟირების ხარისხის მეტრიკა სხვადასხვა რანგის მანქანათმცოდნეობის ალგორითმებისთვის

    მაგიდა 2

    რანჟირების ხარისხის მეტრიკული ძირითადი რანჟირების ფუნქცია LTR-GA LTR-MGA მეტრული ღირებულების გაზრდა,%

    სიზუსტე 0.201 0.251 0.267 26.81

    [ელფოსტა დაცულია](პირველი 5 დოკუმენტი) 0.149 0.31 0.339 90.47

    [ელფოსტა დაცულია](პირველი 10 დოკუმენტი) 0.265 0.342 0.362 29.14

    ბრეფი 0.303 0.316 0.446 51.49

    სისრულე 0.524 0.542 0.732 39.03

    * საუკეთესო მეტრიკის შესაბამისი მნიშვნელობები მონიშნულია ნაცრისფერში

    ონოგენური გენეტიკური ალგორითმი (LTA-OL). ალგორითმების LTЯ-OL და LТЯ-MOL შესრულებაზე დახარჯული დროის შედარების შედეგები ნაჩვენებია ცხრილში. 3

    7. დასკვნა. ამრიგად, ჩატარებულმა კვლევებმა აჩვენა, რომ შემოთავაზებული მიდგომის გამოყენებისას, ISS- ში განხილული რანგის მეტრიკის ღირებულებები იზრდება (საშუალოდ 19.55% -ით LTS-OL ალგორითმთან შედარებით). ეს ადასტურებს, რომ LITA-MOL მუშაობს სწორად და მნიშვნელოვნად აუმჯობესებს რანჟირების ფუნქციას, სხვა სიტყვებით რომ ვთქვათ, ის წარმატებით წყვეტს ოპტიმიზაციის პრობლემას. შეცვლილი ალგორითმის გამოყენება

    ადგილობრივი ოპტიმიზაციის მეთოდის გამოყენების და ობიექტური ფუნქციის გამოთვლების რაოდენობის შეზღუდვის გამო, მანქანათმცოდნეობის დრო შემცირდა (საშუალოდ 17.71% -ით ტრადიციული გენეტიკური ალგორითმის LTIAOL გამოყენებასთან შედარებით).

    მანქანათმცოდნეობის შემუშავებული ალგორითმი LТY-MOL რანჟირებისათვის შეიძლება გამოყენებულ იქნას ISS– ში, რომელიც იყენებს რანჟირების მოდელს მარტივი რანჟირების ფუნქციების კომბინაციის საფუძველზე. თუმცა, გათვალისწინებული უნდა იყოს შემოთავაზებული მიდგომის გამოყენების გარკვეული შეზღუდვები. დაფუძნებული

    მანქანათმცოდნეობის რანგის შესრულების დროის შეფასება სასწავლო ნიმუშის ზომის მიხედვით

    ცხრილი 3

    ტექსტური დოკუმენტის კოლექციის ზომა

    LTR-GA შესრულების დრო

    LTR-MGA ხანგრძლივობა

    შესრულების დროის შემცირება,%

    Საშუალო ღირებულება

    * ტესტის კოლექციის შესაბამისი ზომის საუკეთესო მნიშვნელობები მონიშნულია ნაცრისფერში

    მიღებული შედეგებიდან გამოვლინდა, რომ MO- ს შემდეგ ყველაზე მაღალი ზრდა შეინიშნება რანჟირების ხარისხის მეტრიკაში, რომლის ღირებულებაც ობიექტურ ფუნქციად იქნა მიღებული. ამავე დროს, დანარჩენ მეტრიკას შეიძლება არ ჰქონდეს მნიშვნელოვანი გაუმჯობესება და ზოგიერთ შემთხვევაში გაუარესდეს კიდეც მათი ღირებულებები. როგორც ერთ-ერთი შესაძლო მიდგომა ამ დეფიციტის აღმოსაფხვრელად, შემოთავაზებულია ოპტიმიზაციის პრობლემის გადაჭრა, როგორც მრავალ კრიტერიუმი: ძებნის შედეგების რამოდენიმე ძირითადი რანგის ერთნაირად გაუმჯობესება, ოპტიმიზაციის ნაცვლად. გარდა ამისა, შემდგომ კვლევებში, დაგეგმილია მეთოდოლოგიის შემუშავება ობიექტური ფუნქციის შესაქმნელად, რომელიც დაფუძნებულია ძირითადი ხარისხის რანგის ხარისხის მაჩვენებლების სწორხაზოვან კონვოლაციაზე ინფორმაციის მოპოვების პროცესის გასაუმჯობესებლად.

    ბიბლიოგრაფიული სია

    1. ჰალსტუხი-ლიუ. ინფორმაციის მოძიების რანჟირების სწავლა // ჟურნალის საფუძვლები და ტენდენციები ინფორმაციის მოძიებაში. ტომი 3, გამოცემა 3. მარტი 2009. გვ. 225-331.

    2. კრისტოფერ ჯ. ბურგესი, ტალ შექედი, ერინ რენშოუ. გრადიენტური წარმოშობის გამოყენებით რანჟირების სწავლა // საქმის წარმოება ICML "05 მანქანური სწავლების 22-ე საერთაშორისო კონფერენციის მასალები. 2005 წ. გვ. 89-96.

    3. სემენიხინი, ს.ვ. მანქანათმცოდნეობის მიდგომების გამოძიება საძიებო სისტემის მიერ გენეტიკური ალგორითმების საფუძველზე საძიებო სისტემით / ს. ვ. სემინიხინი // ახალგაზრდა რუსეთი: მოწინავე ტექნოლოგიები ინდუსტრიაში. - 2013. - No 2. - P. 82 - 85.

    4. მულტიკრიტერიული ოპტიმიზაცია გენეტიკური ალგორითმების საფუძველზე კონტროლის სისტემების სინთეზში: მონოგრაფია. / ლ. დენისოვა. - ომსკი: გამომცემლობა OmSTU, 2014 .-- 170 გვ. -ISBN 978-5-8149-1822-2.

    5. დენისოვა, ლ. ა. კონტროლის სისტემის პარამეტრული სინთეზის ავტომატიზაცია გენეტიკური ალგორითმის გამოყენებით / ლ. დ. დენისოვა, ვ. ა. მეშჩერიაკოვი // ავტომატიზაცია ინდუსტრიაში. - 2012. - No 7. - გვ. 34 - 38.

    6. Huber, Peter J. Robust Estimation of Location Parameter // Annals of Statistics. - 1964. - No 53. - გვ. 73-101.

    7. სემენიხინი, ს.ვ. ინფორმაციის მოპოვების ავტომატიზაცია მულტიკრიტერიული ოპტიმიზაციისა და გენეტიკური ალგორითმების საფუძველზე / ს. ვ. სემინიხინი, ლ. ა. დენისოვა // სისტემების, მექანიზმებისა და მანქანების დინამიკა. - 2014. - No 3. - გვ. 224 - 227.

    8. ჰალსტუხი იან ლიუ, ჯუნ სი, ტაო ცინი, ვენნიონ სიონგი და ჰანგ ლი. LETOR: საინფორმაციო მონაცემთა ბაზა ინფორმაციის მოძიებისათვის რანგის შესწავლის კვლევისათვის // SIGIR 2007 სემინარი ინფორმაციის მოძიების რანჟირების სწავლის შესახებ. - 2007 .-- S. 3-10.

    9. აგეევი, MS RMIP ოფიციალური მეტრიკა "2004 / MS Ageev, IE Kuralenok // II რუსული სემინარი ინფორმაციის მოპოვების მეთოდების შეფასების შესახებ (ROMIP 2004), პუშჩინო, 2004: tr.; Ed. S. Nekrest'yanova. - პეტერბურგი: ქიმიის კვლევითი ინსტიტუტი, პეტერბურგის სახელმწიფო უნივერსიტეტი. - გვ. 142-150.

    10. J. A. Nelder, R. Mead, ფუნქციის მინიმიზაციის მარტივი მეთოდი, The Computer Journal 7 (1965). 308-313 წწ.

    სვიატოსლავ ვიტალიევიჩ სემენიხინი, ავტომატური ინფორმაციის დამუშავებისა და კონტროლის სისტემების დეპარტამენტის ასპირანტი. კორესპონდენციის მისამართი: [ელფოსტა დაცულია]დენისოვა ლუდმილა ალბერტოვნა, ტექნიკური მეცნიერებათა დოქტორი, ავტომატური ინფორმაციის დამუშავებისა და კონტროლის სისტემების დეპარტამენტის ასოცირებული პროფესორი. კორესპონდენციის მისამართი: [ელფოსტა დაცულია]