Bidang fitur di neptune_ml - Amazon Neptune

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 fastTextpengkodean. 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.

featuresBidang berisi JSON array fitur properti node. Objek dalam array dapat berisi bidang-bidang berikut:

Bidang node dalam fitur

nodeBidang 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

edgeBidang 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

typeParameter 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. Sebuah auto fitur juga dapat memiliki separator bidang opsional.

    Lihat Encoding fitur otomatis di Neptune MLs.

  • "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. Sebuah category fitur juga dapat memiliki separator 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, dan separator 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 membutuhkan range dan bucket_cnt bidang, dan secara opsional juga dapat menyertakan imputer dan/atau slide_window_size bidang.

    Lihat Fitur ember-numerik di Neptune.

  • "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.

    Lihat Fitur Datetime di Neptune MLs.

  • "text_fasttext"— Pengkodean fitur ini mengubah nilai properti yang terdiri dari kalimat atau teks bentuk bebas menjadi vektor numerik menggunakan model. fastText Ini 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 hanya text_sbert menentukan, dan. text_sbert512 Perbedaan di antara mereka adalah jumlah maksimum token dalam properti teks yang dikodekan. text_sbert128Pengkodean hanya mengkodekan 128 token pertama, sementara text_sbert512 mengkodekan hingga 512 token. Akibatnya, penggunaan text_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.

    Lihat Pengkodean Word2Vec fitur teks di Neptune ML.

  • "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 menggunakan ngram_range bidang, min_df bidang, dan max_features bidang.

    Lihat Pengkodean fitur teks TF-IDF di Neptune ML.

  • "none"— Menggunakan none 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_lengthBidang 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 sukuran jendela dan mengubah setiap vnilai 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.