[問卦] python做科學運算,要分享什麼?

看板 Gossiping
作者
時間
留言 168則留言,111人參與討論
推噓 108  ( 112推 4噓 52→ )
欸欸 我明天group meeting要分享python科學數值運算小技巧 我目前想到要講的 1. 介紹numpy 2. 不要用迴圈 用numpy 3. 用numba jit編譯 4. 用multiprocessing加速 5. 藉由torch 使用gpu做運算 科學運算相關的python小技巧 臥虎藏龍的鄉民還有什麼好建議嗎? --
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 128.146.189.73 (美國) ※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1642713511.A.2E6.html
1Fbadbadook: https://i.imgur.com/r4IJDdN.jpg 180.217.24.205 01/21 05:21
2Fdeepdish: 睡著惹 220.134.89.190 01/21 05:23
3FScathach: hello world 的技巧 49.158.127.17 01/21 05:24
4FHuangJC: 即時 AI 換臉。換自己當A片男主角不用等 49.217.109.203 01/21 05:25
5Farrenwu: 我覺得第5項可以改cupy,或者也介紹cupy 98.45.135.233 01/21 05:28
我之前測了一下cupy 很多功能沒比torch快 你有興趣可以認真跑個benchmark看看
6Farrenwu: cupy的優點是用起來跟numpy差不多 98.45.135.233 01/21 05:28
torch我覺得也差不多啊 ※ 編輯: newwu (128.146.189.73 美國), 01/21/2022 05:30:03
7Farrenwu: 你是用cupy幾版啊? 之前 anaconda 是v6 98.45.135.233 01/21 05:30
8Farrenwu: 的時候有些是真的滿慢的 98.45.135.233 01/21 05:30
9Fdemandlonely: 科學運算青青幾時會被起訴 39.13.196.125 01/21 05:30
10Farrenwu: 我沒有用過torch,但numpy 跟 cupy 用起 98.45.135.233 01/21 05:30
11Farrenwu: 來幾乎就是把程式瑪裡面的 numpy改cupy 98.45.135.233 01/21 05:31
12Farrenwu: torch 也這麼方便喔? 98.45.135.233 01/21 05:31
我覺得幾乎是這樣 這也是我用torch 不用tensorflow的理由 最近的版本更是大多數的numpy function都有對應 和cupy比不知道哪個涵蓋得多
13Fwuyiulin: 我覺得很吃 interperter 有時候向量運 114.42.10.52 01/21 05:35
14Fwuyiulin: 算會被解成迴圈讀取…benchmark出來會 114.42.10.52 01/21 05:35
15Fwuyiulin: 一樣(# 114.42.10.52 01/21 05:35
沒道理啊 都用numpy了 應該是用numpy底層的c編譯出的code吧
16FALTandTAB: faiss 27.52.11.33 01/21 05:35
17Fwuyiulin: pytorch 我覺得最好用的是可以一次扔一 114.42.10.52 01/21 05:37
18Fwuyiulin: 整個 tensor 做 矩陣乘法 再用 nn.func 114.42.10.52 01/21 05:37
19Fwuyiulin: tion去運算 自己土炮出來的底層可能比 114.42.10.52 01/21 05:37
20Fwuyiulin: 較快 但沒那麼方便跟直觀 114.42.10.52 01/21 05:37
21Farrenwu: multiprocessing 我覺得可以往後放,這個 98.45.135.233 01/21 05:38
22Fwuyiulin: 上面是不討論 numpy 狀況 我的意思是 b 114.42.10.52 01/21 05:38
23Fwuyiulin: uilt-in function for python 114.42.10.52 01/21 05:38
24Farrenwu: 隨便寫可能會遇到 PicklingError 98.45.135.233 01/21 05:38
25Farrenwu: https://bit.ly/3IeOryy 98.45.135.233 01/21 05:38
感謝分享 因為有人想要學我才放的 不然我也沒用過幾次
26Farrenwu: 我之前也是自己跑模擬被multiprocessing 98.45.135.233 01/21 05:42
27Farrenwu: 炸到才知道有那鳥事 98.45.135.233 01/21 05:42
28Farrenwu: numba jit 真的很不賴 98.45.135.233 01/21 05:45
真的 而且會optimize 你假如用numpy向量運算沒注意細節,jit會快很多
29Fgrace132004: 拍聳的爬蟲 不是滿好用的嗎 36.226.91.17 01/21 05:48
30Fdarren8221: numpy numba jit parallel mp cupy 75.36.206.235 01/21 05:55
是說說到gpu 我覺得julia cuda超好寫 比c好寫太多 效率也不差 ※ 編輯: newwu (128.146.189.73 美國), 01/21/2022 05:58:54
31Fliu1030: 介紹pytorch 剩下不重要 42.73.63.174 01/21 06:11
32Fpc006229: python 連文組都會還要報啥 140.113.87.196 01/21 06:12
33Fherculus6502: 現在幾點而已竟然這麼多樓114.136.235.229 01/21 06:13
34Farrenwu: 文組不會的是 numpy 呀 98.45.135.233 01/21 06:14
35FEriri: 啥group meeting= = meeting報這種大家可以 192.226.182.12 01/21 06:15
36FEriri: 自己學的東西 誰會感興趣= = 192.226.182.12 01/21 06:15
又不是我要求的 我們的group meeting很free啦 大部分的時候都不是報paper那種 反正半小時結束也可以
37Fggcip0514: group meeting 報這個誰要聽? 152.23.88.207 01/21 06:18
38Fvelaro: broadcasting吧 35.2.21.79 01/21 06:18
這倒是值得一說
39FLincolnBoy: 猛 我也想聽 168.5.162.145 01/21 06:25
40FEriri: group meeting報paper也沒人要聽阿 192.226.182.12 01/21 06:29
41FEriri: 老闆通常只想聽有甚麼研究上的progress 192.226.182.12 01/21 06:30
喔喔 我們的group meeting不是這樣 主要是學生分享一些實用的主題 有些內容本來就很課本
42Fwonder007: 報這幹麻?非本科? 42.73.47.137 01/21 06:33
廢話 CS報這個是要笑死人嗎
43FLowpapa: PYTHON的歷史 61.228.102.128 01/21 06:39
這最無用吧 有人看程式書很認真讀完這一部份的嗎
44FLincolnBoy: 有沒有整理完的slide 想讀 168.5.162.145 01/21 06:44
我可以把notebook分享給你 ※ 編輯: newwu (128.146.189.73 美國), 01/21/2022 06:46:47
45Faska2000: scikit learn and jupiter 114.198.171.78 01/21 06:56
46FSuperxixai: 偶在初學Python 也想要Notebook @@ 42.76.31.68 01/21 06:56
47Fvenomsoul: Panda, Django 122.118.200.7 01/21 07:02
48Ffan5566: 不如介紹copy paste 223.136.118.72 01/21 07:06
49Fyyy855029: 想要notebook+1118.166.175.120 01/21 07:12
50Fbradyhau106: 我都用 fortran 寫111.241.105.180 01/21 07:30
51Ffastyangmh: 想要+1 27.242.66.146 01/21 07:32
52Fjellyfishuan: 想要+1 111.71.110.141 01/21 07:39
53Froyli: pickle有安全性問題,少用 36.237.107.40 01/21 07:41
54Fnyitalumnus: 調用是支語,可以用英文名詞嗎?虧 36.226.210.157 01/21 07:53
55Fnyitalumnus: 你ip還是美國。 36.226.210.157 01/21 07:53
雖然我不在意,修了 主要是已經太多英文了 不想太晶晶體
56Fmooc0102: 想要筆記!謝謝 42.73.125.242 01/21 07:54
57FTolkien: +1, thank you for sharing169.232.149.122 01/21 07:54
58Fruokcnn: Dynamic programming 111.71.80.135 01/21 07:55
59Fjababa520: 學cython 223.136.169.51 01/21 07:59
60Flikeyousmile: 視覺化方面有plotly,簡單幾行能做223.136.247.139 01/21 08:25
61Flikeyousmile: 互動式,3d,時間軸的圖223.136.247.139 01/21 08:25
我喜歡plotly 不過感覺系上的人都沒特別感興趣(畫圖就是要發paper啊) dash還能簡單就做出互動界面
62Flikeyousmile: 還有操作excel的xlwings,不用存檔223.136.247.139 01/21 08:26
63Flikeyousmile: 直接操作223.136.247.139 01/21 08:26
64Flikeyousmile: MongoDB非結構化資料庫跟python 整223.136.247.139 01/21 08:28
65Flikeyousmile: 合不錯223.136.247.139 01/21 08:28
66Flikeyousmile: 直接用pandas啦,numpy 比較低階223.136.247.139 01/21 08:29
看用途啦
67FForbidden204: jax 幾乎是無縫版的gpu-numpy 1.200.135.191 01/21 08:34
主要是我看benchmark,jax的速度好像也不如torch
68FZXCWS: 科學運算還是用fortran居多 101.10.47.53 01/21 08:40
69FZXCWS: 數值運算能力 有fortran效能好.. 101.10.47.53 01/21 08:40
我不會 已經會c python julia了 懶得多學 現在也越來越少fortran了 都是老人/老闆傳下來的code python的好處還有可以直接接軌業界
70Fa0916665106: 想知道call c++ dll 跟純c++差異 39.9.129.111 01/21 09:04
71Ftony467913: Python 社群的分享精神真好,連在八卦 114.34.225.14 01/21 09:08
72Ftony467913: 版都這麼認真討論回答 推 114.34.225.14 01/21 09:08
等我明天會站內信給要的,可是是英文喔 ※ 編輯: newwu (128.146.189.73 美國), 01/21/2022 09:16:49
73Fapplemilker: notebook +1 123.195.198.63 01/21 09:17
74FCireiat: 我也想要,謝謝您,再麻煩站內了 39.9.72.164 01/21 09:22
75Fmartin880501: 想要+1 49.216.162.11 01/21 09:25
76FKYS: 可以分享notebook嗎?感謝 111.71.49.248 01/21 09:29
77Fihczfu: 想要notebook+1 118.171.118.17 01/21 09:35
78Fapm: 可以也寄notebook給我嗎?謝謝 24.30.127.18 01/21 09:35
79Fdavidmath: 想要+1 最近有想學 謝謝>< 101.9.98.239 01/21 09:35
80Fysyuar: 求分享+1 59.124.94.67 01/21 09:36
81Fji3cp4su3ok: 想要++求分享 感謝 175.181.211.25 01/21 09:43
82FASD332: +1 Thx 111.71.213.247 01/21 09:51
83Fsammy0703: 求分享++跪謝192.192.124.201 01/21 09:52
84Fthefggeuck: 求分享,謝謝。 42.73.213.43 01/21 09:53
85FXP: 求分享+1 59.124.127.49 01/21 09:57
86Fasdfgh55585: 需要 謝謝 42.75.159.129 01/21 09:59
87Fprofitrader: 想要筆記++ 感謝114.136.234.197 01/21 10:05
88Fcgyue006: ++ 103.152.151.68 01/21 10:10
89FWINxx: 想要筆記+1 謝謝~ 101.9.200.123 01/21 10:10
90Fdk2486248: ++ 218.164.54.246 01/21 10:15
91Flikeyousmile: 筆記+1223.136.247.139 01/21 10:22
92Fvince1452: 求分享筆記,謝謝 27.240.161.140 01/21 10:23
93Fcomedymania: 想要筆記 +1,謝謝~ 42.73.82.245 01/21 10:32
94Ftseapau85: +1 notebook 61.61.145.68 01/21 10:39
95Fshingai: 想拜讀高手的分享!先謝謝您慷慨分享111.254.212.130 01/21 10:53
96Fgypsophila99: 想要+1 111.82.96.15 01/21 11:03
97Fnavstar: +1感謝! 49.216.161.64 01/21 11:13
98Ftpegioe: 68.181.16.196 01/21 11:25
99Fimba8591: 站內++ 27.247.100.254 01/21 11:28
100Feco: 站內+1 129.19.63.117 01/21 11:31
101Fbe00148: 把騎兵全部變成步兵片啊 101.12.32.186 01/21 11:57
102Fvaliant1014: notebook++ 42.73.155.1 01/21 12:04
103Fyuiweq1999: 想要筆記+1 求分享感謝~111.235.208.139 01/21 12:04
104Fcommiserate: 想要+1 223.140.91.74 01/21 12:19
105FPTTYA: 站內+1 42.73.143.205 01/21 12:21
106Fboooozaaaa: Notebook+1 42.76.173.174 01/21 12:21
107Fzaxddg: 站內+1 61.218.151.186 01/21 12:23
108Ftobe0105: 想要notebook +1 謝謝 60.251.32.50 01/21 12:30
109Fliuted: 站內+1 42.76.9.146 01/21 12:30
110Fnayaya: +1 223.136.229.96 01/21 12:34
111Fwoogee: 筆記++ 1.171.43.126 01/21 12:41
112FYosi777: 想要+1 謝謝!223.138.117.117 01/21 12:44
113Fhope2801: 求分享,謝謝 110.26.39.83 01/21 12:46
114Flukelove: 站內++ 223.140.206.74 01/21 12:47
115Fadsl54010: +1111.249.209.231 01/21 13:00
116Fsnowball: 站內notebook+1 101.12.21.109 01/21 13:04
117Fhenry4204aaa: 想要筆記+1 感謝 140.109.53.252 01/21 13:05
118Ftomwhite: 求分享 感謝~ 223.141.90.173 01/21 13:15
119FBJkiller: 筆記謝謝 雖然一定不會給 123.240.243.33 01/21 13:17
120Ftiamo77: 站內++ 謝謝 107.3.131.211 01/21 13:19
121Fkoim: 筆記+1 謝謝 60.250.107.120 01/21 13:21
122Ff66043284: 有興趣Notebook +1,先感謝分享 27.53.112.209 01/21 13:22
123Fshoeshoeya: notebook+1 感謝 61.216.176.145 01/21 13:23
124Fzlot: 想要筆記+1 謝謝~122.116.185.203 01/21 13:30
125FspotH: 站內+1 感謝 111.249.67.31 01/21 13:36
126Froyshome: 想要+1 101.12.101.189 01/21 13:42
127FHuangJC: python 的引數傳送非常靈活,是這原因才 49.217.109.203 01/21 13:44
128FHuangJC: 讓一堆東西寫在上面嗎?不然明明想要速度 49.217.109.203 01/21 13:45
129Fperrie7741: 想要+1 101.10.109.242 01/21 13:45
130FHuangJC: 就用 C或組語重寫啊.. 49.217.109.203 01/21 13:45
131Fpupudice: +1 謝謝 122.60.19.93 01/21 13:49
132Fyoyololicon: 你沒要用自動微分功能換pytorch幹麻 60.250.32.97 01/21 14:12
133Fyoyololicon: 想跑在gpu用cupy就好了 60.250.32.97 01/21 14:13
134Fyoyololicon: torch有些相同功能的跟numpy名稱不同 60.250.32.97 01/21 14:13
135Fyoyololicon: 還更不方便 60.250.32.97 01/21 14:13
136Fyoyololicon: 你要教torch那就直接教怎麼寫custom 60.250.32.97 01/21 14:14
137Fyoyololicon: backward fundtion, cpp extension 60.250.32.97 01/21 14:14
138FSHiroo: 想要+1 感謝分享 42.74.127.133 01/21 14:14
139Fashura1234: tf2.0也差不多了 174.127.227.63 01/21 14:15
140Fyoyololicon: 說到數值運算的小技巧我推薦是einsum 60.250.32.97 01/21 14:17
141Fyoyololicon: 除非你tensor要消掉的維度很複雜 60.250.32.97 01/21 14:17
142Fyoyololicon: 不然einsum有夠慢 60.250.32.97 01/21 14:18
143Fyoyololicon: 一般人的usecase最多只需要用到bmm 60.250.32.97 01/21 14:19
144Fyoyololicon: @Huang因為生態圈支援完整吧 60.250.32.97 01/21 14:23
145Fyoyololicon: 速度倒是不用擔心 數值運算套件的底 60.250.32.97 01/21 14:24
146Fyoyololicon: 層全部是編譯語言 python只是當個界 60.250.32.97 01/21 14:24
147Fyoyololicon: 面XD 60.250.32.97 01/21 14:24
148FHuangJC: 生態圈應該是大者恒大,除非財團介入力推 49.217.109.203 01/21 14:44
149FHuangJC: C語言因為可攜性,不是建立生態圈很久了? 49.217.109.203 01/21 14:44
150Fxbelieve: notebook+1 感謝 39.13.197.208 01/21 14:44
151Fyoyololicon: 做數值運算跟研究的沒這麼需要可攜 60.250.32.102 01/21 15:04
152Fyoyololicon: 性吧XD 60.250.32.102 01/21 15:04
153FYeeee2018: 站內++ 謝謝 114.26.218.144 01/21 15:32
154Fstilllove56: 站內++ 謝謝 211.75.72.242 01/21 16:12
155Ftatlacz: 我要 站內++ 謝謝 91.40.95.213 01/21 16:34
156Fvictorchiang: 筆記++,感恩! 46.114.145.118 01/21 16:50
157Fdosmark9: +1 49.216.26.238 01/21 17:35
158Frollstone: 站內++ 謝謝 42.73.122.122 01/21 18:12
159Flalalada: 站內++ 感恩!! 114.84.149.183 01/21 18:35
160FnotlE: notebook +1! 謝謝 101.137.10.86 01/21 20:39
161Fallenfish: 求分享,也想要學習,謝謝 219.68.197.78 01/22 01:26
162Fclement1mom: 想要notebook +1, 謝謝! 4.34.2.82 01/22 01:41
163Fnewwu: 我整理一下 看看這邊晚上或明天會寄 128.146.189.73 01/22 02:22
164FBravo5566: 想要瞭解+1,是否方便分享筆記,謝謝 110.26.6.71 01/22 09:11
165FBravo5566: 您 110.26.6.71 01/22 09:11
166Frose1598: 想要notebook+1 ++ 180.217.136.13 01/22 10:08
已寄出, 假如沒有要,但是我不小心寄了,抱歉 如果有跟我要沒收到,再跟我說
167Fpupudice: 太神啦 八卦良心 謝謝您 118.149.95.167 01/23 06:14
有些例子寫錯了 修正一下 ※ 編輯: newwu (65.27.155.65 美國), 01/23/2022 06:52:45
168Fprmotolprlin: 想要+1 不知道還來得及嗎QQ 感謝 140.112.25.98 01/24 10:40

八卦 最新熱門文章

18 [問卦] 95汽油爆跌?
40 gossiping 2022-05-28 23:38

最新文章