Geri bildirim kalitesi ve ilgililik ölçümü

İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

Mina Parham

AI Engineer

Aykırı geri bildirimi tespit etme uygulaması

Örneğin:

  • Olumlu Yorum:
    • "Bu ürünü çok sevdim!"
  • Olumsuz Yorum:
    • "Berbat hizmet."
  • Nötr Yorum:
    • "Beklendiği gibi çalışıyor."
  • Aykırı Yorum:
    • "Gökyüzü mavidir."

Beş yıldızdan dördü seçili ve bir el beşinci yıldızı ekliyor

İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

Aykırı geri bildirimleri tespit etme

import numpy as np
def least_confidence(prob_dist):
    simple_least_conf = np.nanmax(prob_dist) 
    num_labels = float(prob_dist.size)  # number of labels
    least_conf = (1 - simple_least_conf) * (num_labels / (num_labels - 1))
    return least_conf
def filter_low_confidence_predictions(prob_dists, threshold=0.5):
    filtered_indices = [i for i, prob_dist in enumerate(prob_dists) 
                        if least_confidence(prob_dist) > threshold]
    return filtered_indices
İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

Aykırı geri bildirimleri tespit etme

prob_distribution_array = np.array([
    [0.1, 0.1, 0.2],   # Low confidence (0.2)
    [0.6, 0.2, 0.1],   # High confidence (0.6)
    [0.3, 0.3, 0.4]   # Medium confidence (0.4)
])

# Filter function with 0.5 threshold filtered_feedback_indices, filtered_confidences = filter_low_confidence_predictions(prob_distribution_array, threshold=0.5)
print(f"Filtered Confidence Scores: {filtered_confidences}")
Filtered Confidence Scores: [0.6]
İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

K-means

  • Anomali tespitinde etkilidir, hızlı uygulanır
  • Küme sayısını alan bilgisi veya analitikle belirleyin

k-means algoritmasını gösteren bir diyagram.

İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

k-means ile anomali tespiti

import numpy as np
import pandas as pd
from sklearn.cluster import KMeans


def detect_anomalies(data, n_clusters=3): kmeans = KMeans(n_clusters=n_clusters, random_state=42) clusters = kmeans.fit_predict(data) centers = kmeans.cluster_centers_
# Calculate distances from cluster centers distances = np.linalg.norm(data - centers[clusters], axis=1) return distances
İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

k-means ile anomali tespiti

feedback_data = np.array([
    [4.0],  # Close to center of cluster
    [4.5],  # Close to center of cluster
    [1.0],  # Anomaly - far from main group
    [4.1],  # Close to center of cluster
    [3.9]  # Close to center of cluster
])

anomalies = detect_anomalies(confidences, n_clusters=1)
print(anomalies)
[0.5 1.  2.5   0.6 0.4]
İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

Hadi pratik yapalım!

İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)

Preparing Video For Download...