[問題] R 記憶體用量

看板R_Language作者 (123)時間8年前 (2017/03/24 22:47), 8年前編輯推噓0(0015)
留言15則, 2人參與, 最新討論串1/2 (看更多)
文章分類提示: - 問題: 當你想要問問題時,請使用這個類別。 建議先利用 google 爬文,如輸入 「想查詢的關鍵字 site:www.ptt.cc/*/R_Language/」。 [問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉) [問題敘述]: http://imgur.com/4UN3EJk
如圖 我跑的物件總共也才不到6gb 可是看系統監控 卻已經有17.6gb在背景了 到底是為什麼阿?? 而且我也執行過gc()了 我原本打算轉換所有的data , 目前因為ram的關係 只能轉1/4部份 有點麻煩 有什麼辦法可以解決? 另外 如果我改到 python 去做轉換 會比較省ram嗎? 謝謝 ps: 我是把圖片轉換成 pixel -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.42.103.52 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1490366877.A.D7F.html ※ 編輯: f496328mm (114.42.103.52), 03/24/2017 22:48:47

03/24 22:50, , 1F
在R上承載資料的是什麼物件或類別?整數類矩陣嗎?
03/24 22:50, 1F

03/24 22:51, , 2F
省不省記憶體應該還是和實做過程比較有關係。
03/24 22:51, 2F

03/24 22:51, , 3F
可以的話,提供一個可重複的虛假例子。
03/24 22:51, 3F
舉例來說 一張圖片 480*640*3 這樣 因為我想到python做vgg16 所以先用R整理成 224*224*3 但只我轉換5000張圖片後 記憶體就快爆了 ※ 編輯: f496328mm (114.42.103.52), 03/24/2017 22:57:00

03/24 23:02, , 4F
你怎麼寫?
03/24 23:02, 4F

03/24 23:02, , 5F
如果是迴圈,每次處理完把物件存RData再rm()掉。
03/24 23:02, 5F

03/24 23:04, , 6F
把資料輸出成實體檔案,之後再餵給python
03/24 23:04, 6F

03/24 23:06, , 7F
R的整數似乎都是32bit,此時是比較浪費,但應該有辦法處
03/24 23:06, 7F

03/24 23:07, , 8F
理才對。
03/24 23:07, 8F
我先抓好每個檔案的位置 然後取5000個出來 之後一次轉一張圖片 最後整理成一個data.table出來這樣 用sapply這樣去做 python的整數是不是佔比較少ram? 因為我train有2萬張圖片 但是test有將近8萬張圖片QQ ※ 編輯: f496328mm (42.78.113.162), 03/24/2017 23:27:05

03/24 23:40, , 9F
重點是轉的過程...
03/24 23:40, 9F

03/24 23:40, , 10F
你應該是在轉的過程過了什麼操作才會用到那麼多RAM
03/24 23:40, 10F

03/24 23:41, , 11F
你給這樣的資訊,我也沒辦法給什麼建議
03/24 23:41, 11F
這是function https://gist.github.com/f496328mm/a342cb39e8ae3b84f01be29a46bb81da 這是main https://gist.github.com/f496328mm/44116adf79356f01e761cfe72627d213 ※ 編輯: f496328mm (114.42.103.52), 03/25/2017 00:28:24

03/25 00:59, , 12F
train.variable=cbind( img.name , train.variable)
03/25 00:59, 12F

03/25 00:59, , 13F
瓶頸在這行
03/25 00:59, 13F

03/25 01:00, , 14F
還有 colnames(train.variable)
03/25 01:00, 14F

03/25 01:00, , 15F
data.table不是這樣用的... 你這樣會做deep copy...
03/25 01:00, 15F
ok 感謝 我晚點改改看 ※ 編輯: f496328mm (114.42.103.52), 03/25/2017 01:09:52
文章代碼(AID): #1OrJ6Tr_ (R_Language)
討論串 (同標題文章)
文章代碼(AID): #1OrJ6Tr_ (R_Language)