He d’aprendre Julia? – KDnuggets


Imatge de l’autor

La ciència de dades està dominada pels llenguatges de programació Python i R. La seva popularitat es deu a una sintaxi senzilla, una gran comunitat i col·laboradors de codi obert. Fins i tot a les borses de treball, veureu reclutadors que cerquen desenvolupadors i científics de dades que siguin bons en Python, SQL i R.

Però és probable que això canviï aviat? Hi ha un nou concursant a la ciutat anomenat Julia, que està construït per a càlculs científics d’alt rendiment.

Posició Llenguatge de programació Valoracions
25 PL/SQL 0,52%
26 Lisp 0,44%
27 Júlia 0,43%
28 Kotlin 0,43%
29 Scala 0,42%

Índex TIOBE d’octubre de 2022

Actualment, Julia ocupa el lloc 27 a l’índex TIOBE, però té tots els atributs per convertir-se en un dels 10 principals idiomes per a finalitats generals i un dels 5 millors per a la ciència de dades. La versió estable de Julia es va llançar el 2018 i es van complir el 90% de les promeses fetes pels fundadors.

Els 4 fundadors, Jeff Bezanson, Stefan Karpinski, Alan Edelman i Viral B. Shah han anunciat al començament que Julia serà:

  • Tan ràpid com C
  • Tan dinàmic com Ruby
  • Podeu escriure nocions semblants a Matlab
  • Lisp a les macros
  • Tan general com Python
  • Tan amigable estadísticament com R
  • Adoptarà operacions de cadena senzilles com Perl
  • Distribució semblant a Hadoop
  • Potent per a l’àlgebra lineal

En resum, obtindreu el millor de tots els mons.

“Python no és el futur de l’aprenentatge automàtic” – Jeremy Howard

Al vídeo de YouTube, parla de com Python és frustrant tractar grans conjunts de dades i aplicacions d’aprenentatge automàtic. Per aconseguir un alt rendiment, hem d’utilitzar biblioteques escrites en altres idiomes i utilitzar diversos paquets per implementar eficaçment la informàtica paral·lela. També va explicar com Julia es farà càrrec de Python d’aquí a uns anys.

A la publicació, ens endinsarem en Julia i la compararem amb Python. A més, aprendrem com la Júlia és millor per a la teva carrera i veurem alguns dels millors recursos d’aprenentatge.

Julia és un llenguatge d’alt nivell i de propòsit general que permet als investigadors i científics implementar i executar més ràpidament. Està dissenyat per a càlculs d’alt rendiment.

Segons els desenvolupadors de Julia, “Julia es va crear per a la informàtica científica, l’anàlisi estadística, l’aprenentatge automàtic, la mineria de dades, l’àlgebra lineal a gran escala, la computació distribuïda i paral·lela”.

Podeu descarregar l’instal·lador des del lloc oficial i instal·lar-lo en pocs segons. La versió estable actual és la 1.8.2, i si canvieu de R i Matlab, us semblarà natural que entengueu la sintaxi i les funcions.

He d'aprendre Julia?
Imatge de l’autor

Podeu instal·lar paquets utilitzant `Pkg` com es mostra a continuació o escrivint “]” a Repl.

using Pkg
Pkg.add(["PyPlot", "CSV", "DataFrames"])

Igual que els pandes a Python, simplement podem carregar un fitxer CSV com a marc de dades sense fer feina addicional.

