Julia anyone?

Interessantes ohne bestimmtes Thema!

Moderator: student

Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Julia anyone?

Beitrag von EDi »

Hai liebe R-Gemeinde,

hat sich jemand von euch schonmal mit julia näher beschäfftigt? Ich beobachte julia ja schon von den Anfängen und habe das Gefühl dass es so langsam abhebt....

Ich hab mir das mal für diesen Winter vorgenommen (advent of code und so) und bin bisher sehr gut reingekommen.
Hab aber noch kein Datenverarbeitung mit gemacht (nur bissl modellierung mit Touring.jl).

Ich weiß student hat da sogar ein Buch drüber geschrieben (https://www.bod.de/buchshop/datenanalys ... 3749485086).

Wie findet ihr es? Was sind die größten unterschiede zu R? Lohnt es sich als ergänzung?

Python und ich werden keine Freunde (offset indizierung und die inkonsistenzen treiben mich zur weisglut...), deshalb könnte julia sich gut in meinem persönlich Portfolio machen...
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Julia anyone?

Beitrag von student »

Hallo EDi,

ich bin ziemlich ernüchtert, was Julia angeht. Wenn ein Julia-Skript zur Datenanalyse gestartet wird, wird jedes mal compiliert. Das kann man zwar in den Griff bekommen, ist mir aber zu viel Umstand. Auch bis die erste Grafik erzeugt wird, dauert mir zu lange. Und dann noch die Instabilität der Pakete. Da bin ich von R eine deutlich höhere Qualität gewohnt und ganz zu schweigen vom Paketumfang.

Um es kurz zu machen: Zur Datenanalyse ist R eindeutig besser geeignet und die Stärken von Julia scheinen im Simulationsbereich zu liegen. Aber hier gibt es wahrscheinlich genug C++-Bibliotheken.

Auch wenn ich es aus wirtschaftlichen Gründen nicht sagen darf, kauf Dir das Buch nicht. Nicht weil ich von meinem Buch nicht überzeugt bin, sondern weil ich glaube, dass Julia nicht das richtige Werkzeug zur Datenanalyse ist. :?
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Athomas
Beiträge: 769
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Julia anyone?

Beitrag von Athomas »

Hallo zusammen,

erstmal frohe Weihnachten an alle - und besonders an das "Fähnlein Fieselschweif" der Aktiven, ganz besonders an EDi, von dem ich hoffe, dass er uns nicht nur "über die Tage" besucht, sondern häufiger wieder reinguckt!

Was Julia angeht ist auch meine anfängliche Euphorie verflogen, das Handling im Zusammenspiel mit R war mir einfach zu hakelig :( !
So richtige Performanceprobleme habe ich eigentlich gar nicht, ich verwende exzessiv data.table, das hilft mir bei den Problemen, denen ich begegne, ganz hervorragend weiter!

@student: Ich bin mit den Möglichkeiten, die R für Simulationen bietet, sehr zufrieden! Aber "Simulation" ist wahrscheinlich auch ein enorm weites Feld...
bigben
Beiträge: 2778
Registriert: Mi Okt 12, 2016 9:09 am

Re: Julia anyone?

Beitrag von bigben »

Hallo Ihr alle,

Ich kann nicht mitreden. Datenanalyse ist nicht mein Beruf und anstelle von zwei Sprachen für diese Domain bietet es sich für mich eher an, irgendwas ganz anderes zu lernen. Deshalb habe ich mich rasch gegen Julia antschieden - spannend, aber zuviel Aufwand für den Nutzen. Es kommt halt immer auf den Verwendungszweck an. EDi hat mal geschrieben, dass er Shiny-Programme mit tausenden von Zugriffen in kurzer Zeit geschrieben hat. In so einem Kontext kann ich mir schon vorstellen, dass eine compilierte Sprache wie Julia ganz anders ihr Vorteile ausspielen kann.

Euch allen ein Frohes Fest,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Julia anyone?

Beitrag von student »

Von mir ebenfalls frohe Weihnachten!

diesem Jahr im Sommer gab es mal ein spontanes Julia-User-Treffen in Köln. Mit mir insgesamt 4 Personen und drei von der Uni. 2 haben sich mit Simulationen und einer im weitesten Sinne mit Datenanalyse beschäftigt. Auch in diesem kleinen Kreis wurde angezweifelt, ob Julia das richtige Tool zur Datenanalyse ist. Es stand im Raum, dass Julia für besondere Zwecke wohl das richtige Werkzeug ist, aber ein Nischendasein führen wird.

Und klar, die "Simulationsfähigkeiten" von R würde ich nie anzweifeln, ich habe nur ein Argument für Julia gesucht! :)
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
bigben
Beiträge: 2778
Registriert: Mi Okt 12, 2016 9:09 am

Re: Julia anyone?

Beitrag von bigben »

Hallo!
Und klar, die "Simulationsfähigkeiten" von R würde ich nie anzweifeln
Das klingt fast wie eine Entschuldigung, etwas gegen R gesagt zu haben. Ich finde es wichtig, dass man nicht zum Fanboy wird. Wenn wir ehrlich sind fällt jedem von uns sofort etwas ein, was uns an R nicht passt und wenn wir etwas nachdenken, dann wird die Liste der Probleme ganz schnell ziemlich lang.

So wie ich das sehe ist das gesamte Tidyverse nicht zuletzt dem Umstand zu verdanken, dass zu vielen R als inhomogenes und inkonsistentes Mischmasch erschien - was es ja objektiv ist. Da Tidyverse erfindet eine neue Statistik/ML-Sprache in R, Julia erfindet eine neue Statistik/ML-Sprache außerhalb von R und Python zeigt, dass es vielseitig genug ist, um eine Statistik/ML-Spache einfach anzuflanschen. Wobei ich die Frage sehr interessant finden, warum das in Python gelingt, in anderen Sprachen aber nicht zu gelingen scheint.

Ich hätte so gesehen nichts dagegen gehabt, ein Unterforum für Julia-Fragen einzurichten, wenn es noch kein Deutsches Julia-Forum gibt und wenn mehrere hier sich in Julia eingearbeitet hätten.
Und klar, die "Simulationsfähigkeiten" von R würde ich nie anzweifeln
Ja, aber machen wir uns nichts vor -- Simulationen gewinnen immer, wenn man mehr Rechenpower hat und sei es einfach nur, weil man die Anzahl der simulierten Einheiten ver-n-fachen kann. Und Rechenpower steigt nunmal mit compiliertem Code und wenn es einfach ist, Code nebenläufig zu betreiben.
Es stand im Raum, dass Julia für besondere Zwecke wohl das richtige Werkzeug ist, aber ein Nischendasein führen wird.
Dagegen ist ja grundsätzlich nichts einzuwenden - auch Nischentools sind wichtig. Aber wenn es denn so wäre, hätte Julia genügend Alleinstellungsmerkmale um zu überleben? Um seine Existenz zu rechtfertigen?
Wenn eine Simulation schnellstmöglich laufen soll, dann wäre es sinnvoll, sie in Fortran oder C++ zu schreiben, wem das zu komplex, anfängerunfreundlich oder absturzgefährlich ist der könnte sie in Rust oder für einfache Nebenläufigkeit in Go schreiben. Für klassische Rechenoperationen wird man libraries für Fortran und C++ finden und für die Präsentation kann man auf JavaSript aufbauen. Die Nische ist also nicht unbewohnt - da gibt es reichlich Konkurrenz.

Irgendwo stand mal, dass JavaScript die schnellste unter den üblichen interpretierten Sprachen sei -- nicht, weil die Sprache sich dafür besonders anböte, sondern weil bei Google und Microsoft und Mozilla und ... die klügsten Köpfe unzählige Denk- und Arbeitsstunden in die Interpreter investiert haben. Wieviele kluge Köpfe werden auf Dauer Zeit in die Entwicklung von Julia und Julia-Bibliotheken stecken, wenn man wirklich nur im Bereich Simulation gegen ein Team wie C++ mit JS antreten wollte? Prediction is difficult, especially about the future. Persönlich glaube ich aber, dass Julia nicht noch mehr Nische sein darf als R, wenn es überleben will. Ich glaube, es muss die Datenorientierung von R mit der Vielseitigkeit von Python und einer Geschwindigkeit nahe dem Bereich der vorgenannten Sprachen verbinden, wenn es überleben will. Man muss eine API im Netz bereitstellen, auf Servern laufen und Shiny ersetzen können und idealerweise noch Desktopprogramme mit GUI anbieten. Es darf anderes, aber nicht weniger als R können, wenn es mithalten will.

Derzeitiger Stand: Im Redmonk-Rating ist die Sprache in der Github Dimension gleichauf mit Perl, Lua und Elixir, in der StackOverflow-Dimension im Bereich zwischen Erlang und Fortran, also jeweils bei etablierten Nischensprachen. Bei CrossValidated gibt es hingegen weiter nur zwei relevante Sprachen. Da sind aktuell 21 Fragen mit dem Julia-Tag versehen.

@EDi: Was ist denn der Einsatzzweck, der Dir gerade vorschwebt?

GLG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Julia anyone?

Beitrag von student »

Hallo Bernhard,

Die Frage
Wobei ich die Frage sehr interessant finden, warum das in Python gelingt, in anderen Sprachen aber nicht zu gelingen scheint.
beantworte ich für mich so, dass die Python-Gemeinde ziemlich groß und ein sehr großes Gebiet der IT abdeckt. Da werden unglaublich viele kreative Gedanken entwickelt und ungesetzt. Mit und an R arbeiten wahrscheinlich im Allgemeinen nur "Datenliebhaber".

Nur mal so aus dem Nähkästchen, also einfacher tratsch:
Die engere Julia-Gemeinde kämpft im allgemeinen gegen Python und insbesondre gegen R was die Datenanalysefähigkeiten angeht. Und gegen C/C++ bezüglich der Mächtigkeit und Geschwindigkeit. Da werden manchmal Argument genannt, die ein wenig nach Verzweiflung klinken. Auch wurden schon im Julia-Forum Anwender, die Julia mit Sprachen wie Python verglichen haben, "abgestraft". Auch ich habe schon die Erfahrung gemacht, als ich mal auf einen Fehler in einem Paket aufmerksam gemacht habe, dass die Bemerkung "Nicht meckern, korrigiere es doch!" gemacht wurde.

Was Datenerhebung auf StackOverflow und Co. angeht, ist Vorsicht angebracht. Das wissen wir ja. Ich hatte mal etwas zu Julia für die iX geschrieben und wollte auch mit derartigen Datenerhebung argumentieren. Damit war die Redakteurin nicht glücklich, weil sie nicht repräsentativ und nicht wirklich aussagekräftig sind. So wurde argumentiert ....

Mal schauen, wo Julia in 2 - 3 Jahren steht. :roll:
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Julia anyone?

Beitrag von EDi »

Danke euch für die vielen Antworten und Einschätzungen...
Wenn ein Julia-Skript zur Datenanalyse gestartet wird, wird jedes mal compiliert. Das kann man zwar in den Griff bekommen, ist mir aber zu viel Umstand.
Ich nutze bisher VSCode und die REPL, das hat ganz gut interaktiv funktioniert. Mit in den Griff bekommen, meinst du Revise.jl?
Auch bis die erste Grafik erzeugt wird, dauert mir zu lange. Und dann noch die Instabilität der Pakete. Da bin ich von R eine deutlich höhere Qualität gewohnt und ganz zu schweigen vom Paketumfang.
Hmm, ja das hatte ich auch das Gefühl, dass es wenig Qualitätkontrolle gibt. Liegt vermutlich an der Community, welche eher akademisch ist (und wer an der Uni hat Zeit und Lust auf Unit tests und Dokumentation)... Das ist natürlich für meine Zwecke (produktive Daten / Modellpipelines) nicht wirklich gut. Auch breaking changes könnte ich mir bei einer jungen Sprache Paket vorstellen..
ganz besonders an EDi, von dem ich hoffe, dass er uns nicht nur "über die Tage" besucht, sondern häufiger wieder reinguckt!
Ich schau immer rein, nur hatte ich in letzter Zeit wenig Zet zum aktiven Beitragen (Nachwuchs, Job, Baustelle....)
@EDi: Was ist denn der Einsatzzweck, der Dir gerade vorschwebt?
Klassische Data Science / Engineering aufgaben: Daten aufbereiten, pipelines bauen, Modelle erstellen, diese als API verfügbar machen, etc...
Ich kann mit R alles was machen was ich brauche, will eigentlich nur im meinen Daten-Horizont zu erweitern:
Bei uns im Geschäfft (Industrie Großkonzern) gibt es mehr Python-Leute (weil einfache Sprache und es viele Querseinsteiger gibt (z.B. aus der IT)) und ich habe das Gefühl das R zwar noch lange da sein wird, die Masse an pythonistas aber R einiges an Boden abgraben.
Nun werden aber python und ich keine Freunde (die offset-indizierung und die inkonsistnzen [z.b. python; range(4,11) vs R: 4:10 und python; x[3:10] vs x[4:10] ] sind zu viel für mein Hirn. Auch ist python nicht schneller oder verständlicher oder verschieden genug von R, als dass es mich reizen würden).
Go hab ich mir angeschaut (schöne Sprache , aber nichts für meine ZWecke),
JavaScript finde ich versucht mit irgendwelchen vulnerabilities, da lasse ich lieber auch die Finger von... Komplexe Web-Geschichten sind auch nicht so mein...
Und da dachte ich schau mir mal Julia an...

Bisher hab ich nur Grundlagen gemacht. Vielleicht arbeite ich mal R4DS mit Julia durhc um ein besseres Gefüh für Datenanwendungen zu bekommen...
Mal schauen, wo Julia in 2 - 3 Jahren steht. :roll:
Das denke ich mir schon seit 7-8 jahren :|
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Benutzeravatar
student
Beiträge: 674
Registriert: Fr Okt 07, 2016 9:52 am

Re: Julia anyone?

Beitrag von student »

Revise ist eine Möglichkeit ...

Ist das
Liegt vermutlich an der Community, welche eher akademisch ist
wirklich ein Unterschied zu R? Ich vermute, dass das Beschäftigen mit Julia während des Uniaufenthalts sexy ist, aber dann kommt die Realität. D. h., welcher Arbeitgeber sucht Mitarbeiterinnen mit Julia-Erfahrung? Ich habe noch keine Stellenausschreibung mit diesen Wunsch gesehen! Das führt m. E. dann dazu, dass die Paket-Pflege mangels Zeit und abflauendem Interesse eingestellt wird.
Viele Grüße,
Student
-----------------------------------------------------------------------------------------------------------------------
faes.de, Datenanalyse mit R & das Ad-Oculos-Projekt
Das Ad-Oculos-Projekt auf YouTube

Habe Mut, dich deines eigenen Verstandes zu bedienen! (Kant)
bigben
Beiträge: 2778
Registriert: Mi Okt 12, 2016 9:09 am

Re: Julia anyone?

Beitrag von bigben »

Ja, die Zukunft von Julia ist noch ungewiss.

Ich kann verstehen wenn EDi sagt, es scheint genug Schwung zu haben, um abzuheben. Viel drauf wetten würde ich nicht, das ist aber mehr so ein allgemeiner Pessimismus. Bloß weil etwas eine gute Idee ist, wird es noch nicht angenommen und das was allgemein angenommen wird, muss nicht immer gut sein. Niemand hätte gedacht, dass das in einer Woche für bewegte Webseiten zusammengeschusterte JavaScript mal die Welt beherrschen würde, wer würde es für eine gute Idee halten, dass CSV das universellste Format für tabellarische Daten sein könnte, wenn weder die Trennzeichen noch die Zeichenkodierung noch die Bedeutung von Zeilenumbrüchen in Anführungszeichen noch sonst irgendwas daran wirklich standardisiert ist? Und es keine Möglichkeit zum Speichern von Metadaten wie einem Data Dictionary bietet? Wer würde es eine gute Idee finden, dass die meiste Statistik auf diesem Planeten in Excel gerechnet wird? Wieso zahlen wir mit Steuergeldern für alle Amtstuben und so weiter Windows- und MS-Office-Lizenzen wenn viele gute Gründe für Linus sprechen würden? Wer hat die Lage geschweifter Klammern auf dem deutschen Tastaturlayout zu verantworten? Und warum ist LISP so gut, dass seit fünfzig Jahren immer wieder schlaue Leute darauf bauen, dass es jetzt aber endlich den Durchbruch schaffen wird und trotzdem interessiert sich im Mainstream keiner dafür?

Ich finde, dass R einen guten Nachfolger längst verdient hätte. Aber de facto wird der Wettbewerb noch ganz lange zwischen R und Python ausgetragen werden. Ob Julia schafft was ich ihm wünsche, steht wohl in den Sternen. Hängt sicher auch davon ab, wieviele Leute jetzt bereit sind, die Wette einzugehen.

Ich würde jedenfalls hier im Off topic gerne öfter was über Julia, die Fortschritte und Einzelerfahrungen, lesen.

Euch allen einen Guten Rutsch,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten