Pada dasarnya, NK-VEC adalah embedding jaringan saraf dengan ide-ide dari Word2Vec dan memiliki tugas yang sama seperti semua model tertanam dari saat ini, tetapi memiliki struktur yang jauh lebih sederhana. Melalui perpustakaan NK-vektor, Anda dapat menggunakan model NK-VEC untuk membangun set vektor sesuai dengan data Anda sendiri dengan cara yang paling sederhana. Selain itu, NK-vektor juga memberi Anda beberapa fitur dan algoritma yang berguna yang digunakan untuk menyelesaikan masalah NLP.
Saya menciptakannya saat meneliti proyek besar di Ruang Informatika Sekolah Menengah Nguyen Khuyen (Da Nang), jadi NK adalah singkatan dari nama sekolah, jejak ini yang ingin saya simpan dan layak untuk itu.
| Rahang | Parameter | Misalnya | Catatan |
|---|---|---|---|
| Create_one_hot | <file_url, url_save> | "E: /project/data.txt", "e: /project/onehot.json" | Dalam hal ini akan default untuk memfilter bahasa Inggris dan karakter khusus kecuali '_' |
| Create_window_words | <file_url, window_size, url_save> | "E: /project/data.txt", 5, "e: /project/window.txt" | Dalam hal ini akan default untuk memfilter stopword bahasa Inggris dan karakter khusus kecuali '_'. Window_size harus menjadi angka ganjil |
| kereta | <size_output, url_data_one_hot, url_data_window_words, url_save> | 512, "e: /project/onehot.json", "e: /project/window.txt", "e: /project/data_vector.json" | Size_output adalah jumlah dimensi vektor output dan harus lebih kecil dari dimensi pertama dari input vektor oneHot |
| building_vec_sentences | <"doc", url_vecs_of_words, url_save> | "Halo semuanya", "e: /project/data_vector.json", "" " | Jika url_save memiliki nol, maka default mengembalikan vektor tanpa menyimpan, jika disimpan, biarkan format JSON - Contoh: "e: /project/data_sentence_vector.json" |
| search_word_similarity | <"Target", url_vecs_of_word, size_result> | "King", "e: /project/data_vector.json", 15 | Size_result sesuai dengan jumlah kata dengan tertinggi yang sama ke rendah dari dikembalikan " |
| Kas | <"Target", type_distance, data, k> | [7, 8], 'eculid', poin, 4 | Lihat contoh penggunaan fungsi di bawah ini |
| Vn_segmentation_tag | <"Dokumen"> | "Selamat datang padaku" | Pastikan versi Node Anda adalah versi lengkap 10.16.0 atau lebih |
| clear_sentence_vn | <"Dokumen"> | "Selamat datang padaku" | Di sini kalimat Vietnam Anda akan disaring dari stopword vietnam ke karakter khusus |
| clear_sentence_en | <"Dokumen"> | "Selamat datang padaku" | Di sini kalimat bahasa Inggris Anda akan difilter dari stopword bahasa Inggris ke karakter khusus |
| Lepas_duplicate_words | <"Dokumen"> | "Selamat datang padaku" | Akan ada kata -kata yang digandakan dalam kalimat dan digunakan untuk bahasa Inggris dan Vietnam |
| fast_build_chatbot | <"Teks"> | "Bagaimana cuaca hari ini" | Di sini bot akan mengembalikan salah satu label: kimia, umum_kasking, matematika, good_bye, halo, pengantar, terima kasih, ask_weather, tidak diketahui |
| sentimen_vn | <"Teks"> | "Hari ini sangat suram" | Di sini akan mengembalikan salah satu label: sedih, bahagia, frustrasi, normal, tidak diketahui - seperti misalnya, hasilnya adalah string: sedih " |
| Fix_telex | <"Teks"> | "Anh Thisch Awn Busn Char Cas" | Di sini akan mengembalikan hasil yang telah teleks - seperti misalnya: Saya suka makan roti ikan |
| English_or_vietnamese | <"Teks"> | "Halo, ya, kamu?" | Ini akan mengembalikan hasilnya sebagai objek termasuk your_text, label, fix_text sekolah - seperti misalnya {your_text: 'halo, hae you?', Label: 'bahasa Inggris', fix_text: 'halo, apa kabar?' |
| } |
- Instal Node.js
- Jalankan: NPM I NK-Vektor
let NKV = require ( 'nk-vector' )Contoh: Gunakan fungsi rahang
let NKV = require ( 'nk-vector' )
let points = [
[ 1 , 2 ] ,
[ 3 , 4 ] ,
[ 5 , 6 ] ,
[ 7 , 8 ]
] ;
let nearest = NKV . knn ( [ 7 , 8 ] , 'eculid' , points , 4 ) ;
console . log ( nearest ) ;
/*Result:
[ [ [ 7, 8 ], 0 ],
[ [ 5, 6 ], 8 ],
[ [ 3, 4 ], 32 ],
[ [ 1, 2 ], 72 ] ]
Giải thích kết quả mảng trả về: [<vector trong tập dữ liệu>, <khoảng cách từ vector đầu vào tới vector này>]
*/Contoh: Gunakan fungsi building_vec_sentences
let NKV = require ( 'nk-vector' )
let sentence = NKV . VN_segmentation_tag ( NKV . clear_sentence_vn ( 'cân bằng phương trình hóa học' ) )
let full_sentence = ''
for ( let word in sentence ) {
full_sentence += sentence [ word ] . replace ( ' ' , '_' ) + ' '
}
if ( full_sentence . length > 0 ) {
console . log ( full_sentence )
console . log ( NKV . build_vec_sentences ( full_sentence . trim ( ) , 'E:/<name_project>/data_vec.json' , '' ) )
}
/*Result:
{"cân_bằng phương_trình hóa học":[0.002338010428122218,...,0,0,0.00111962700489077,0.0009866701202071657,0.00111962700489077,0,0.00111962700489077,0,0,0.0009866701202071657,0,0.0010865777210490053,0,0.0010865777210490053,0,0,0,0,0,0.0009866701202071657,0,0,0,0,0,0,0.0010865777210490053,...0,0.0010865777210490053,...,0]}
*/Contoh: Gunakan clear_sentence_vn
let NKV = require ( 'nk-vector' )
let clear_sentence = NKV . clear_sentence_vn ( "Chào mừng các bạn lên trên trời, ở đây là trên trời" )
console . log ( clear_sentence ) ;
//Result: chào mừng trời trờiMerah : Kesalahan tidak dapat dilanjutkan
Kuning : Ini hanya pemberitahuan normal, masih berjalan
Jika Anda mengalami kesalahan yang tidak menemukan file kata file, maka temukan baris kesalahan sesuai dengan jalur di terminal dan periksa menjadi:
- Path.join (__ dirke, "/src/stop_word.txt"): biarkan fungsi clear_sentence_en
- Path.join (__ Direct, "/src/stop_word_vnt_vn.txt"): Untuk fungsi clear_sentence_vn
Atau jalur filter persis seperti AndaKesalahan ini diberitahukan kepada pengguna di tingkat merah
Kesalahan ini terjadi ketika kosakata, karakter yang membentuk kalimat di stopword filter dan karakter khusus yang dihapus selama proses pelatihan tidak boleh menyebabkan vektor kosakata ini, yang mengakibatkan kalimat pemuatan akan kosong dan tidak ada build.
Kesalahan ini diberitahukan kepada pengguna dengan tingkat kuning
Terima kasih telah menggunakan NK-vektor, saya akan memperbarui algoritma baru secara teratur!
Terima kasih, VNB telah mengembangkan paket VNTK Suci
Pencarian Kode: https://code-search-vni.herokuapp.com/
Sebelum GPT-3 menerbitkan kunci untuk semua orang, saya masih bisa membuat tempat untuk mencari Python di semantik contoh GPT-3