程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Developers go on the stage: which is easier to use than Python in Julias machine learning?

編輯:Python

Almost Human reports

edit : Chen Ping

2022 year , Which programming language would you choose ?

There was a saying spread a few years ago :Julia Will replace Python, Become one of the new and most popular programming languages . Let's take a wait-and-see attitude towards this statement for the time being , But as a powerful tool in scientific computing ,Julia The advantages have emerged , This means that programmers have another choice .

In Data Science 、 Artificial intelligence and other fields , Careful contrast Julia and Python, We will find that : Same task , as long as Python Achievable ,Julia You can do it. , And much more efficient , The grammar is also concise and elegant , Just in terms of communication , Fame is not as good as Python.

In recent days, ,reddit A hot discussion from the majority of netizens , This post mentioned , lately , some Julia The developers of the language pack discussed Julia in ML Current state , And compare its state with Python ML Ecosystems are compared .

Original address :

https://www.reddit.com/r/MachineLearning/comments/s1zj44/r_julia_developers_discuss_the_current_state_of/

From the University of Utrecht JordiBolibar Think ,「 Julia Indeed, it has great potential in machine learning , But its current state is a bit mixed . More specifically , I am here SciML Insist on using Julia The main reason is ,DifferentialEquations.jl The library works very well , But in Python Nothing similar was found in the . However , For my research , The real pain is AD part . Ever since I started using Julia , I am here Zygote Two errors were encountered in , This slowed down my work for several months . But I still think Julia yes SciML The best choice , But these libraries ( And its documentation ) It should be optimized to be more user-friendly .」

Net friend @jgreener64 Express :「Julia Medium ML It is very powerful in some fields ,Julia Anything is possible .Julia The problem is :Julia Medium ML Need a lot of existing knowledge or a lot of time to search / Repeated test . On a personal level , I'm currently using Julia Develop novel differentiable algorithms .」

In addition to the heated discussion of netizens ,Julia Package developers Christopher Rackauckas Around the following 7 A question , Answered the content that netizens are more concerned about .Rackauckas yes MIT And mathematicians and pharmacologists at the University of Maryland , It mainly uses Julia Programming .Rackauckas by Julia、 Mathematics and random biology have opened special blogs , To introduce the relevant content , also Rackauckas stay Julia Some libraries have been developed in , Include ( But not limited to, )DifferentialEquations.jl and Pumas.

Christopher Rackauckas

The questions include :

  1. today Julia Medium ML Where did it really shine ? In what ways will this ecosystem outperform other popular in the near future ML frame ( for example PyTorch、Flax etc. ), Why? ?
  2. at present Julia Of ML What are the shortcomings of ecosystems in terms of function or performance ?Julia Where are the time nodes to become competitive in these areas ?
  3. Julia Standards for ML package ( For example, deep learning ) How does it compare with popular alternatives in terms of performance ( faster 、 More slowly 、 The same order of magnitude )?
  4. Is there anything important Julia experiment , Can be aimed at popular ML Benchmark alternatives ?
  5. If a company or organization is considering creating a position for Julia Of ML Ecosystems contribute , Is there a best case ? Why should they do this ? Which contributions are the most influential ?
  6. Why should independent developers working with other frameworks consider Julia Of ML Ecosystems contribute ?
  7. For certain tasks ,Julia What software packages do developers tend to use ?Julia What do developers want to add that doesn't currently exist ?

In the following, we have selected several issues that we are more concerned about to report :

problem 3:Julia stay 「 standard ML」 How is the performance of the ?

Julia The kernel speed is very good : stay CPU On , We did very well , stay GPU On , Everyone just calls the same cudnn etc. ;Julia Of AD The speed is also very good . however Zygote There may be some overhead , But with Jax/PyTorch/TensorFlow comparison ,Zygote In most cases, the speed is very fast . say concretely ,PyTorch The cost is much higher , In standard ML You can't even measure... In the workflow . A large enough matrix multiplication will solve the assignment problem or other problems O(n) problem ;Julia No fusion kernel , So in most benchmarks , If the user views it , You'll find that it doesn't merge conv or RNN cudnn call .

problem 4: What important experiments and benchmarks should we track ?

XLA The distributed scheduler is very good . When we think about expansion , We should ignore PyTorch, Think about it DaggerFlux And TensorFlow/Jax.XLA More flexibility to change operations , So I think XLA It's the winner , We need to use e-graphs Skills to match it . Another thing to pay attention to is 「 Missing middle part in automatic differentiation 」, This situation still needs to be solved .

problem 7: What are the recommended packages ?

I tend to use... When needed Flux, But we still try to use DiffEqFlux. In terms of existing kernels ,Flux Is the most complete , But its style bored me . I hope to have one Flux Do not use implicit parameters , Instead, use explicit parameters . I hope these parameters are determined by ComponentArrays Express .

Please refer to :https://discourse.julialang.org/t/state-of-machine-learning-in-julia/74385

THE END

Please contact the official account for authorization.


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved