التعلم العصبي القابل للتطوير لنماذج الترتيب (LTR)

import tensorflow as tf
import tensorflow_datasets as tfds
import tensorflow_ranking as tfr

# Prep data
ds = tfds.load("mslr_web/10k_fold1", split="train")
ds = ds.map(lambda feature_map: {
    "_mask": tf.ones_like(feature_map["label"], dtype=tf.bool),
    **feature_map
})
ds = ds.shuffle(buffer_size=1000).padded_batch(batch_size=32)
ds = ds.map(lambda feature_map: (
    feature_map, tf.where(feature_map["_mask"], feature_map.pop("label"), -1.)))

# Create a model
inputs = {
    name: tf.keras.Input(shape=(None, 1), dtype=tf.float32, name=name)
    for name in ds.element_spec[0]
    if name != "_mask"
}
norm_inputs = [tf.keras.layers.BatchNormalization()(x) for x in inputs.values()]
x = tf.concat(norm_inputs, axis=-1)
for layer_width in [128, 64, 32]:
  x = tf.keras.layers.Dense(units=layer_width)(x)
  x = tf.keras.layers.Activation(activation=tf.nn.relu)(x)
scores = tf.squeeze(tf.keras.layers.Dense(units=1)(x), axis=-1)

# Compile and train
model = tf.keras.Model(inputs=inputs, outputs=scores)
model.compile(
    optimizer=tf.keras.optimizers.Adam(learning_rate=0.01),
    loss=tfr.keras.losses.SoftmaxLoss(),
    metrics=tfr.keras.metrics.get("ndcg", topn=5, name="NDCG@5"))
model.fit(ds, epochs=3)
تشغيل في جهاز كمبيوتر محمول

TensorFlow الترتيب هي مكتبة مفتوحة المصدر لتطوير متدرجة، والعصبية التعلم إلى رتبة (LTR) نماذج. وتستخدم ترتيب النماذج عادة في محركات البحث والتوصية، ولكن كما تم تطبيقها بنجاح في طائفة واسعة من المجالات، بما في ذلك الترجمة الآلية ، نظم حوار التجارة الإلكترونية ، يحلون SAT ، تخطيط المدن الذكية ، وحتى علم الأحياء الحسابي.

يأخذ نموذج الترتيب قائمة بالعناصر (صفحات الويب ، والمستندات ، والمنتجات ، والأفلام ، وما إلى ذلك) وينشئ قائمة بترتيب محسن ، مثل العناصر الأكثر صلة في الأعلى والعناصر الأقل صلة في الأسفل ، عادةً استجابةً لـ استعلام المستخدم:

تدعم هذه المكتبة وظائف الخسارة المعيارية ، الزوجية ، والقائمة لنماذج LTR. كما أنها تدعم مجموعة واسعة من مقاييس المستوى، بما في ذلك متوسط المتبادلة الرتبة (MRR) و تطبيع مخفضة التراكمي ربح (NDCG)، حتى تتمكن من تقييم ومقارنة هذه النهج لمهمة الترتيب الخاص بك. توفر مكتبة التصنيف أيضًا وظائف لتحسين مناهج التصنيف التي يتم البحث عنها واختبارها وبناءها بواسطة مهندسي التعلم الآلي في Google.

تبدأ مع TensorFlow مكتبة الترتيب عن طريق التحقق من البرنامج التعليمي . تعلم المزيد عن قدرات المكتبة من خلال قراءة لمحة المغادرة شفرة المصدر لTensorFlow الترتيب على جيثب .