❓ Help Patulong po deep learning

ItsukiNakano

Eternal Poster
Mga master baka po may alam pano pwede gawin dito, pag uupload sana ng audio files para itrain sa deeplearning. Kaso yung problem napaka rami at napaka laki, hindi kinakaya ng ram ng google colab.

Code:
def load_audio_data(dataset_dir):
    audio_data = []
    labels = []
    supported_extensions = ['mp3', 'wav', 'm4a']

    print(f"Loading data from: {dataset_dir}")

    def process_directory(directory, label):
        for root, _, files in os.walk(directory):
            for audio_file in files:
                if audio_file.split('.')[-1].lower() in supported_extensions:
                    audio_path = os.path.join(root, audio_file)
                    try:
                        audio, sr = librosa.load(audio_path, sr=None, duration=5)
                        audio_data.append((audio, sr))
                        labels.append(label)
                        print(f"Loaded {audio_path}")
                    except Exception as e:
                        print(f"Error loading file {audio_path}: {e}")

    for label in tqdm(os.listdir(dataset_dir), desc="Loading labels"):
        label_dir = os.path.join(dataset_dir, label)
        if os.path.isdir(label_dir):
            print(f"Entering directory: {label_dir} (Label: {label})")
            process_directory(label_dir, label)

    total_data = len(audio_data)
    print(f"Total Data Samples: {total_data}")
    if audio_data:
        print(f"First audio file data: {audio_data[0]}")
        print(f"Label of the first audio file: {labels[0]}")

    unique_labels = set(labels)
    print(f"Unique labels found: {unique_labels}")
    for label in unique_labels:
        print(f"Number of files for {label}: {labels.count(label)}")

    return audio_data, labels

baka po may makatulong

1718805888840.webp
1718805898206.webp
 
Para makatulong sa pag-handle ng maraming at malalaking audio files para i-train sa deep learning gamit ang Google Colab, maaari mong subukan ang mga sumusunod na mga hakbang:

1. Paggamit ng Data Generator: Sa halip na i-load nang sabay-sabay ang lahat ng audio files sa memory, maaari mong subukan ang data generator na mag-load ng mga audio files sa batch habang ginagamit ang TensorFlow o Keras. Ito ay magbibigay-daan sa iyo na mag-process ng audio files nang hindi kailangang i-load ang lahat sa memory nang sabay-sabay.

2. Pag-compress ng Audio Files: Maaari mong subukan ang pag-compress ng audio files bago mo ito i-train. Maaaring gamitin ang mga tools tulad ng FFmpeg para mag-convert ng mga audio files sa mas mababang resolution o bit rate na hindi masyadong makakaapekto sa kalidad ng audio.

3. Pag-subsample ng Data: Kung masyadong marami ang audio files na kailangan mo i-train, maaari mong subukan ang pag-subsample ng data para magkaroon ng mas maliit na dataset. Maaari kang pumili ng random na mga samples o kaya naman ay pumili ng mga representatibong audio files para i-train ang iyong model.

4. Paggamit ng External Storage: Kung hindi sapat ang storage ng Google Colab, maaari mong subukan ang pag-save ng audio files sa external storage tulad ng Google Drive at pag-access sa mga ito mula sa Colab. Maaari mong i-mount ang Google Drive sa Colab at gamitin ito para mag-load ng audio files.

5. Pag-optimize ng Code: Maaari mong pag-aralan at i-optimize ang iyong code para maging mas efficient at mabawasan ang memory consumption. Maaari mong subukan ang pag-iwas sa pag-load ng buong audio file sa memory at sa halip ay mag-process nito ng chunk by chunk.

Sa pamamagitan ng paggamit ng mga nabanggit na paraan, maaaring mabawasan mo ang memory consumption at matugunan ang problema sa pag-load ng maraming at malalaking audio files sa Google Colab para sa iyong deep learning project. Sana makatulong ito sa iyo!
 

About this Thread

  • 1
    Replies
  • 382
    Views
  • 1
    Participants
Last reply from:
Unknown user

Trending Topics

Online now

Members online
1,225
Guests online
1,327
Total visitors
2,552

Forum statistics

Threads
2,273,502
Posts
28,949,949
Members
1,235,771
Latest member
bytz
Back
Top