Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Bidang fitur di neptune_ml
Nilai properti dan RDF literal datang dalam berbagai format dan tipe data. Untuk mencapai kinerja yang baik dalam pembelajaran mesin, penting untuk mengubah nilai-nilai tersebut menjadi pengkodean numerik yang dikenal sebagai fitur.
Neptunus ML melakukan ekstraksi fitur dan pengkodean sebagai bagian dari langkah-langkah ekspor data dan pemrosesan data, seperti yang dijelaskan dalam. Encoding fitur dalam Neptune Neptune Neptune Neptune Neptune
Untuk kumpulan data grafik properti, proses ekspor secara otomatis menyimpulkan auto
fitur untuk properti string dan untuk properti numerik yang berisi nilai kelipatan. Untuk properti numerik yang berisi nilai tunggal, ini menyimpulkan fitur. numerical
Untuk properti tanggal, ia menyimpulkan datetime
fitur.
Jika Anda ingin mengganti spesifikasi fitur yang disimpulkan secara otomatis, atau menambahkan bucket numerik, TF-IDF, atau SBERT spesifikasi untuk properti FastText, Anda dapat mengontrol pengkodean fitur menggunakan bidang fitur.
catatan
Anda hanya dapat menggunakan features
bidang untuk mengontrol spesifikasi fitur untuk data grafik properti, bukan untuk RDF data.
Untuk teks bentuk bebas, Neptunus ML dapat menggunakan beberapa model berbeda untuk mengubah urutan token dalam nilai properti string menjadi vektor nilai nyata ukuran tetap:
text_fasttext— Menggunakan fastText
pengkodean. Ini adalah pengkodean yang disarankan untuk fitur yang menggunakan satu dan hanya satu dari lima bahasa yang fastText mendukung. text_sbert— Menggunakan model pengkodean Sentence BERT
(SBERT). Ini adalah pengkodean yang disarankan untuk teks yang text_fasttext
tidak mendukung.text_word2vec— Menggunakan algoritma Word2Vec
awalnya diterbitkan oleh Google untuk menyandikan teks. Word2Vec hanya mendukung bahasa Inggris. text_tfidf— Menggunakan istilah frekuensi—inverse document frequency
(TF-IDF) vectorizer untuk pengkodean teks. TF- IDF encoding mendukung fitur statistik yang pengkodean lainnya tidak.
features
Bidang berisi JSON array fitur properti node. Objek dalam array dapat berisi bidang-bidang berikut:
Daftar Isi
Bidang node dalam fitur
node
Bidang menentukan label property-graph dari simpul fitur. Sebagai contoh:
"node": "Person"
Jika sebuah simpul memiliki beberapa label, gunakan array untuk menampungnya. Sebagai contoh:
"node": ["Admin", "Person"]
Bidang tepi dalam fitur
edge
Bidang menentukan jenis tepi tepi fitur. Tipe tepi terdiri dari larik yang berisi label grafik properti dari simpul sumber, label grafik properti tepi, dan label grafik properti dari simpul tujuan. Anda harus menyediakan ketiga nilai saat menentukan fitur tepi. Sebagai contoh:
"edge": ["User", "reviewed", "Movie"]
Jika simpul sumber atau tujuan dari tipe tepi memiliki beberapa label, gunakan array lain untuk menampungnya. Sebagai contoh:
"edge": [["Admin", "Person"]. "edited", "Post"]
Bidang properti dalam fitur
Gunakan parameter properti untuk menentukan properti dari simpul yang diidentifikasi oleh node
parameter. Sebagai contoh:
"property" : "age"
Nilai yang mungkin dari bidang tipe untuk fitur
type
Parameter menentukan jenis fitur yang didefinisikan. Sebagai contoh:
"type": "bucket_numerical"
Nilai type
parameter yang mungkin
-
"auto"
— Menentukan bahwa Neptunus ML harus secara otomatis mendeteksi jenis properti dan menerapkan pengkodean fitur yang tepat. Sebuahauto
fitur juga dapat memilikiseparator
bidang opsional. -
"category"
- Pengkodean fitur ini mewakili nilai properti sebagai salah satu dari sejumlah kategori. Dengan kata lain, fitur ini dapat mengambil satu atau lebih nilai diskrit. Sebuahcategory
fitur juga dapat memilikiseparator
bidang opsional.Lihat Fitur kategoris dalam Neptune Neptune Neptune Neptune Neptune MLs.
-
"numerical"
- Pengkodean fitur ini mewakili nilai properti numerik sebagai angka dalam interval kontinu di mana “lebih besar dari” dan “kurang dari” memiliki makna.Sebuah
numerical
fitur juga dapat memiliki opsionalnorm
,imputer
, danseparator
bidang.Lihat Fitur numerik dalam Neptune Neptune Neptune Neptune MLs.
-
"bucket_numerical"
- Pengkodean fitur ini membagi nilai properti numerik menjadi satu set ember atau kategori.Misalnya, Anda dapat menyandikan usia orang dalam 4 ember: anak-anak (0-20), dewasa muda (20-40), paruh baya (40-60), dan orang tua (60 ke atas).
Sebuah
bucket_numerical
fitur membutuhkanrange
danbucket_cnt
bidang, dan secara opsional juga dapat menyertakanimputer
dan/atauslide_window_size
bidang. -
"datetime"
— Pengkodean fitur ini mewakili nilai properti datetime sebagai larik fitur kategoris ini: tahun, bulan, hari kerja, dan jam.Satu atau lebih dari empat kategori ini dapat dihilangkan menggunakan
datetime_parts
parameter. -
"text_fasttext"
— Pengkodean fitur ini mengubah nilai properti yang terdiri dari kalimat atau teks bentuk bebas menjadi vektor numerik menggunakan model. fastTextIni mendukung lima bahasa, yaitu Inggris ( en
), Mandarin (zh
), Hindi (hi
), Spanyol (es
), dan Prancis (fr
). Untuk nilai properti teks dalam salah satu lima bahasa tersebut,text_fasttext
adalah pengkodean yang disarankan. Namun, tidak dapat menangani kasus di mana kalimat yang sama berisi kata-kata dalam lebih dari satu bahasa.Untuk bahasa lain selain yang fastText mendukung, gunakan
text_sbert
encoding.Jika Anda memiliki banyak string teks nilai properti yang lebih panjang dari, katakanlah, 120 token, gunakan
max_length
bidang untuk membatasi jumlah token di setiap string yang"text_fasttext"
dikodekan.Lihat Pengkodean fastText nilai properti teks di Neptune ML.
-
"text_sbert"
— Pengkodean ini mengubah nilai properti teks menjadi vektor numerik menggunakan model Sentence BERT(). SBERT Neptunus mendukung SBERT dua metode, text_sbert128
yaitu, yang merupakan default jika Anda hanyatext_sbert
menentukan, dan.text_sbert512
Perbedaan di antara mereka adalah jumlah maksimum token dalam properti teks yang dikodekan.text_sbert128
Pengkodean hanya mengkodekan 128 token pertama, sementaratext_sbert512
mengkodekan hingga 512 token. Akibatnya, penggunaantext_sbert512
dapat membutuhkan lebih banyak waktu pemrosesan daripadatext_sbert128
. Kedua metode lebih lambat daritext_fasttext
.text_sbert
Metode ini mendukung banyak bahasa, dan dapat menyandikan kalimat yang berisi lebih dari satu bahasa.*
Lihat Kalimat BERT (SBERT) pengkodean fitur teks di Neptune.
-
"text_word2vec"
— Pengkodean ini mengubah nilai properti teks menjadi vektor numerik menggunakan algoritma Word2Vec.Ini hanya mendukung bahasa Inggris. -
"text_tfidf"
— Pengkodean ini mengubah nilai properti teks menjadi vektor numerik menggunakan istilah frekuensi-inverse document frequency (TF-) vectorizer. IDF Anda menentukan parameter pengkodean
text_tfidf
fitur menggunakanngram_range
bidang,min_df
bidang, danmax_features
bidang. -
"none"
— Menggunakannone
tipe menyebabkan tidak ada pengkodean fitur yang terjadi. Nilai properti mentah diurai dan disimpan sebagai gantinya.Gunakan
none
hanya jika Anda berencana untuk melakukan pengkodean fitur kustom Anda sendiri sebagai bagian dari pelatihan model kustom.
Bidang norma
Bidang ini diperlukan untuk fitur numerik. Ini menentukan metode normalisasi untuk digunakan pada nilai-nilai numerik:
"norm": "min-max"
Metode normalisasi berikut didukung:
-
“min-max” — Normalisasi setiap nilai dengan mengurangi nilai minimum darinya dan kemudian membaginya dengan selisih antara nilai maksimum dan minimum.
-
“standar” — Menormalkan setiap nilai dengan membaginya dengan jumlah semua nilai.
-
“tidak ada” — Jangan menormalkan nilai numerik selama pengkodean.
Lihat Fitur numerik dalam Neptune Neptune Neptune Neptune MLs.
Bidang bahasa
Bidang bahasa menentukan bahasa yang digunakan dalam nilai properti teks. Penggunaannya tergantung pada metode pengkodean teks:
-
Untuk text_fasttextpengkodean, bidang ini diperlukan, dan harus menentukan salah satu bahasa berikut:
en
(Bahasa Inggris)zh
(Tionghoa)hi
(Hindi)es
(Spanyol)fr
(Perancis)
Untuk text_sbertpengkodean, bidang ini tidak digunakan, karena SBERT pengkodean bersifat multibahasa.
-
Untuk text_word2vecpengkodean, bidang ini opsional, karena
text_word2vec
hanya mendukung bahasa Inggris. Jika ada, itu harus menentukan nama model bahasa Inggris:"language" : "en_core_web_lg"
Untuk text_tfidfpengkodean, bidang ini tidak digunakan.
Bidang max_length
max_length
Bidang ini opsional untuk text_fasttext
fitur, di mana ia menentukan jumlah maksimum token dalam fitur teks input yang akan dikodekan. Input teks yang lebih panjang dari max_length
yang terpotong. Misalnya, menyetel max_length ke 128 menunjukkan bahwa token apa pun setelah ke-128 dalam urutan teks akan diabaikan:
"max_length": 128
Bidang pemisah
Bidang ini digunakan secara opsional dengancategory
, numerical
dan auto
fitur. Ini menentukan karakter yang dapat digunakan untuk membagi nilai properti menjadi beberapa nilai kategoris atau nilai numerik:
"separator": ";"
Hanya gunakan separator
bidang ketika properti menyimpan beberapa nilai yang dibatasi dalam satu string, seperti "Actor;Director"
atau. "0.1;0.2"
LihatFitur kategoris,Fitur numerik, danEncoding otomatis.
Bidang rentang
Bidang ini diperlukan untuk bucket_numerical
fitur. Ini menentukan kisaran nilai numerik yang akan dibagi menjadi ember, dalam format: [
lower-bound
, upper-bound
]
"range" : [20, 100]
Jika nilai properti lebih kecil dari batas bawah maka nilai tersebut ditetapkan ke bucket pertama, atau jika lebih besar dari batas atas, itu ditetapkan ke bucket terakhir.
Lihat Fitur ember-numerik di Neptune.
Bidang bucket_cnt
Bidang ini diperlukan untuk bucket_numerical
fitur. Ini menentukan jumlah ember yang rentang numerik yang ditentukan oleh range
parameter harus dibagi menjadi:
"bucket_cnt": 10
Lihat Fitur ember-numerik di Neptune.
Bidang slide_window_size
Bidang ini digunakan secara opsional dengan bucket_numerical
fitur untuk menetapkan nilai ke lebih dari satu bucket:
"slide_window_size": 5
Cara kerja jendela slide adalah bahwa Neptunus ML mengambil s
ukuran jendela dan mengubah setiap v
nilai numerik properti menjadi rentang dari hingga. v - s/2
v + s/2
Nilai tersebut kemudian ditetapkan ke setiap bucket yang rentangnya tumpang tindih.
Lihat Fitur ember-numerik di Neptune.
Bidang imputer
Bidang ini digunakan secara opsional dengan numerical
dan bucket_numerical
fitur untuk memberikan teknik imputasi untuk mengisi nilai yang hilang:
"imputer": "mean"
Teknik imputasi yang didukung adalah:
"mean"
"median"
"most-frequent"
Jika Anda tidak menyertakan parameter imputer, pra-pemrosesan data akan berhenti dan keluar saat nilai yang hilang ditemukan.
Lihat Fitur numerik dalam Neptune Neptune Neptune Neptune MLs dan Fitur ember-numerik di Neptune.
Bidang max_features
Bidang ini digunakan secara opsional oleh text_tfidf
fitur untuk menentukan jumlah maksimum istilah untuk dikodekan:
"max_features": 100
Pengaturan 100 menyebabkan IDF TF-vectorizer hanya menyandikan 100 istilah yang paling umum. Nilai default jika Anda tidak menyertakan max_features
adalah 5.000.
Lihat Pengkodean fitur teks TF-IDF di Neptune ML.
Bidang min_df
Bidang ini digunakan secara opsional oleh text_tfidf
fitur untuk menentukan frekuensi dokumen minimum istilah untuk dikodekan:
"min_df": 5
Pengaturan 5 menunjukkan bahwa istilah harus muncul dalam setidaknya 5 nilai properti yang berbeda untuk dikodekan.
Nilai default jika Anda tidak menyertakan min_df
parameter adalah2
.
Lihat Pengkodean fitur teks TF-IDF di Neptune ML.
Bidang ngram_range
Bidang ini digunakan secara opsional oleh text_tfidf
fitur untuk menentukan urutan ukuran kata atau token apa yang harus dianggap sebagai istilah individual potensial untuk dikodekan:
"ngram_range": [2, 4]
Nilai [2, 4]
menentukan bahwa urutan 2, 3 dan 4 kata harus dianggap sebagai istilah individu potensial.
Default jika Anda tidak secara eksplisit disetel ngram_range
adalah[1, 1]
, artinya hanya satu kata atau token yang dianggap sebagai istilah untuk dikodekan.
Lihat Pengkodean fitur teks TF-IDF di Neptune ML.
Bidang datetime_parts
Bidang ini digunakan secara opsional oleh datetime
fitur untuk menentukan bagian mana dari nilai datetime yang akan dikodekan secara kategoris:
"datetime_parts": ["weekday", "hour"]
Jika Anda tidak menyertakandatetime_parts
, secara default Neptunus ML mengkodekan bagian tahun, bulan, hari kerja, dan jam dari nilai datetime. Nilai ["weekday", "hour"]
menunjukkan bahwa hanya hari kerja dan jam nilai datetime yang harus dikodekan secara kategoris dalam fitur.
Jika salah satu bagian tidak memiliki lebih dari satu nilai unik dalam set pelatihan, itu tidak dikodekan.
Lihat Fitur Datetime di Neptune MLs.