Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Sempurnakan model bahasa transformator untuk keragaman linguistik dengan Hugging Face di Amazon SageMaker

Sekitar 7,000 bahasa digunakan saat ini. Meskipun ada upaya di akhir abad ke-19 untuk menemukan bahasa yang dibangun seperti Volapük atau Esperanto, tidak ada tanda penyatuan. Orang masih memilih untuk membuat bahasa baru (pikirkan tentang karakter film favorit Anda yang berbicara Klingon, Dothraki, atau Peri).

Saat ini, contoh pemrosesan bahasa alami (NLP) didominasi oleh bahasa Inggris, bahasa ibu hanya 5% dari populasi manusia dan hanya digunakan oleh 17%.

Grafik membagi digital didefinisikan sebagai kesenjangan antara mereka yang dapat mengakses teknologi digital dan mereka yang tidak bisa. Kurangnya akses ke pengetahuan atau pendidikan karena hambatan bahasa juga berkontribusi pada kesenjangan digital, tidak hanya antara orang-orang yang tidak berbicara bahasa Inggris, tetapi juga untuk orang-orang berbahasa Inggris yang tidak memiliki akses ke konten non-Inggris, yang mengurangi keragaman pemikiran dan pengetahuan. Ada banyak hal yang harus dipelajari bersama.

Dalam posting ini, kami merangkum tantangan bahasa sumber daya rendah dan bereksperimen dengan pendekatan solusi berbeda yang mencakup lebih dari 100 bahasa menggunakan transformer Hugging Face di Amazon SageMaker.

Kami menyempurnakan berbagai model bahasa berbasis transformator yang telah dilatih sebelumnya untuk tugas tanya jawab. Kami menggunakan bahasa Turki dalam contoh kami, tetapi Anda dapat menerapkan pendekatan ini ke bahasa lain yang didukung. Fokus kami adalah pada varian BERT [1], karena fitur hebat BERT adalah arsitektur terpadunya di berbagai tugas.

Kami mendemonstrasikan beberapa manfaat menggunakan transformer Hugging Face di Amazon SageMaker, seperti pelatihan dan eksperimen dalam skala besar, serta peningkatan produktivitas dan efisiensi biaya.

Ikhtisar NLP

Ada beberapa perkembangan besar dalam NLP sejak 2017. Munculnya arsitektur pembelajaran mendalam seperti transformer [2], teknik pembelajaran tanpa pengawasan untuk melatih model semacam itu pada kumpulan data yang sangat besar, dan pembelajaran transfer telah secara signifikan meningkatkan state-of-the- seni dalam pemahaman bahasa alami. Kedatangan hub model pra-terlatih telah semakin mendemokratisasi akses ke pengetahuan kolektif komunitas NLP, menghilangkan kebutuhan untuk memulai dari awal.

Model bahasa adalah model NLP yang belajar memprediksi kata berikutnya (atau kata bertopeng apa pun) secara berurutan. Keindahan asli model bahasa sebagai titik awal ada tiga: Pertama, penelitian telah menunjukkan bahwa model bahasa yang dilatih pada data korpus teks besar mempelajari makna kata yang lebih kompleks daripada metode sebelumnya. Misalnya, untuk dapat memprediksi kata berikutnya dalam sebuah kalimat, model bahasa harus pandai memahami konteks, semantik, dan juga tata bahasa. Kedua, untuk melatih model bahasa, data berlabel—yang langka dan mahal—tidak diperlukan selama pra-pelatihan. Ini penting karena sejumlah besar data teks tak berlabel tersedia untuk umum di web dalam banyak bahasa. Ketiga, telah ditunjukkan bahwa sekali model bahasa cukup pintar untuk memprediksi kata berikutnya untuk kalimat tertentu, relatif mudah untuk melakukan tugas NLP lainnya seperti analisis sentimen atau menjawab pertanyaan dengan data berlabel yang sangat sedikit, karena fine-tuning digunakan kembali. representasi dari model bahasa pra-terlatih [3].

Layanan NLP yang terkelola sepenuhnya juga telah mempercepat adopsi NLP. Amazon Comprehend adalah layanan terkelola sepenuhnya yang memungkinkan analitik teks untuk mengekstrak wawasan dari konten dokumen, dan mendukung berbagai bahasa. Amazon Comprehend mendukung klasifikasi kustom dan pengenalan entitas kustom serta memungkinkan Anda membangun model NLP kustom yang spesifik untuk kebutuhan Anda, tanpa memerlukan keahlian ML apa pun.

Tantangan dan solusi untuk bahasa sumber daya rendah

Tantangan utama untuk sejumlah besar bahasa adalah bahwa mereka memiliki data yang relatif lebih sedikit yang tersedia untuk pelatihan. Ini disebut bahasa sumber daya rendah. Makalah m-BERT [4] dan makalah XLM-R [7] mengacu pada bahasa Urdu dan Swahili sebagai bahasa sumber daya rendah.

Gambar berikut menentukan kode ISO lebih dari 80 bahasa, dan perbedaan ukuran (dalam skala log) antara dua pra-pelatihan utama [7]. Di Wikipedia (oranye), hanya ada 18 bahasa dengan lebih dari 1 juta artikel dan 52 bahasa dengan lebih dari 1,000 artikel, tetapi 164 bahasa dengan hanya 1–10,000 artikel [9]. Korpus CommonCrawl (biru) meningkatkan jumlah data untuk bahasa sumber daya rendah sebanyak dua kali lipat. Namun demikian, mereka masih relatif kecil dibandingkan dengan bahasa sumber daya tinggi seperti Inggris, Rusia, atau Jerman.

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Dalam hal nomor artikel Wikipedia, bahasa Turki adalah bahasa lain dalam kelompok yang sama dengan lebih dari 100,000 artikel (ke-28), bersama dengan bahasa Urdu (ke-54). Dibandingkan dengan bahasa Urdu, bahasa Turki akan dianggap sebagai bahasa sumber daya menengah. Bahasa Turki memiliki beberapa karakteristik menarik, yang dapat membuat model bahasa lebih kuat dengan menciptakan tantangan tertentu dalam linguistik dan tokenisasi. Ini adalah bahasa aglutinatif. Ini memiliki urutan kata yang sangat bebas, morfologi yang kompleks, atau tenses tanpa padanan bahasa Inggris. Frasa yang terbentuk dari beberapa kata dalam bahasa seperti bahasa Inggris dapat diungkapkan dengan bentuk kata tunggal, seperti yang ditunjukkan pada contoh berikut.

Turki Inggris
kucing Kucing
kucingmembaca Kucings
kucinggilmembaca Keluarga dari kucing
kucinghari Milik the keluarga kucing
kucingleştirebileceklerimizdenmişçesineyken Ketika sepertinya itu adalah salah satu yang bisa kita buat kucing

Dua pendekatan solusi utama adalah model khusus bahasa atau model multibahasa (dengan atau tanpa pengawasan lintas bahasa):

  • Model bahasa monolingual – Pendekatan pertama adalah menerapkan varian BERT ke bahasa target tertentu. Semakin banyak data pelatihan, semakin baik kinerja model.
  • Model bahasa bertopeng multibahasa – Pendekatan lainnya adalah dengan melatih model transformator besar pada banyak bahasa. Pemodelan bahasa multibahasa bertujuan untuk mengatasi kurangnya tantangan data untuk bahasa sumber daya rendah dengan pra-pelatihan pada sejumlah besar bahasa sehingga tugas NLP yang dipelajari dari satu bahasa dapat ditransfer ke bahasa lain. Model bahasa bertopeng multibahasa (MLM) telah mendorong tugas pemahaman lintas bahasa yang canggih. Dua contoh adalah:
    • BERT multibahasa – Model BERT multibahasa dilatih dalam 104 bahasa berbeda menggunakan korpus Wikipedia. Namun, telah ditunjukkan bahwa itu hanya menggeneralisasi dengan baik di seluruh struktur linguistik dan fitur tipologis yang serupa (misalnya, bahasa dengan urutan kata yang serupa). Multilingualitasnya berkurang terutama untuk bahasa dengan urutan kata yang berbeda (misalnya, subjek/objek/kata kerja) [4].
    • XLM-R – Model bahasa lintas bahasa (XLM) dilatih dengan tujuan lintas bahasa menggunakan kumpulan data paralel (teks yang sama dalam dua bahasa yang berbeda) atau tanpa tujuan lintas bahasa menggunakan kumpulan data satu bahasa [6]. Penelitian menunjukkan bahwa bahasa dengan sumber daya rendah mendapat manfaat dari penskalaan ke lebih banyak bahasa. XLM-RoBERTa adalah model berbasis transformator yang terinspirasi oleh RoBERTa [5], dan titik awalnya adalah proposisi bahwa BERT multibahasa dan XLM kurang disetel. Ini dilatih pada 100 bahasa menggunakan korpus Wikipedia dan CommonCrawl, sehingga jumlah data pelatihan untuk bahasa sumber daya rendah kira-kira dua kali lipat lebih besar dibandingkan dengan m-BERT [7].

Tantangan lain dari model bahasa multibahasa untuk bahasa sumber daya rendah adalah ukuran kosakata dan tokenisasi. Karena semua bahasa menggunakan kosakata bersama yang sama dalam model bahasa multibahasa, ada trade-off antara meningkatkan ukuran kosakata (yang meningkatkan persyaratan komputasi) vs menguranginya (kata-kata yang tidak ada dalam kosakata akan ditandai sebagai tidak dikenal, atau menggunakan karakter alih-alih kata-kata sebagai token akan mengabaikan struktur apa pun). Algoritma tokenisasi kata-piece menggabungkan manfaat dari kedua pendekatan. Misalnya, secara efektif menangani kata-kata di luar kosa kata dengan membagi kata menjadi subkata sampai ada dalam kosa kata atau sampai karakter individu tercapai. Tokenisasi berbasis karakter tidak terlalu berguna kecuali untuk bahasa tertentu, seperti bahasa Cina. Ada teknik untuk mengatasi tantangan untuk bahasa sumber daya rendah, seperti pengambilan sampel dengan distribusi tertentu [6].

Tabel berikut menggambarkan bagaimana tiga tokenizer yang berbeda berperilaku untuk kata “kedileri” (artinya “kucingnya”). Untuk bahasa dan tugas NLP tertentu, ini akan membuat perbedaan. Misalnya, untuk tugas menjawab pertanyaan, model mengembalikan rentang indeks token awal dan indeks token akhir; mengembalikan "kediler" ("kucing") atau "kedileri" ("kucingnya") akan kehilangan beberapa konteks dan menyebabkan hasil evaluasi yang berbeda untuk metrik tertentu.

Model Terlatih Ukuran kosakata Tokenisasi untuk “Kedileri”*
dbmdz/bert-base-turkish-tanpa casing 32,000 Token [CLS] kucing ##saya [SEP]
ID masukan 2 23714 1023 3
bert-base-multibahasa-tanpa huruf 105,879 Token [CLS] ked ##iler ##saya [SEP]
ID masukan 101 30210 33719 10116 102
deepset/xlm-roberta-base-squad2 250,002 Token Ke Ke di leri
ID masukan 0 1345 428 1341 .
*Dalam bahasa Inggris: (Ini) kucing

Oleh karena itu, meskipun bahasa sumber daya rendah mendapat manfaat dari model bahasa multibahasa, melakukan tokenisasi di seluruh kosakata bersama mungkin mengabaikan beberapa fitur linguistik untuk bahasa tertentu.

Pada bagian berikutnya, kami membandingkan tiga pendekatan dengan menyempurnakannya untuk tugas menjawab pertanyaan menggunakan dataset QA untuk bahasa Turki: BERTurk [8], BERT multibahasa [4], dan XLM-R [7].

Ikhtisar solusi

Alur kerja kami adalah sebagai berikut:

  1. Siapkan dataset dalam Studio Amazon SageMaker lingkungan notebook dan unggah ke Layanan Penyimpanan Sederhana Amazon (Amazon S3).
  2. Luncurkan tugas pelatihan paralel di wadah pembelajaran mendalam pelatihan SageMaker dengan menyediakan skrip penyesuaian.
  3. Kumpulkan metadata dari setiap eksperimen.
  4. Bandingkan hasil dan identifikasi model yang paling tepat.

Diagram berikut menggambarkan arsitektur solusi.

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Untuk informasi lebih lanjut tentang notebook Studio, lihat Selami jauh ke dalam arsitektur Notebook Amazon SageMaker Studio. Untuk informasi lebih lanjut tentang bagaimana Hugging Face terintegrasi dengan SageMaker, lihat AWS dan Hugging Face berkolaborasi untuk menyederhanakan dan mempercepat adopsi model Pemrosesan Bahasa Alami.

Siapkan kumpulan datanya

Pustaka Hugging Face Datasets menyediakan metode pemrosesan data yang andal untuk menyiapkan set data dengan cepat untuk pelatihan dalam model deep learning. Kode berikut memuat set data QA Turki dan menjelajahi apa yang ada di dalamnya:

data_files = {}
data_files["train"] = 'data/train.json'
data_files["validation"] = 'data/val.json' ds = load_dataset("json", data_files=data_files) print("Number of features in dataset: n Train = {}, n Validation = {}".format(len(ds['train']), len(ds['validation'])))

Ada sekitar 9,000 sampel.

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Dataset input sedikit diubah menjadi format yang diharapkan oleh model yang telah dilatih sebelumnya dan berisi kolom berikut:

df = pd.DataFrame(ds['train'])
df.sample(1)

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.
Terjemahan bahasa Inggris dari output adalah sebagai berikut:

  • konteks – Resit Emre Kongar (lahir 13 Oktober 1941, Istanbul), sosiolog Turki, profesor.
  • pertanyaan – Apa gelar akademik Emre Kongar?
  • menjawab – Profesor

Skrip penyetelan halus

Pustaka Hugging Face Transformers menyediakan kode contoh untuk menyempurnakan model untuk tugas menjawab pertanyaan, yang disebut run_qa.py. Kode berikut menginisialisasi pelatih:

 # Initialize our Trainer trainer = QuestionAnsweringTrainer( model=model, args=training_args, train_dataset=train_dataset, eval_dataset=eval_dataset, eval_examples=eval_examples, tokenizer=tokenizer, data_collator=data_collator, post_process_function=post_processing_function, compute_metrics=compute_metrics, )

Mari kita tinjau blok bangunan pada tingkat tinggi.

Tokenizer

Script memuat tokenizer menggunakan AutoTokenizer kelas. Itu AutoTokenizer class menangani pengembalian tokenizer yang benar yang sesuai dengan model:

tokenizer = AutoTokenizer.from_pretrained( model_args.model_name_or_path, cache_dir=model_args.cache_dir, use_fast=True, revision=model_args.model_revision, use_auth_token=None, )

Berikut ini adalah contoh cara kerja tokenizer:

from transformers import AutoTokenizer tokenizer = AutoTokenizer.from_pretrained("deepset/xlm-roberta-base-squad2") input_ids = tokenizer.encode('İstanbulun en popüler hayvanı hangisidir? Kedileri', return_tensors="pt")
tokens = tokenizer('İstanbulun en popüler hayvanı hangisidir? Kedileri').tokens()

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Model

Script memuat model. AutoModel kelas (misalnya, AutoModelForQuestionAnswering) secara langsung membuat kelas dengan bobot, konfigurasi, dan kosakata dari arsitektur yang relevan yang diberi nama dan jalur ke model yang telah dilatih sebelumnya. Berkat abstraksi oleh Hugging Face, Anda dapat dengan mudah beralih ke model lain menggunakan kode yang sama, hanya dengan memberikan nama model. Lihat contoh kode berikut:

 model = AutoModelForQuestionAnswering.from_pretrained( model_args.model_name_or_path, config=config, cache_dir=model_args.cache_dir, revision=model_args.model_revision, )

Pra-pemrosesan dan pelatihan

Grafik prepare_train_features() dan prepare_validation_features() metode praproses dataset pelatihan dan dataset validasi, masing-masing. Kode mengulangi set data input dan membangun urutan dari konteks dan pertanyaan saat ini, dengan ID tipe token spesifik model yang benar (representasi numerik token) dan topeng perhatian. Urutan kemudian dilewatkan melalui model. Ini menghasilkan rentang skor, untuk posisi awal dan akhir, seperti yang ditunjukkan pada tabel berikut.

Masukkan Bidang Dataset Bidang Dataset Pelatihan Praproses untuk QuestionAnsweringTrainer
id masukan_id
judul perhatian_topeng
konteks posisi_mulai
pertanyaan posisi_akhir
Jawaban { answer_start, answer_text } .

Evaluasi

Grafik compute_metrics() metode menangani penghitungan metrik. Kami menggunakan metrik populer berikut untuk tugas menjawab pertanyaan:

  • Benar-benar cocok – Mengukur persentase prediksi yang cocok dengan salah satu jawaban kebenaran dasar dengan tepat.
  • Skor F1 – Mengukur rata-rata tumpang tindih antara prediksi dan jawaban kebenaran dasar. Skor F1 adalah rata-rata harmonik presisi dan daya ingat:
    • Ketelitian – Rasio jumlah kata yang dibagikan dengan jumlah total kata dalam prediksi.
    • Mengingat kembali – Rasio jumlah kata yang dibagikan dengan jumlah total kata dalam kebenaran dasar.

Pelatihan terkelola di SageMaker

Menyiapkan dan mengelola lingkungan machine learning (ML) kustom dapat memakan waktu dan tidak praktis. Dengan Wadah Pembelajaran Mendalam AWS (DLC) untuk perpustakaan Hugging Face Transformers, kami memiliki akses ke kerangka kerja pembelajaran mendalam yang telah dikemas dan dioptimalkan, yang memudahkan untuk menjalankan skrip kami di beberapa pekerjaan pelatihan dengan kode tambahan minimal.

Kita hanya perlu menggunakan Memeluk Pengukur Wajah tersedia di SageMaker Python SDK dengan input berikut:

# Trial configuration
config['model'] = 'deepset/xlm-roberta-base-squad2'
config['instance_type'] = 'ml.p3.16xlarge'
config['instance_count'] = 2 # Define the distribution parameters in the HuggingFace Estimator config['distribution'] = {'smdistributed':{'dataparallel':{ 'enabled': True }}}
trial_configs.append(config) # We can specify a training script that is stored in a GitHub repository as the entry point for our Estimator, # so we don’t have to download the scripts locally.
git_config = {'repo': 'https://github.com/huggingface/transformers.git'} hyperparameters_qa={ 'model_name_or_path': config['model'], 'train_file': '/opt/ml/input/data/train/train.json', 'validation_file': '/opt/ml/input/data/val/val.json', 'do_train': True, 'do_eval': True, 'fp16': True, 'per_device_train_batch_size': 16, 'per_device_eval_batch_size': 16, 'num_train_epochs': 2, 'max_seq_length': 384, 'pad_to_max_length': True, 'doc_stride': 128, 'output_dir': '/opt/ml/model' } huggingface_estimator = HuggingFace(entry_point='run_qa.py', source_dir='./examples/pytorch/question-answering', git_config=git_config, instance_type=config['instance_type'], instance_count=config['instance_count'], role=role, transformers_version='4.12.3', pytorch_version='1.9.1', py_version='py38', distribution=config['distribution'], hyperparameters=hyperparameters_qa, metric_definitions=metric_definitions, enable_sagemaker_metrics=True,) nlp_training_job_name = f"NLPjob-{model}-{instance}-{int(time.time())}" training_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' test_input_path = f's3://{sagemaker_session_bucket}/{s3_prefix_qa}/' huggingface_estimator.fit( inputs={'train': training_input_path, 'val': test_input_path}, job_name=nlp_training_job_name, experiment_config={ "ExperimentName": nlp_experiment.experiment_name, "TrialName": nlp_trial.trial_name, "TrialComponentDisplayName": nlp_trial.trial_name,}, wait=False, )

Evaluasi hasilnya

Ketika pekerjaan fine-tuning untuk tugas menjawab pertanyaan bahasa Turki selesai, kami membandingkan kinerja model dari tiga pendekatan:

  • Model bahasa monolingual – Model pra-terlatih yang disesuaikan dengan teks jawaban pertanyaan Turki disebut bert-base-turki-uncased [8]. Ini mencapai skor F1 75.63 dan skor pencocokan tepat 56.17 hanya dalam dua zaman dan dengan 9,000 item berlabel. Namun, pendekatan ini tidak cocok untuk bahasa sumber daya rendah ketika model bahasa pra-terlatih tidak ada, atau ada sedikit data yang tersedia untuk pelatihan dari awal.
  • Model bahasa multibahasa dengan BERT multibahasa – Model pra-terlatih disebut bert-base-multibahasa-tanpa huruf. Makalah BERT multibahasa [4] telah menunjukkan bahwa itu menggeneralisasi dengan baik di seluruh bahasa. Dibandingkan dengan model monolingual, performanya lebih buruk (skor F1 71.73, kecocokan persis 50:45), tetapi perhatikan bahwa model ini menangani lebih dari 100 bahasa lain, menyisakan lebih sedikit ruang untuk mewakili bahasa Turki.
  • Model bahasa multibahasa dengan XLM-R – Model pra-terlatih disebut xlm-roberta-base-squad2. Makalah XLM-R menunjukkan bahwa dimungkinkan untuk memiliki satu model besar untuk lebih dari 100 bahasa tanpa mengorbankan kinerja per bahasa [7]. Untuk tugas menjawab pertanyaan Turki, ini mengungguli skor BERT multibahasa dan BERT F1 monolingual masing-masing sebesar 5% dan 2% (skor F1 77.14, pencocokan tepat 56.39).

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.

Perbandingan kami tidak mempertimbangkan perbedaan lain antara model seperti kapasitas model, set data pelatihan yang digunakan, tugas NLP yang telah dilatih sebelumnya, ukuran kosakata, atau tokenisasi.

Eksperimen tambahan

Buku catatan yang disediakan berisi contoh eksperimen tambahan.

SageMaker menyediakan berbagai jenis instans pelatihan. Kami menyempurnakan model XLM-R pada p3.2xlarge (GPU: GPU Nvidia V100, arsitektur GPU: Volta (2017)), p3.16xlarge (GPU: 8 GPU Nvidia V100), dan g4dn.xlarge (GPU: Nvidia T4 GPU, arsitektur GPU: Turing (2018)), dan mengamati hal berikut:

  • Durasi pelatihan – Menurut percobaan kami, model XLM-R membutuhkan waktu sekitar 24 menit untuk berlatih di p3.2xlarge dan 30 menit di g4dn.xlarge (sekitar 23% lebih lama). Kami juga melakukan penyetelan halus terdistribusi pada dua instans p3.16xlarge, dan waktu pelatihan berkurang menjadi 10 menit. Untuk informasi lebih lanjut tentang pelatihan terdistribusi dari model berbasis transformator di SageMaker, lihat Penyesuaian terdistribusi model BERT Large untuk Tugas Menjawab Pertanyaan menggunakan Hugging Face Transformers di Amazon SageMaker.
  • Biaya pelatihan – Kami menggunakan AWS Pricing API untuk mengambil harga sesuai permintaan SageMaker untuk menghitungnya dengan cepat. Menurut eksperimen kami, biaya pelatihan sekitar $1.58 pada p3.2xlarge, dan sekitar empat kali lebih murah pada g4dn.xlarge ($0.37). Pelatihan terdistribusi pada dua instans p3.16xlarge menggunakan 16 GPU berharga $9.68.

Untuk meringkas, meskipun g4dn.xlarge adalah mesin yang paling murah, itu juga membutuhkan waktu sekitar tiga kali lebih lama untuk dilatih daripada jenis instans paling kuat yang kami uji (dua p3.16xlarge). Bergantung pada prioritas proyek, Anda dapat memilih dari beragam jenis instans pelatihan SageMaker.

Kesimpulan

Dalam posting ini, kami menjelajahi fine tuning model bahasa berbasis transformator pra-terlatih untuk tugas menjawab pertanyaan untuk bahasa sumber daya menengah (dalam hal ini, bahasa Turki). Anda dapat menerapkan pendekatan ini ke lebih dari 100 bahasa lain menggunakan satu model. Pada saat penulisan, meningkatkan model untuk mencakup semua 7,000 bahasa di dunia masih menjadi penghalang, tetapi bidang NLP memberikan kesempatan untuk memperluas wawasan kita.

Bahasa adalah metode utama komunikasi manusia, dan merupakan sarana untuk mengkomunikasikan nilai-nilai dan berbagi keindahan warisan budaya. Keragaman bahasa memperkuat dialog antarbudaya dan membangun masyarakat yang inklusif.

ML adalah proses yang sangat berulang; selama satu proyek, ilmuwan data melatih ratusan model, kumpulan data, dan parameter yang berbeda untuk mencari akurasi maksimum. SageMaker menawarkan seperangkat alat terlengkap untuk memanfaatkan kekuatan ML dan pembelajaran mendalam. Ini memungkinkan Anda mengatur, melacak, membandingkan, dan mengevaluasi eksperimen ML dalam skala besar.

