|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|||||||||||
np.array большое потребление памяти04.04.2023, 11:59. Показов 2687. Ответов 25
кусок данных беру из бд напрямую в panda.dataframe делаю пред обработку и маленькими частями запихиваю в list
Для tensorflow нужно чтобы данные были в numpy Я и запихиваю всё это в
10% выжирает около 40 гигов все данные входят в диапазон от 0 до 1 Есть ли способ уменьшить массив? float16 ситуацию не меняет.
0
|
|||||||||||
| 04.04.2023, 11:59 | |
|
Ответы с готовыми решениями:
25
Как уменьшить потребление памяти?
Большое потребление памяти приложением |
|
Модератор
|
||||
| 04.04.2023, 12:20 | ||||
|
Ты понимаешь что вообще делаешь в программе? На этапе подготовки, ты уже занял 15гб места в пустую. Добавлено через 3 минуты Тут либо данные подтягивать ленивым способом, либо не создавать кучу не нужных переменных и держать кулачки чтоб тебе хватило места.
0
|
||||
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|
| 04.04.2023, 13:09 [ТС] | |
|
Fudthhh, Не совсем так pandas Я использую только для предобработки данных. В цикле он обновляется больше 2000 раз и можно просто пренебречь. np после записи массива занимает больше 40 гигов. это без учёта предыдущих данных. Я просто не понимаю почему np.array занимает в 3.5 раза больше памяти. если бы в 2-а раза вопросов бы не возникло.
Добавлено через 4 минуты Fudthhh, Вполне возможно что надо сохранять не в list а в pandas.datafreme и после этого преобразовывать. Может np создаёт индексы вдоль и поперёк и можно их как то отключить Я не нашёл не чего в интернете.
0
|
|
|
Модератор
|
|||
| 04.04.2023, 13:35 | |||
|
А теперь посчитай: 4974910 * 256 * 91 * 2 = ?
0
|
|||
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|||||||||||||||||||||
| 04.04.2023, 13:36 | |||||||||||||||||||||
|
Вообще-то копирование DataFrame в массив numpy лучше делать вот так:
Даже в последнем случае оказывается, что роста объема практически нет. Легкий эксперимент:
2
|
|||||||||||||||||||||
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|
| 04.04.2023, 13:55 [ТС] | |
|
passant, Значит надо заполнять в pandas? Я почему-то изначально решил заполнять в list Сегодня протестировать не успею ну если что отпишусь завтра.
0
|
|
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|
| 04.04.2023, 14:33 | |
|
Что значит "надо заполнять в pandas?". Я не говорил ни про "надо", ни про pandas. Я просто показал, как надо обращаться с памятью. Ну, как минимум - из pandas перегонять прямо в numpy, а не через список. А все остальное - использование сначала Pandas, потом numpy - это ваше личное решение.
0
|
|
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
||
| 04.04.2023, 14:40 [ТС] | ||
|
passant,
Я без каких то претензий говорил. Извините если чем то обидел.
0
|
||
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|
| 04.04.2023, 15:00 | |
|
Этой фразой я говорю, что если у вас есть DataFrame (почему он у вас есть - я не знаю, это вы так решили) и него скопировать в numpy (опять таки, это вы так решили), то делать это лучше не через первую перегонку в список - с потерей памяти, вторую перегонку в массив - с еще одной потерей памяти, а напрямую, при которой память дополнительно вообще практически не расходуется.
0
|
|
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|
| 04.04.2023, 15:24 [ТС] | |
|
passant, dataframe мне нужен для быстрой предобработки всего фрейма есть лямбда которая скейлит одну строку датафрейма. Питоровскими методами это занимает секунд 20 а в датафрейме секунду на все строки. np с многомерными массивами работает быстрее + reshape. Я почитаю как дозаписывать np.array но на сколько Я помню он выделяет память на оба массива копирует всё это добро и удаляет старый массив.
0
|
|
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
||
| 04.04.2023, 16:00 | ||
|
0
|
||
| 04.04.2023, 16:11 | |
|
Не по теме: passant, проблема xy.
0
|
|
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|
| 04.04.2023, 16:28 [ТС] | |
|
passant, Да Я это понимаю что tuple не любит добавлений из за чего он быстрее и меньше весит чем list. Вернёмся к началу разговора Я понимаю что python list имеет большой объём из за того что туда можно записать str int float и всё это в одном списке. Как получается что создание стандартизированного float32 занимает больше места в памяти чем list питора? Может быть из за того что создаётся из листа он больше памяти занимает? Я не знаю и не где такой информации не нашёл.
0
|
|
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
||||||||||||||
| 04.04.2023, 18:03 | ||||||||||||||
|
Добавлено через 32 минуты И по ходу. tuple - не "не любит" дополнения. Он их просто на дух не переносит, т.е. прямо и безоговорочно ЗАПРЕЩАЕТ!
Что такое "стандартизированное float32" для меня вообще осталось загадкой.
0
|
||||||||||||||
| 04.04.2023, 18:22 | |
|
Не по теме: passant, мне кажется он не понимает что коллекция из 4974910 * 256 * 91 элементов, будет весить в любом случае очень много, если загонять ее прямиком в память. Скорее всего это обучающий датасет, и он не понимает как реализовать ленивое чтение чтобы тренировать свою модель.
0
|
|
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|||
| 04.04.2023, 18:28 [ТС] | |||
|
passant,
Вы ведёте себя как ребёнок. Если не можете ответить можете перестать писать чушь? Добавлено через 5 минут Fudthhh, Я всё понимаю и данные для моего датасета избыточны. Я не понимаю как они помещаются в list python и не помещаются в np для меня это загадка. И Я пришёл узнать мнение умных людей.
0
|
|||
|
Модератор
|
|||||||||||||
| 04.04.2023, 18:56 | |||||||||||||
|
Snowman8526, сгенирируй мне массив такого размера 4974910 * 256 * 91 не используя numpy
Добавлено через 37 секунд Добавлено через 2 минуты Добавлено через 11 минут
Если тебе не ясно, то вот держи, читай и просвещайся: https://svn.python.org/project... iew=markup
1
|
|||||||||||||
|
6 / 6 / 1
Регистрация: 26.09.2017
Сообщений: 68
|
|
| 04.04.2023, 23:16 [ТС] | |
|
0
|
|
|
578 / 411 / 69
Регистрация: 09.01.2018
Сообщений: 1,363
|
|||
| 05.04.2023, 10:37 | |||
|
Чего?????
Про tuple, который у вас откуда-то по дороге возник я вообще молчу. Не нравятся мои ответы и пояснения, не можете их "переварить" - продолжайте упражняться в изобретении терминов и решении проблемы XY самостоятельно. Мне стало не интересно при таком вашем подходе вести дальнейший диалог.
0
|
|||
|
Модератор
|
|
| 05.04.2023, 11:07 | |
|
Snowman8526, покажи код инициализации X_train
0
|
|
| 05.04.2023, 11:07 | |
|
Помогаю со студенческими работами здесь
20
Большое потребление памяти PostgreSQL Большое потребление памяти с использованием assimp opengl Большое потребление памяти при вызове метода nginx+php-fpm debian - большое потребление памяти Слишком большое потребление оперативной памяти в простом приложении Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|