Cara menggunakan databricks udf python

Pengatur Data Amazon SageMaker mengurangi waktu untuk mengumpulkan dan menyiapkan data untuk pembelajaran mesin (ML) dari minggu ke menit. Dengan Data Wrangler, Anda dapat memilih dan membuat kueri data hanya dengan beberapa klik, mengubah data dengan cepat dengan lebih dari 300 transformasi data bawaan, dan memahami data Anda dengan visualisasi bawaan tanpa menulis kode apa pun.

Selain itu, Anda dapat membuat transformasi khusus unik untuk kebutuhan Anda. Transformasi kustom memungkinkan Anda untuk menulis transformasi kustom menggunakan PySpark, Pandas, atau SQL.

Data Wrangler sekarang mendukung custom Fungsi yang ditentukan pengguna Panda (UDF) transformasi yang dapat memproses kumpulan data besar secara efisien. Anda dapat memilih dari dua mode kustom Pandas UDF: Pandas dan Python. Kedua mode memberikan solusi yang efisien untuk memproses kumpulan data, dan mode yang Anda pilih bergantung pada preferensi Anda.

Dalam posting ini, kami mendemonstrasikan cara menggunakan transformasi UDF Pandas baru di salah satu mode.

Ikhtisar solusi

Pada saat penulisan ini, Anda dapat mengimpor kumpulan data ke dalam Data Wrangler dari Layanan Penyimpanan Sederhana Amazon (Amazon S3), Amazon Athena, Pergeseran Merah Amazon, Databricks, dan Kepingan Salju. Untuk posting ini, kami menggunakan Amazon S3 untuk menyimpan 2014 Amazon meninjau kumpulan data.

Data memiliki kolom yang disebut reviewText berisi teks yang dibuat pengguna. Teks ini juga berisi beberapa hentikan kata-kata, yang merupakan kata umum yang tidak memberikan banyak informasi, seperti “a”, “an”, dan “the.” Penghapusan stopwords adalah langkah preprocessing umum dalam pemrosesan bahasa alami (NLP) pipa. Kami dapat membuat fungsi khusus untuk menghapus kata berhenti dari ulasan.

Buat transformasi UDF Pandas khusus

Mari kita telusuri proses pembuatan dua transformasi UDF Pandas kustom Data Wrangler menggunakan mode Pandas dan Python.

  1. Download Kumpulan data ulasan Musik Digital dan unggah ke Amazon S3.
  2. Open Studio Amazon SageMaker dan buat aliran Data Wrangler baru.
  3. Bawah Impor data, pilih Amazon S3 dan arahkan ke lokasi kumpulan data.
  4. Untuk Jenis berkas, pilih jsonl.

Pratinjau data harus ditampilkan dalam tabel.

  1. Pilih impor untuk melanjutkan.
    Cara menggunakan databricks udf python
  2. Setelah data Anda diimpor, pilih tanda plus di sebelah Tipe data Dan pilihlah Tambahkan transformasi.
    Cara menggunakan databricks udf python
  3. Pilih Transformasi kustom.
    Cara menggunakan databricks udf python
  4. Pada menu tarik-turun, Python (Fungsi Buatan Pengguna).
    Cara menggunakan databricks udf python

Sekarang kami membuat transformasi khusus kami untuk menghapus kata-kata berhenti.

  1. Tentukan kolom input, kolom output, tipe pengembalian, dan mode Anda.

Contoh berikut menggunakan mode Pandas. Ini berarti fungsi harus menerima dan mengembalikan seri Panda dengan panjang yang sama. Anda dapat menganggap seri Panda sebagai kolom dalam tabel atau potongan kolom. Ini adalah mode UDF Pandas yang paling berkinerja karena Pandas dapat membuat vektor operasi di seluruh kumpulan nilai yang bertentangan dengan satu per satu. Itu pd.Series petunjuk ketik diperlukan dalam mode Pandas.

import pandas as pd
from sklearn.feature_extraction import text

# Input: the quick brown fox jumped over the lazy dog
# Output: quick brown fox jumped lazy dog
def remove_stopwords(series: pd.Series) -> pd.Series:
  """Removes stop words from the given string."""
  
  # Replace nulls with empty strings and lowercase to match stop words case
  series = series.fillna("").str.lower()
  tokens = series.str.split()
  
  # Remove stop words from each entry of series
  tokens = tokens.apply(lambda t: [token for token in t 
                                   if token not in text.ENGLISH_STOP_WORDS])
  
  # Joins the filtered tokens by spaces
  return tokens.str.join(" ")

Cara menggunakan databricks udf python

Jika Anda lebih suka menggunakan Python murni sebagai lawan dari Pandas API, mode Python memungkinkan Anda untuk menentukan fungsi Python murni yang menerima argumen tunggal dan mengembalikan nilai tunggal. Contoh berikut ini setara dengan kode Pandas sebelumnya dalam hal output. Petunjuk ketik tidak diperlukan dalam mode Python.

from sklearn.feature_extraction import text

def remove_stopwords(value: str) -> str:
  if not value:
    return ""
  
  tokens = value.lower().split()
  tokens = [token for token in tokens 
            if token not in text.ENGLISH_STOP_WORDS]
  return " ".join(tokens)

Cara menggunakan databricks udf python

  1. Pilih Add untuk menambahkan transformasi kustom Anda.

Kesimpulan

Data Wrangler memiliki lebih dari 300 transformasi bawaan, dan Anda juga dapat menambahkan transformasi khusus yang unik untuk kebutuhan Anda. Dalam posting ini, kami mendemonstrasikan cara memproses kumpulan data dengan transformasi UDF Pandas kustom baru dari Data Wrangler, menggunakan mode Pandas dan Python. Anda dapat menggunakan salah satu mode berdasarkan preferensi Anda. Untuk mempelajari lebih lanjut tentang Data Wrangler, lihat Buat dan Gunakan Aliran Data Wrangler.


Tentang Penulis

Cara menggunakan databricks udf python
Ben Harris adalah seorang insinyur perangkat lunak dengan pengalaman merancang, menerapkan, dan memelihara saluran data yang dapat diskalakan dan solusi pembelajaran mesin di berbagai domain. Ben telah membangun sistem untuk pengumpulan dan pelabelan data, klasifikasi gambar dan teks, pemodelan urutan-ke-urutan, penyematan, dan pengelompokan, antara lain.

Cara menggunakan databricks udf python
Haider Naqvi adalah Arsitek Solusi di AWS. Dia memiliki pengalaman luas dalam Pengembangan Perangkat Lunak dan Arsitektur Perusahaan. Dia berfokus untuk memungkinkan pelanggan mencapai hasil bisnis dengan AWS. Dia berbasis di New York.

Cara menggunakan databricks udf python
Vishal Srivastava adalah Manajer Akun Teknis di AWS. Dengan latar belakang Pengembangan Perangkat Lunak dan Analisis, ia terutama bekerja dengan sektor jasa keuangan dan pelanggan bisnis digital native dan mendukung perjalanan cloud mereka. Di waktu senggangnya, dia suka jalan-jalan bersama keluarganya.

  • Coinsmart. Pertukaran Bitcoin dan Crypto Terbaik Eropa.Klik disini
  • Platoblockchain. Intelijen Metaverse Web3. Pengetahuan Diperkuat. Akses Di Sini.
  • Sumber: https://aws.amazon.com/blogs/machine-learning/pandas-user-defined-functions-are-now-available-in-amazon-sagemaker-data-wrangler/