A l’exemple, hem importat paquets CSV i DataFrames i després hem utilitzat `CSV.read’ per llegir el fitxer CSV i l’hem convertit en un marc de dades.

using CSV
using DataFrames
df_raw = CSV.read("Heart_Disease_Dataset.csv", DataFrame)

He d'aprendre Julia?

Nota: També podeu importar paquets utilitzant la sintaxi “import”, similar a Python.

En aquesta secció, compararem el rei de tots els llenguatges de programació (Python) amb Julia.

1. Sintaxi

Julia no és un llenguatge de programació orientat a objectes. Es tracta d’un llenguatge escrit dinàmicament que ajuda els científics i els investigadors a escriure codi de la manera més senzilla i més propera a la llengua anglesa. Julia és més neta que Python, especialment per a càlculs científics.

Podeu escriure polinomis igual que a Matlab. A l’exemple següent, hem representat una equació polinòmica i la seva funció Log en color blau.

Estem utilitzant Pyplot per crear gràfics, que és similar a Matplotlib.

using PyPlot
PyPlot.svg(true)
x = range(-3,stop=3,length=20)
y = 2*x.^2 .+ 0.7

figure(figsize=(6,4.3))       #width and height, in inches
plot(x,y,linestyle="-",color="r",linewidth=1.0)
plot(x,log.(y),linestyle=":",color="b",linewidth=3.0)

He d'aprendre Julia?

Igual que l’operador condicional ternari de Python, podem reduir les declaracions if-else a una sola línia.

x = 80; y = 43

if x > y
   println("$x is greater than $y")
end
>>> 80 is greater than 43

És molt més senzill que Python.

x > y && println("$x is greater than $y")
>>> 80 is greater than 43

2.Rendiment

El punt de referència publicat per Julia mostra el temps d’execució superior de Julia sobre Python.

En un exemple, van simular el llançament d’una moneda mil milions de vegades i van emmagatzemar el resultat en una matriu. Com a resultat, Julia era 62 vegades més ràpida que Python.

LLENGUATGE TEMPS (SEgon)
PITÓ 1804
JÚLIA 28.8

Julia ve de manera nativa amb la informàtica paral·lela. La velocitat d’execució és propera a C.

3.Paquet d’ecosistema

Julia té 7.000 paquets registrats i podeu trobar tot tipus d’eines per a l’anàlisi de dades, el maneig de fitxers, l’aprenentatge automàtic, la computació científica i l’enginyeria de dades.

Tot i que el nombre de paquets és molt menor que a Python, el principal avantatge d’utilitzar paquets Julia és que la majoria dels paquets utilitzen Julia al 100%.

Fins i tot podeu trobar les vostres biblioteques de Python preferides a Julia, com ara Fast AI, que es basa en flux.jl.

He d'aprendre Julia?
Imatge de FluxML/FastAI.jl

4.Comunitat

El suport de la comunitat és la columna vertebral dels llenguatges de programació. Una comunitat gran i activa significa més recursos d’aprenentatge per resoldre problemes. Com ja sabeu, Julia és una llengua força nova i té una comunitat més petita però entusiasta. Si trobeu un problema únic, us serà més difícil trobar una solució final en línia en comparació amb Python.

5.Paral·lelisme

Tant Julia com Python poden executar operacions en paral·lel. Per a qualsevol aplicació o solució, és necessari utilitzar tots els recursos disponibles (informàtica i memòria) disponibles. Julia inclou inherentment la informàtica paral·lela i una millor gestió de dades. Mentre que a Python, heu d’utilitzar diverses biblioteques per aconseguir un alt rendiment. En resum, Julia té una sintaxi de paral·lelització menys pesada que la que s’utilitza a Python.

La resposta senzilla és “Sí”. Tot depèn de la teva elecció professional i de la qüestió del temps. Si ets un estudiant que intenta treballar en un camp científic, et proposo que comencis a aprendre Julia.

Si esteu començant la vostra carrera en ciència de dades, us recomanaré Python. És un estàndard del sector i les empreses estaran encantades de contractar-te.

Julia també és adequada per a científics de dades i enginyers que són experts en la matèria i volen ser preparats per al futur aprenent un llenguatge de rendiment superior.

Les principals raons per aprendre Júlia:

  • És un llenguatge escrit dinàmicament que facilita el seu ús.
  • És de codi obert i el codi està disponible a GitHub.
  • Julia us permet trucar directament a biblioteques Python, C i Fortran.
  • Podreu gaudir d’un rendiment similar al C amb menys línies de codi.
  • Julia pot gestionar tasques complexes d’anàlisi de dades fàcilment.
  • Té paquets natius d’aprenentatge automàtic i aprenentatge profund per a models més grans i complexos.
  • La conversió de codi de Python i C és fàcil.

Si sou nou a Julia, us recomano que comenceu el vostre viatge amb un curs d’Introducció a Julia. Inclou exercicis de codificació interactius i 16 vídeos que cobreixen la sintaxi bàsica, les estructures de dades, les funcions i els paquets, i DataFrames per a tasques d’anàlisi de dades.

El procés d’aprenentatge no s’acaba mai, i podeu aprendre més llegint llibres, fulls de trucs, blocs i tutorials. A més, podeu començar a treballar en el projecte d’anàlisi de dades si sou un expert en ciència de dades i intenteu navegar per una nova sintaxi.

Recursos addicionals:

  • Exploreu la col·lecció de llibres de Julia sobre aprenentatge automàtic, ciència de dades, estadístiques i molts més.
  • Tutorials gratuïts de Julia sobre ciència de dades, computació científica i aprenentatge automàtic.
  • Àmplies llistes de reproducció de tutorials i cursos a YouTube.
  • Via ràpida a la sintaxi i la funcionalitat de Julia seguint el full de trucs de Julia.
  • Llegiu blocs de mitjans aportats per la comunitat.

Abid Ali Awan (@1abidaliawan) és un professional de científic de dades certificat que li encanta crear models d’aprenentatge automàtic. Actualment, s’està centrant en la creació de continguts i escrivint blocs tècnics sobre aprenentatge automàtic i tecnologies de ciència de dades. Abid té un Màster en Gestió Tecnològica i un grau en Enginyeria de Telecomunicació. La seva visió és crear un producte d’IA mitjançant una xarxa neuronal gràfica per a estudiants que lluiten amb malalties mentals.

Leave a Comment

Your email address will not be published. Required fields are marked *