The fact that he showed that you can do nearest neighbors without a single loop really shows the power of numpy
@joelcastellon91299 жыл бұрын
Jake is a great speaker. Enjoyed and learned a lot from his talks. Waiting for more
@juangutierrez73669 ай бұрын
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.
@veganath5 жыл бұрын
Absolutely brilliant, still being appreciated, thank you Jake
@234892158 жыл бұрын
Thanks, very informative, the tips make my program run lot faster
@JustinHuangA14 жыл бұрын
awesome video. everyone starting out with numpy should watch this video. makes so much more sense now to me.
@sonersteiner2 жыл бұрын
That is cool man, fortranmagic in ipython notebooks!!!!
@danbrown66982 жыл бұрын
I'm wondering how I can reduce the for loops in my project. And it happens that I met this video😮thanks a lot😁
@subhendum8 жыл бұрын
Great talk . Learned a lot.
@gholamrezadar2 жыл бұрын
Amazing video! thank you astronomer.
@nikolaytodorov97855 жыл бұрын
What makes it fast is what makes it slow...Zen. Joke aside, 10x for the vid! Useful info.
@matti13378 жыл бұрын
Really great and enlightening talk.
@jimmorrisshen4 жыл бұрын
This is awesome. Thanks.
@yyf234xcvfqew44 жыл бұрын
Great talk.
@VickiBrownatcfcl5 жыл бұрын
I like the embedded image of the speaker, but not when it obscures part of the current slide. ;-(
@JonathanObise4 жыл бұрын
Amazing insight
@MarkJay7 жыл бұрын
awesome video!
@gmaffy6 жыл бұрын
Great talk. Since this talk, has there been any other methods developed to make loops faster, other than numpy? Anyone?
@wowepic22563 жыл бұрын
Numba and pypy. Also cython
@nodavood5 жыл бұрын
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.
@tejvirjogani4182 жыл бұрын
Can you not work in batches and minimize the number of single operations
@sapirAO7 жыл бұрын
Excellent talk.
@adamhendry9452 жыл бұрын
The strategies for fast looping begin at 7:15
@KirillBezzubkine3 жыл бұрын
23:45 - KNN worth pure numpy
@johnstarfire3 жыл бұрын
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?
@gabestrenk54714 жыл бұрын
Are the slides available anywhere?
@sachinkaps9 жыл бұрын
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?
@fachofacho54366 жыл бұрын
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.
@jb63953 жыл бұрын
what about recursion?
@greatbahram7 жыл бұрын
Thank you, I now it's out of dated. But it was awesome
@bosk1n6 жыл бұрын
Why is that outdated? Any more effecient techniques out there to make python faster?
@ibrahimtouman22796 жыл бұрын
Good lecture, but it would have been more interesting if he compared NumPy to other competing numerical computing softwares such as Matlab, for example...!
@drticktock40112 жыл бұрын
OR....just go back to FORTRAN (or C)
@theamrpi3976 жыл бұрын
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?
@CristiNeagu7 жыл бұрын
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?
@haakonvt5 жыл бұрын
Cristi Neagu Check out numba!
@Psycho4Ever6667 жыл бұрын
26:02 one could also just use D[D==0] = np.inf
@ScottTsaiTech7 жыл бұрын
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.
@Psycho4Ever6667 жыл бұрын
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!!!