tf seq2seq
1.0.0
لبنات البناء الأساسية هي هياكل RNN المشفر والرائد وآلية الانتباه.
تم تنفيذ الحزمة إلى حد كبير باستخدام أحدث وحدات TF.Contrib.seq2Seq
الدعم الحزمة
للمعالجة المسبقة لبيانات موازية الخام من sample_data.src و sample_data.trg ، ما عليك سوى تشغيل
cd data /
. / preprocess . sh src trg sample_data $ { max_seq_len }يؤدي تشغيل الرمز أعلاه إلى إجراء خطوات مسبقة المستخدمة على نطاق واسع للترجمة الآلية (MT).
لتدريب نموذج seq2seq ،
$ python train . py -- cell_type 'lstm'
-- attention_type 'luong'
-- hidden_units 1024
-- depth 2
-- embedding_size 500
-- num_encoder_symbols 30000
-- num_decoder_symbols 30000 ...لتشغيل النموذج المدرب لفك تشفيره ،
$ python decode . py -- beam_width 5
-- decode_batch_size 30
-- model_path $PATH_TO_A_MODEL_CHECKPOINT ( e . g . model / translate . ckpt - 100 )
-- max_decode_step 300
-- write_n_best False
-- decode_input $PATH_TO_DECODE_INPUT
-- decode_output $PATH_TO_DECODE_OUTPUT
إذا- --beam_width=1 ، يتم فك تشفير الجشع في كل خطوة زمنية.
معاملات البيانات
--source_vocabulary : مسار إلى المفردات المصدر--target_vocabulary : مسار إلى المفردات المستهدفة--source_train_data : مسار إلى بيانات تدريب المصدر--target_train_data : مسار إلى بيانات التدريب المستهدفة--source_valid_data : مسار إلى بيانات التحقق من صحة المصدر--target_valid_data : مسار إلى بيانات التحقق من الصحة الهدفparams الشبكة
--cell_type : خلية RNN لاستخدامها في التشفير وفك التشفير (الافتراضي: LSTM)--attention_type : آلية الانتباه (Bahdanau ، Luong) ، (افتراضي: Bahdanau)--depth : عدد الوحدات المخفية لكل طبقة في النموذج (افتراضي: 2)--embedding_size : تضمين أبعاد مدخلات التشفير والمشفر (الافتراضي: 500)--num_encoder_symbols : حجم المفردات المصدر للاستخدام (افتراضي: 30000)--num_decoder_symbols : حجم المفردات الهدف للاستخدام (الافتراضي: 30000)--use_residual : استخدم الاتصال المتبقي بين الطبقات (الافتراضي: صحيح)--attn_input_feeding : استخدم طريقة تغذية الإدخال في وحدة فك ترميز الانتباه (Luong et al. ، 2015) (الافتراضي: صحيح)--use_dropout : استخدم التسرب في إخراج خلية RNN (افتراضي: صواب)--dropout_rate : احتمال التسرب لمخرجات الخلايا (0.0: لا تسرب) (افتراضي: 0.3)تدريب المعلمات
--learning_rate : عدد الوحدات المخفية لكل طبقة في النموذج (افتراضي: 0.0002)--max_gradient_norm : تدرجات مقطع لهذا المعيار (الافتراضي 1.0)--batch_size : حجم الدُفعة--max_epochs : أقصى عصر التدريب--max_load_batches : الحد الأقصى لعدد الدُفعات إلى الجلب المسبق في وقت واحد.--max_seq_length : الحد الأقصى لطول التسلسل--display_freq : عرض حالة التدريب كل هذا التكرار--save_freq : حفظ نقطة تفتيش النموذج كل هذا التكرار--valid_freq : قم بتقييم النموذج كل هذا التكرار: مطلوب alight_data--optimizer : Optimizer للتدريب: (Adadelta ، Adam ، RMSPROP) (افتراضي: آدم)--model_dir : مسار لحفظ نقاط تفتيش النموذج--model_name : اسم الملف المستخدم لنقاط التفتيش النموذجية--shuffle_each_epoch : مجموعة بيانات تدريب خلط ورق اللعب لكل فترة (افتراضي: صواب)--sort_by_length : فرز minibatches مسبقًا بواسطة أطوال التسلسل المستهدف (الافتراضي: صواب)فك تشفير البراميل
--beam_width : عرض شعاع يستخدم في Beamsearch (افتراضي: 1)--decode_batch_size : حجم الدُفعة المستخدمة في فك التشفير--max_decode_step : الحد الأقصى لخطوة الوقت في فك التشفير (الافتراضي: 500)--write_n_best : كتابة قائمة Beamsearch n-Best (n = beam_width) (افتراضي: خطأ)--decode_input : مسار ملف الإدخال لفك الشفر--decode_output : مسار ملف الإخراج من إخراج فك التشفيرمعاملات وقت التشغيل
--allow_soft_placement : السماح للجهاز الناعم الموضع--log_device_placement : وضع سجل العمليات على الأجهزة يعتمد التنفيذ على المشاريع التالية:
للحصول على أي تعليقات وتعليقات ، يرجى مراسلتي عبر البريد الإلكتروني على [email protected] أو فتح مشكلة هنا.