Losing your Loops Fast Numerical Computing with NumPy

  Рет қаралды 80,860

PyCon 2015

PyCon 2015

Күн бұрын

Пікірлер: 56
@ericmacleod8605
@ericmacleod8605 8 жыл бұрын
This guy is python gold.
@cretinobambino
@cretinobambino 8 жыл бұрын
+Артемий Артемий пшшш
@ar..alvida...rahman.....al5311
@ar..alvida...rahman.....al5311 3 жыл бұрын
@Артемий Артемий ৃৃ
@NicolasJulioFlores
@NicolasJulioFlores 6 жыл бұрын
The fact that he showed that you can do nearest neighbors without a single loop really shows the power of numpy
@joelcastellon9129
@joelcastellon9129 9 жыл бұрын
Jake is a great speaker. Enjoyed and learned a lot from his talks. Waiting for more
@juangutierrez7366
@juangutierrez7366 9 ай бұрын
We are using his textbook in our intro to data science class, and his writing is also very informative and accessible at the same time.
@veganath
@veganath 5 жыл бұрын
Absolutely brilliant, still being appreciated, thank you Jake
@23489215
@23489215 8 жыл бұрын
Thanks, very informative, the tips make my program run lot faster
@JustinHuangA1
@JustinHuangA1 4 жыл бұрын
awesome video. everyone starting out with numpy should watch this video. makes so much more sense now to me.
@sonersteiner
@sonersteiner 2 жыл бұрын
That is cool man, fortranmagic in ipython notebooks!!!!
@danbrown6698
@danbrown6698 2 жыл бұрын
I'm wondering how I can reduce the for loops in my project. And it happens that I met this video😮thanks a lot😁
@subhendum
@subhendum 8 жыл бұрын
Great talk . Learned a lot.
@gholamrezadar
@gholamrezadar 2 жыл бұрын
Amazing video! thank you astronomer.
@nikolaytodorov9785
@nikolaytodorov9785 5 жыл бұрын
What makes it fast is what makes it slow...Zen. Joke aside, 10x for the vid! Useful info.
@matti1337
@matti1337 8 жыл бұрын
Really great and enlightening talk.
@jimmorrisshen
@jimmorrisshen 4 жыл бұрын
This is awesome. Thanks.
@yyf234xcvfqew4
@yyf234xcvfqew4 4 жыл бұрын
Great talk.
@VickiBrownatcfcl
@VickiBrownatcfcl 5 жыл бұрын
I like the embedded image of the speaker, but not when it obscures part of the current slide. ;-(
@JonathanObise
@JonathanObise 4 жыл бұрын
Amazing insight
@MarkJay
@MarkJay 7 жыл бұрын
awesome video!
@gmaffy
@gmaffy 6 жыл бұрын
Great talk. Since this talk, has there been any other methods developed to make loops faster, other than numpy? Anyone?
@wowepic2256
@wowepic2256 3 жыл бұрын
Numba and pypy. Also cython
@nodavood
@nodavood 5 жыл бұрын
Thanks. Very useful tips. But, the nearest neighbors example shows a fatal flaw to losing loops. The diff matrix that you generated, transforms your 1000*3 input to a 1000*1000*3 one. This leads to MemoryError in cases with larger input data. I am sorry, but having a fast loop is still a must.
@tejvirjogani418
@tejvirjogani418 2 жыл бұрын
Can you not work in batches and minimize the number of single operations
@sapirAO
@sapirAO 7 жыл бұрын
Excellent talk.
@adamhendry945
@adamhendry945 2 жыл бұрын
The strategies for fast looping begin at 7:15
@KirillBezzubkine
@KirillBezzubkine 3 жыл бұрын
23:45 - KNN worth pure numpy
@johnstarfire
@johnstarfire 3 жыл бұрын
10:16 it gives me 5.19 ms in pure python and 47.4 us with numpy, python is speeding up or computers are faster?
@gabestrenk5471
@gabestrenk5471 4 жыл бұрын
Are the slides available anywhere?
@sachinkaps
@sachinkaps 9 жыл бұрын
What if the data is dynamic? eg a few data points are added every second. So the process might start with no data at the beginning of the day and end up with millions of rows by the end of the day. This is typical for financial time series. I presume insertion of elements or copying would not be very efficient. Is pandas or any other implementation good enough for such use cases?
@fachofacho5436
@fachofacho5436 6 жыл бұрын
Correct me if i'm wrong, but couldn't you use array slicing to make operations on the array? That is because editing the sliced array edits the array as a whole.
@jb6395
@jb6395 3 жыл бұрын
what about recursion?
@greatbahram
@greatbahram 7 жыл бұрын
Thank you, I now it's out of dated. But it was awesome
@bosk1n
@bosk1n 6 жыл бұрын
Why is that outdated? Any more effecient techniques out there to make python faster?
@ibrahimtouman2279
@ibrahimtouman2279 6 жыл бұрын
Good lecture, but it would have been more interesting if he compared NumPy to other competing numerical computing softwares such as Matlab, for example...!
@drticktock4011
@drticktock4011 2 жыл бұрын
OR....just go back to FORTRAN (or C)
@theamrpi397
@theamrpi397 6 жыл бұрын
Just a doubt though....even if numpy ufunc does take an array as an element....internally should the elements of an array loop to get the output? So is it right to say looping does not happen in numpy?
@CristiNeagu
@CristiNeagu 7 жыл бұрын
The problem i have is that i use functions that cannot be trivially simplified to ufuncs. Stuff like detecting a rising edge, for example. How do you speed up those kinds of loops?
@haakonvt
@haakonvt 5 жыл бұрын
Cristi Neagu Check out numba!
@Psycho4Ever666
@Psycho4Ever666 7 жыл бұрын
26:02 one could also just use D[D==0] = np.inf
@ScottTsaiTech
@ScottTsaiTech 7 жыл бұрын
That'd accidentally change the distance between two distinct points that happen to occupy the same space and not just between a point and itself. I think it depends on whether that's acceptable in your model.
@Psycho4Ever666
@Psycho4Ever666 7 жыл бұрын
A bit embarrassing, but I haven't thought about that... it was too obvious xD
@陆得水
@陆得水 5 жыл бұрын
How does X.reshape(1000, 1, 3) - X end up in a result with shape(1000, 1000, 3)? I can't figure it out. Help!!!
@陆得水
@陆得水 5 жыл бұрын
Figured it out by myself. haha
@OlumideOni
@OlumideOni 5 жыл бұрын
Could you explain please?
@tabtang
@tabtang 4 жыл бұрын
@@OlumideOni docs.scipy.org/doc/numpy/user/basics.broadcasting.html
@OlumideOni
@OlumideOni 4 жыл бұрын
@@tabtang thank you
@RonJohn63
@RonJohn63 7 жыл бұрын
11:45 How many of these tasks can also be done using itertools?
@CristiNeagu
@CristiNeagu 7 жыл бұрын
They will be slower than ufuncs.
@rohitbhanot7809
@rohitbhanot7809 5 жыл бұрын
Itertools is mainly built keeping in mind memory efficiency and not really execution speed.
@annamalainarayanan9310
@annamalainarayanan9310 8 жыл бұрын
almost everyone who did numpy knows this - seemingly very basic and nothing hacky!
@zachs5231
@zachs5231 7 жыл бұрын
you should link us to one of your talks anna
@tam31433
@tam31433 6 жыл бұрын
But he is right anyway.
@raphaeldayan
@raphaeldayan 3 жыл бұрын
not everyone
Raymond Hettinger - Super considered super! - PyCon 2015
46:52
PyCon 2015
Рет қаралды 123 М.
Крутой фокус + секрет! #shorts
00:10
Роман Magic
Рет қаралды 31 МЛН
Players vs Corner Flags 🤯
00:28
LE FOOT EN VIDÉO
Рет қаралды 95 МЛН
1000x faster data manipulation: vectorizing with Pandas and Numpy
26:39
What polars does for you - Ritchie Vink
27:45
EuroPython Conference
Рет қаралды 4,1 М.
WHY IS THE STACK SO FAST?
13:46
Core Dumped
Рет қаралды 158 М.
Jake Vanderplas - Statistics for Hackers - PyCon 2016.mp4
40:45
PyCon 2016
Рет қаралды 83 М.
Type Hints  - Guido van Rossum - PyCon 2015
49:26
PyCon 2015
Рет қаралды 47 М.
Why Isn't Functional Programming the Norm? - Richard Feldman
46:09