Hugging Face terintegrasi dengan SageMaker untuk membantu ilmuwan data mengembangkan, melatih, dan menyetel model NLP canggih dengan lebih cepat dan mudah. Kami mendemonstrasikan beberapa manfaat menggunakan transformer Hugging Face di Amazon SageMaker, seperti pelatihan dan eksperimen dalam skala besar, serta peningkatan produktivitas dan efisiensi biaya.

Anda dapat bereksperimen dengan tugas NLP pada bahasa pilihan Anda di SageMaker di semua Wilayah AWS tempat SageMaker tersedia. Contoh kode buku catatan tersedia di GitHub.

Untuk mempelajari bagaimana Amazon SageMaker Training Compiler dapat mempercepat pelatihan model pembelajaran mendalam hingga 50%, lihat Baru – Memperkenalkan Kompilator Pelatihan SageMaker.

Penulis ingin menyampaikan penghargaan yang sebesar-besarnya kepada Mariano Kamp dan Emily Webber karena telah meninjau draf dan memberikan saran.

Referensi

  1. J. Devlin et al., "BERT: Pra-Pelatihan Transformer Dua Arah Mendalam untuk Pemahaman Bahasa", (2018).
  2. A. Vaswani dkk., “Perhatian Adalah Yang Anda Butuhkan”, (2017).
  3. J. Howard dan S. Ruder, “Penyesuaian Model Bahasa Universal untuk Klasifikasi Teks”, (2018).
  4. T. Pires et al., "Bagaimana multibahasa BERT Multibahasa?", (2019).
  5. Y. Liu et al., “RoBERTa: Pendekatan Prapelatihan BERT yang Dioptimalkan dengan Kuat”, (2019).
  6. G. Lample, dan A. Conneau, "Pelatihan Model Bahasa Lintas Bahasa", (2019).
  7. A. Conneau et al., "Pembelajaran Representasi Lintas Bahasa Tanpa Pengawasan pada Skala", (2019).
  8. Stefan Schweter. BERTurk – Model BERT untuk Turki (2020).
  9. Statistik Wiki Multibahasa https://en.wikipedia.org/wiki/Wikipedia:Multilingual_statistics

Tentang Penulis

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Arnav Khare adalah Arsitek Solusi Utama untuk Layanan Keuangan Global di AWS. Fokus utamanya adalah membantu Lembaga Jasa Keuangan membangun dan mendesain aplikasi Analytics dan Machine Learning di cloud. Arnav memegang gelar MSc dalam Artificial Intelligence dari Edinburgh University dan memiliki 18 tahun pengalaman industri mulai dari perusahaan rintisan kecil yang ia dirikan hingga perusahaan besar seperti Nokia, dan Bank of America. Di luar pekerjaan, Arnav suka menghabiskan waktu bersama kedua putrinya, menemukan kedai kopi baru, membaca, dan bepergian. Anda dapat menemukan saya di LinkedIn dan di Surrey, Inggris dalam kehidupan nyata.

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Hasan-Basri AKIRMAK (BSc dan MSc dalam Teknik Komputer dan MBA Eksekutif di Sekolah Pascasarjana Bisnis) adalah Arsitek Solusi Senior di Amazon Web Services. Dia adalah seorang teknolog bisnis yang menasihati klien segmen perusahaan. Bidang spesialisasinya adalah merancang arsitektur dan kasus bisnis pada sistem pemrosesan data skala besar dan solusi Machine Learning. Hasan telah memberikan pengembangan Bisnis, Integrasi Sistem, Manajemen Program untuk klien di Eropa, Timur Tengah dan Afrika. Sejak 2016 ia mendampingi ratusan pengusaha dalam program inkubasi startup pro-bono.

Sempurnakan model bahasa transformator untuk keragaman bahasa dengan Hugging Face di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. ai.Heiko Hotzo adalah Senior Solutions Architect untuk AI & Machine Learning dan memimpin komunitas Natural Language Processing (NLP) dalam AWS. Sebelum peran ini, dia adalah Kepala Ilmu Data untuk Layanan Pelanggan UE Amazon. Heiko membantu pelanggan kami sukses dalam perjalanan AI/ML mereka di AWS dan telah bekerja dengan organisasi di banyak industri, termasuk Asuransi, Layanan Keuangan, Media dan Hiburan, Perawatan Kesehatan, Utilitas, dan Manufaktur. Di waktu luangnya, Heiko sering bepergian.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS