Разделение на массив спецификаций c, чтобы избежать смерти ядра - PullRequest
0 голосов
/ 22 февраля 2020

Я пытаюсь преобразовать следующий массив в np.asarray, но мое ядро ​​умирает, так как я пытаюсь преобразовать его в массив, который содержит более 125K строк. Кто-нибудь имеет представление о том, как я go о фрагментации этого массива и избежать смерти моего ядра:

Набор данных:

     #   Column               Non-Null Count   Dtype 
---  ------               --------------   ----- 
 0   title                124434 non-null  object
 1   ingredients          124434 non-null  object
 2   instructions         124434 non-null  object
 3   ingredients_vector   124434 non-null  object
 4   instructions_vector  124434 non-null  object

# Empty array:
char_vectors = []

# Creating vectors for each ingredient:
import numpy as np


for txt in df['ingredients']:
    vec = np.zeros((max_sequence_len, len(char_to_idx)))
    vec[np.arange(len(txt)), [char_to_idx[ch] for ch in txt]] = 1
    char_vectors.append(vec)

%%time
# Transforming vectors to arrays:
char_vectors = [np.asarray(x) for x in split_char_vectors] #For loop was required since np.asarray(char_vectors) was killing kernel
char_vectors = pad_sequences(char_vectors)

# Encoding titles:
labels = label_encoder.transform(df['title'])

Строка: char_vectors = [np.asarray(x) for x in split_char_vectors] убийца , Раньше у меня был char_vectors = np.asarray(char_vecotrs), но он работал хуже.

Этот набор данных подается в пару моделей CNN, LSTM

...