الحوار هو مشروع chatbot ياباني.
الهندسة المعمارية المستخدمة في هذا المشروع هي نموذج EncoderDecoder الذي يحتوي على BERT Encoder وTransformer Decoder.
المقالة مكتوبة باللغة اليابانية.
يمكنك تشغيل البرنامج النصي للتدريب والتقييم على google colab دون إنشاء بيئة.
الرجاء الضغط على الرابط التالي.
لاحظ أنه في دفتر التدريب، يتم وصف أمر التنزيل في نهاية الملاحظة، ولكن لم يتم اختباره بعد. لذلك، إذا قمت بتشغيل دفتر التدريب ولم تتمكن من تنزيل ملف الوزن المدرب، فيرجى التنزيل يدويًا.
مدونة مكتوبة باللغة اليابانية
قام @ycat3 بإنشاء مثال لتحويل النص إلى كلام باستخدام هذا المشروع لإنشاء الجملة وشبكة Wavenet المتوازية لتركيب الكلام. لا تتم مشاركة كود المصدر، ولكن يمكنك إعادة إنتاجه إذا قمت بالاستفادة من Parallel Wavenet. تحتوي هذه المدونة على بعض العينات الصوتية، لذا يرجى محاولة الاستماع إليها.
أرغب في إنشاء تطبيق يسمح لنا بالتحدث مع الذكاء الاصطناعي صوتيًا باستخدام تركيب الكلام والتعرف على الكلام إذا كان لدي الكثير من وقت الفراغ، ولكن الآن لا أستطيع القيام بذلك بسبب الاستعداد للامتحانات...
2 عصر
لا يزال هذا النموذج يحتوي على مشكلة الاستجابة الباهتة.
لحل هذه المشكلة أنا أبحث الآن.
ثم وجدت الورقة تناولت هذه المشكلة.
وظيفة موضوعية أخرى لتعزيز التنوع لتوليد الحوار العصبي
ينتمي المؤلفون إلى معهد نارا للعلوم والتكنولوجيا المعروف أيضًا باسم NAIST.
يقترحون الوظيفة الموضوعية الجديدة لتوليد الحوار العصبي.
آمل أن تساعدني هذه الطريقة في حل هذه المشكلة.
في جوجل درايف.
الحزم المطلوبة هي
في حالة حدوث أخطاء بسبب الحزم، يرجى تثبيت الحزم المفقودة.
مثال إذا كنت تستخدم conda.
# create new environment
$ conda create -n dialog python=3.7
# activate new environment
$ activate dialog
# install pytorch
$ conda install pytorch torchvision cudatoolkit={YOUR_VERSION} -c pytorch
# install rest of depending package except for MeCab
$ pip install transformers tqdm neologdn emoji
# #### Already installed MeCab #####
# ## Ubuntu ###
$ pip install mecab-python3
# ## Windows ###
# check that "path/to/MeCab/bin" are added to system envrionment variable
$ pip install mecab-python-windows
# #### Not Installed MeCab #####
# install Mecab in accordance with your OS.
# method described in below is one of the way,
# so you can use your way if you'll be able to use transformers.BertJapaneseTokenizer.
# ## Ubuntu ###
# if you've not installed MeCab, please execute following comannds.
$ apt install aptitude
$ aptitude install mecab libmecab-dev mecab-ipadic-utf8 git make curl xz-utils file -y
$ pip install mecab-python3
# ## Windows ###
# Install MeCab from https://github.com/ikegami-yukino/mecab/releases/tag/v0.996
# and add "path/to/Mecab/bin" to system environment variable.
# then run the following command.
$ pip install mecab-python-windows
# in config.py, line 24
# default value is './data'
data_dir = 'path/to/dir_contains_training_data'
إذا كنت مستعدًا لبدء التدريب، فقم بتشغيل البرنامج النصي الرئيسي.
$ python main.py
# in config.py, line 24
# default value is './data'
data_dir = 'path/to/dir_contains_pretrained'
$ python run_eval.py
إذا كنت تريد الحصول على مزيد من بيانات المحادثة، فيرجى استخدام get_tweet.py
لاحظ أنه يتعين عليك تغيير Consumer_key وaccess_token حتى تتمكن من استخدام هذا البرنامج النصي.
وبعد ذلك قم بتنفيذ الأوامر التالية.
# usage
$ python get_tweet.py " query " " Num of continuous utterances "
# Example
# This command works until occurs errors
# and makes a file named "tweet_data_私は_5.txt" in "./data"
$ python get_tweet.py 私は 5
إذا قمت بتنفيذ أمر المثال، فسيبدأ البرنامج النصي في جمع 5 جمل متتالية إذا كانت الجملة الأخيرة تحتوي على "私は".
مهما قمت بتعيين 3 أرقام أو أكثر على "الألفاظ المستمرة"، فإن make_training_data.py يقوم تلقائيًا بإنشاء زوج من الألفاظ.
ثم قم بتنفيذ الأمر التالي.
$ python make_training_data.py
يقوم هذا البرنامج النصي بإنشاء بيانات التدريب باستخدام "./data/tweet_data_*.txt"، تمامًا مثل الاسم.
التشفير: بيرت
وحدة فك التشفير: وحدة فك تشفير محولات الفانيليا
الخسارة: CrossEntropy
محسن: AdamW
Tokenizer: BertJapaneseTokenizer
إذا كنت تريد المزيد من المعلومات حول بنية BERT أو Transformer، فيرجى الرجوع إلى المقالة التالية.