Du bist nicht eingeloggt! Möglicherweise kannst du deswegen nicht alles sehen.
  (Noch kein mods.de-Account? / Passwort vergessen?)
Zur Übersichtsseite
Hallo anonymer User.
Bitte logge dich ein
oder registriere dich!
 Moderiert von: Irdorath, statixx, Teh Wizard of Aiz


 Thema: pOT-lnformatik, Mathematik, Physik XXIII
« vorherige 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 nächste »
erste ungelesene Seite | letzter Beitrag 
Irdorath

AUP Irdorath 08.12.2020
Danke, aber das das sind schon zu grosse Kanonen, die MC Simulation loszuwerden ist das eigentliche Ziel.
TeX: A(t) = \int_0^t max(0, x_1(s), ..., x_n(s))ds
mit stochastischen Prozesse TeX: (x_i). Selbst wenn man diese als Gausssche Prozesse waehlt, gibt es fuer TeX: n>2 schon keine hinreichend allgemeine Loesung fuer die Verteilung des Maximumsprozesses - zu einer einzelnen Zeit TeX: t. Fuers Integral braucht man dann zusaetzlich noch die Dynamik des Maximumsprozesses, da
max()
aber nicht in [tex[\mathscr{C}^2[/tex] liegt, kriegt man auch per stoch. Analysis den Prozess nur in Form von local times, was aber in seiner Nuetzlichkeit eher einem Existenzsatz als einer brauchbaren Formel gleicht. Also schaue ich mir nuetzliche Approximationen von TeX: \exp(-A(t)) an (linear = keine Dynamik noetig, in anderen Faellen bezahle ich mit Einschraenkungen der TeX: (x_i) auf spezielle Gaussche Copulas), und will jetzt erstmal per MC Simulation eine Uebersicht bekommen, welche Approximationen tauglich scheinen.
Aber jetzt, in der Bewertung der Verteilungen dieser Approximationen, mach ich gefuehlt den gleichen Kram. Breites Grinsen
26.08.2020 13:36:50  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
horscht(i)

AUP horscht(i) 14.09.2014
 
Zitat von B0rG*

 
Zitat von horscht(i)

Aber ja, unterm Strich gab es im Studium und allen Praktika Gaußfehler und Maximalfehlerabschätzung und fertig.



Ich verstehe nicht so recht, warum das Konzept "Fehlerfortpflanzung" überhaupt gesondert existiert. Habe ich so auch bisher nur in der Physik gesehen. Hat das historische Gründe? Man macht da (einfache und approximative) Bayesianische Statistik, gibt dem aber dann einen verschleiernden Namen. Wie wird das im Studium denn eingeführt?

#Team3PunktStatistik


Oh Gott, darauf kann ich keine vernünftige Antwort geben.
Es scheint ein klassischer Fall von "Haben wir schon immer so gemacht" zu sein.
Vielleicht hat es auch didaktische Gründe: Die ersten Praktika kamen bereits im ersten Semester und es war wohl wichtig, den Studenten einzutrichtern, dass keine Messung fehlerfrei verläuft ohne sie im ersten Semester unnötig mathematisch zu überfordern. "Gaußfehler" zwingt dann dazu, sich über mögliche Fehlerursachen und Größen eines jeden Messvorgangs Gedanken zu machen und sauber zu dokumentieren und zu berechnen, wie sich der Fehler im weiteren Experiemnt "fortpflanzt". Am Ende ist es aber eine simple Rechenvorschrift.
Bei uns zumindest galt, dass ein Protokoll nur abgezeichnet wird, wenn eine Fehlerrechnung und vor allem eine Diskussion der Fehlerursachen und ihrer Verbesserung/Verkleinerung enthalten war.

Falls es je derartige didaktische Überlegungen gab, was ich bezweifle, so wurden sie leider auch später im Studium nicht aufgeklärt.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von horscht(i) am 26.08.2020 16:53]
26.08.2020 16:51:54  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
böse gucken
Da ich jetzt ja (seit einer Woche vor Ende meines Postdocs Hässlon ) endlich auf der Postdoc-Mailingliste meines letzten Instituts stehe, möchte ich mal kotzen: Angewandte Institute (N=1) und ihre "Forschungsförderung" sind derart short term, derart fantasielos, businessfuzzyesk, derart transaktional, derart aalglatt, derart geldgeil ohne eigene Unterstützung zu bieten, dass man echt keinen Bock mehr hat. Alle meine Vorurteile gegenüber Forschung in NZ/an solchen Instituten werden voll und ganz bestätigt.

Persönliches Highlight der letzten Mail: "Hey, hier, geh auf eine Konferenz, um zu lernen, wie man erfolgreich für Geld bettelt, wir unterstützen dich, wenn du erfolgreich für Geld betteln kannst!"

I'm gonna get some thumbtacks and colored string so we can diagram this.
03.09.2020 1:24:45  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
G-Shocker

AUP G-Shocker 11.11.2020
...
Grüß Gott liebe Leute,

da ich sehr viel Zeit auf der Arbeit habe und ich mich schon mal auf meinen nächsten Karriereschritt in den nächsten Jahren vorbereiten möchte, hätte ich folgende Frage:

Ich strebe einen Wechsel ins Arbeitsumfeld Cyber-Security an.
Folgende Übersicht auf Reddit habe ich zum Thema Zertifikate gefunden:



Kann mir hier jemand bestätigen, ob das auch halbwegs stimmt? peinlich/erstaunt

Die zweite Frage wäre dann direkt, ob dem Thread irgendwelche Trainings/Zertifikate bekannt sind, für die man als Privatperson nicht knapp an der Privatinsolvenz vorbeischlittert, wenn man diese bucht.

Vor allem das Entry oder Novice-Level wäre für mich interessant.
[Dieser Beitrag wurde 2 mal editiert; zum letzten Mal von G-Shocker am 04.09.2020 11:23]
04.09.2020 11:23:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
derSenner

AUP derSenner 08.04.2020
Um Gottes Willen.
04.09.2020 11:23:52  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Irdorath

AUP Irdorath 08.12.2020
Hab das Periodensystem der Elemente anders in Erinnerung, frag besser im Chemiethread.
04.09.2020 11:26:42  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
G-Shocker

AUP G-Shocker 11.11.2020
Breites Grinsen Es geht eigentlich nur um ein Zertifikat, das ich bei einer potentiellen Bewerbung hinklatschen kann.

Den Reddit-Shit habe ich dabei halt gefunden.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von G-Shocker am 04.09.2020 11:37]
04.09.2020 11:33:28  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
Bitte beachten
 
Zitat von Irdorath

Hab das Periodensystem der Elemente anders in Erinnerung, frag besser im Chemiethread.


Ich glaube, dass das eher Endokrinologie ist.

Speedy thing goes in, speedy thing comes out.
04.09.2020 11:52:25  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Virtus

Arctic
verschmitzt lachen
 
Zitat von G-Shocker

Breites Grinsen Es geht eigentlich nur um ein Zertifikat, das ich bei einer potentiellen Bewerbung hinklatschen kann.

Den Reddit-Shit habe ich dabei halt gefunden.


Falls Du in agilen Projekten arbeiten willst: "halbfertig" ist "nicht fertig", Du brauchst alle Zertifikate.
04.09.2020 12:19:52  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
B0rG*

Gordon
Wow.
04.09.2020 12:28:49  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
RunningGag

GMan
 
Zitat von G-Shocker

Breites Grinsen Es geht eigentlich nur um ein Zertifikat, das ich bei einer potentiellen Bewerbung hinklatschen kann.

Den Reddit-Shit habe ich dabei halt gefunden.



Die bekanntesten sind schon drauf, aber als was willst du dich denn bewerben? Also was ist der Job den du anpeilst?

Generell wäre ich vorsichtig bei einer Firma die nur einfach 1000 Zertifikate sehen will .
Wenn du richtig Penetration Testing gehen willst ist der OSCP zum Beispiel (https://www.offensive-security.com/p) schon sehr cool, aber extrem zeitintensiv und nicht ganz günstig.
Wenn du richtung Management gehst, ist es halt eher ein CISSP oder ähnliches, was sich aber eigentlich nicht lohnt ohne dass du vorher ordentlich erfahrung gesammelt hast (was eh eine Voraussetzung ist)

Also was sind deine Ziele?
(Selber habe ich CISSP und stecke im OSCP)
04.09.2020 13:13:34  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
G-Shocker

AUP G-Shocker 11.11.2020
Danke schon mal für die Antwort!

Wo genau ich hin will, ist mir selbst noch nicht ganz klar. Habe mir jetzt mal ein, zwei Bücher bestellt und lese die für die Basics durch. Danach werde ich wohl entscheiden, auf was ich tatsächlich Bock habe.

Mit einem Zertifikat als Ziel, kommt man da natürlich besser voran und ist motivierter Breites Grinsen

Grundsätzlich habe ich das LSI Bayern (https://www.lsi.bayern.de/) im Auge, das die hier vor zwei Jahren eröffnet haben. Speziell verlangen die da keine Zertifikate aber ich will meine Chancen natürlich verbessern und im besten Fall direkt höher eingruppiert werden.
04.09.2020 13:24:14  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
RunningGag

GMan
Dann wären es vermutlich Security+ oder CEH die man als Einsteiger machen kann und die "bekannt" sind.

- Security+ bietet ganz solide Grundlagen soweit ich weiß (habe es nicht, darum hörensagen!)
- CEH war mal relativ beliebt und ist eher Penetration Tester fokusiert, verliert aber ein bisschen an Wert inzwischen. (habe es nicht, darum hörensagen)

Ist aber nur geraten, da ich die LSI stellen nicht kenne und sie momentan keine ausschreiben.



Generell solltest du dir bei beiden nicht die Welt versprechen, und ob du wirklich ein besseres Gehalt dadurch rausholen kannst die die Kosten wieder reinholen solltest du nicht drauf wetten. Imho sollte man nur in die Richtung gehen:
- wenn man genau weiß dass der Arbeitgeber diese fordert oder
- du spaß dran hast/es für dich tust, d.h. im speziellen nicht dem Geld hinterher leidest und "posen" willst.

Ganz allgemein sind viele dieser Zertifikate bei einigen als "Auswendiglern" Zertifikate verpönt, z.b. weil es einem Recruiter gefällt gefällt es noch lange keinem Praktiker, das heißt zum angeben taugen sie nicht.

Wenn du jedoch in Themen einsteigen willst können sie gut als Lernleitfaden sein. Ist ja immer die Frage ob du auswendig lernst wie das nmap Commando heißt oder wirklich damit rumspielst (https://www.hackthebox.eu/)
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von RunningGag am 04.09.2020 13:51]
04.09.2020 13:51:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Critter

tf2_soldier.png
Zunächst mal solltest du dir im Klaren darüber sein, dass Zertifizierungen primär zwei Zielen dienen: HR Filter passieren und für den Chef Partneranforderungen erfüllen. Dass man dabei auch was lernen kann ist i.d.R. sekundär.

Von allen gelisteten ist der CISSP imho am bekanntesten und wird gerne auch Technikern übergebügelt/abgefordert obwohl es eigentlich da links oben schon richtig einsortiert ist (also eher beim Management). Dafür ist das Ding auch noch relativ anspruchsvoll und teuer.
Unsere Sec Kollegen machen produktspezifische Zerts und CISSP. Ich kann mal fragen was die sonst noch machen/erwarten.

Im übrigen kann ich mich RG nur anschliessen. Zum Lernen brauchst du Übung und keine Zertifikate, auch wenn sie ein Leitfaden sein können oder eigene Lücken nach Selbststudium aufzeigen.
04.09.2020 20:28:14  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
PutzFrau

Phoenix Female
 
Zitat von G-Shocker

Danke schon mal für die Antwort!

Wo genau ich hin will, ist mir selbst noch nicht ganz klar. Habe mir jetzt mal ein, zwei Bücher bestellt und lese die für die Basics durch. Danach werde ich wohl entscheiden, auf was ich tatsächlich Bock habe.

Mit einem Zertifikat als Ziel, kommt man da natürlich besser voran und ist motivierter Breites Grinsen

Grundsätzlich habe ich das LSI Bayern (https://www.lsi.bayern.de/) im Auge, das die hier vor zwei Jahren eröffnet haben. Speziell verlangen die da keine Zertifikate aber ich will meine Chancen natürlich verbessern und im besten Fall direkt höher eingruppiert werden.



"Eingruppiert" klingt nach ÖD. Was da los?

04.09.2020 21:09:03  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Mein Python-FU ist nicht das beste, daher mal ne Frage:

Ich moechte ein PDF in verschiedene Teile zerschnibbeln. Das Dokument enthaelt als "Trenner" einzelne Seiten mit nem QR-Code. Habe ich ein 8-seitiges Dokument mit QR-Codes auf Seiten 3 und 5, moechte ich in drei Teile schneiden (jeweils als Seitennummern, inklusiv):
1 bis 2,
4,
6 bis 8

Das Lesen des QR-Codes klappt und ich bekomme eine Liste der Seiten mit QR-Code geliefert. Ich muss nun aber diese Tupel zum Schneiden bauen und hoffe hier auf ein paar Zeilen coole Slice-Magic von euch. Die Tupel muessten dann im Beispielfall so aussehen:
(1, 3),
(4, 5),
(6, 9)

Momentan hab ich die Liste der Seiten mit QR-Codes und dazu noch eine Liste [1 ... Gesamtseitenanzahl]. Ich dachte ich iteriere jetzt im ersten Schritt ueber die Liste der "Trennseiten" und mach da jeweils nen Slice ueber die Liste der Gesamtseiten, also:
Gesamtseiten[0:i]
Und danach auf die Einzellisten nochmal [i:Ende].

Hab das noch nicht ganz durchgedacht und weiss gerade noch, ob das ueberhaupt funktioniert. Aber selbst wenn, kommt mir das unelegant vor, da habt ihr doch sicher was Geileres in petto?

Wuerde mich freuen!

/Gerade sieht's erstmal so aus (mit Schwaechen bei leeren Listen usw.)
 
Code:
def create_page_ranges(separator_indices, num_total_pages):
    result = list()
    current = 1
    for i in range(1, int(num_total_pages + 1)):
        if i in separator_indices:
            result.append((current, i))
            current = i + 1

    print(result)
    return result
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von MCignaz am 06.09.2020 15:00]
06.09.2020 14:48:49  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
B0rG*

Gordon
 
Code:
In [1]: pages = list(range(8))
In [2]: cuts = [3, 5]
In [3]: slices = [
...:     (lhs + 1, rhs)
...:     for lhs, rhs in zip([0, *cuts], [*cuts, len(pages) + 1])
...: ]
In [4]: slices
Out[4]: [(1, 3), (4, 5), (6, 9)]


Keine tolle Magie traurig.
Ich würde sagen es ist total pythonisch zuerst eine Liste von slices zu erzeugen und dann daraus eine Liste von Listen zu machen. Performance ist vermtulich nicht sonderlich kritisch (wenn deine PDFs jetzt keine 10 Millionen Seiten haben), also lieber schön lesbar.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von B0rG* am 06.09.2020 14:59]
06.09.2020 14:57:20  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Sieht aber schon ganz flott aus, danke!

/War mir nicht im Ansatz bewusst, dass man mit Python Listen auch schon so komplex initialisieren kann, cool!
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von MCignaz am 06.09.2020 15:06]
06.09.2020 15:02:36  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
Das ist inzwischen die gleiche Syntax wie bei Funktionsaufrufen:

foo([1, 2, 3, 4]) -> ein Argument, was eine Liste ist
foo(*[1, 2, 3, 4]) -> vier Argumente
foo(1, 2, *[3, 4], 5, *[6, 7]) -> sieben Argumente

[[1, 2, 3, 4]] -> ein Element, was eine Liste ist
[*[1,2,2,3]] -> vier Elemente
[1, 2, *[3, 4], 5, *[6, 7]] -> sieben Elemente
(Analog für Tupel mit () und Sets mit {}, aber set-in-set geht nicht, weil mutable).

foo({bar=1, baz=2}) -> ein Argument, was eine Liste ist
foo(**{bar=1, baz=2}) -> zwei Argumente (bar und baz, identisch zu foo(bar=1, baz=2))

{1: 2, 3: 4, **{5: 6, 7: 8}} -> vier Elemente
06.09.2020 15:30:26  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
Und wie funktioniert das mit lhs und rhs?
06.09.2020 15:33:23  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Irdorath

AUP Irdorath 08.12.2020
Das ist sogenannte list comprehension, im Grunde nur schönere Syntax für Schleifen mit Listen.
06.09.2020 15:34:21  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
MCignaz

Arctic
...
Ah cool. Danke fuer die Infos, Leute!
06.09.2020 15:50:08  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
homer is alive

AUP homer is alive 14.03.2022
 
Zitat von Irdorath

Das ist sogenannte list comprehension, im Grunde nur schönere Syntax für Schleifen mit Listen.


Wohlgemerkt auch deutlich schneller, da optimiert.
08.09.2020 10:08:18  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Irdorath

AUP Irdorath 08.12.2020
Man koennte es das Nerdaequivalent zum Heckspoiler am Kleinwagen nennen.
08.09.2020 10:31:29  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
homer is alive

AUP homer is alive 14.03.2022
Würde ich nicht so sagen, auch wenn mir der Vergleich gefällt Breites Grinsen
08.09.2020 10:40:22  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
B0rG*

Gordon
 
Code:
In [1]: def for_loop():
   ...:     result = []
   ...:     for i in range(1_000_000):
   ...:         result.append(2 * i)
   ...:     return result
   ...:

In [2]: def list_comprehension():
   ...:     return [
   ...:         2 * i
   ...:         for i in range(1_000_000)
   ...:     ]
   ...:

In [3]: %timeit for_loop()
76.1 ms ± 486 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)

In [4]: %timeit list_comprehension()
56.5 ms ± 337 µs per loop (mean ± std. dev. of 7 runs, 10 loops each)


Wenn der Spoiler auch signifikant die Performance verbessert dann sollte ich meine Vorurteile überdenken <3.

(Grund: Die List-Comprehension kann im C-Teil von Python ausgeführt werden und es muss nicht immer zwischen Python und C hin-und-her gewechselt werden.)
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von B0rG* am 08.09.2020 10:54]
08.09.2020 10:50:24  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
homer is alive

AUP homer is alive 14.03.2022
Man kann natürlich argumentieren, dass man nicht oft an den Punkt kommt, wo der Unterschied im zweistelligen ms-Bereich nicht den großen Unterschied macht, allerdings habe ich teilweise lange Listen mit großen Objekten, wo der Unterschied zumindest deutlich spürbar ist.
08.09.2020 11:24:55  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Wraith of Seth

wraith_of_seth
Der neuseeländische Mathebuschfunk vermeldet, dass Vaughan Jones gestorben ist.traurig Sehr sympathischer Typ.traurig

You got to belong to someone, even if he kicks you once in a while.
08.09.2020 13:49:33  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
csde_rats

AUP csde_rats 04.09.2021
 
Zitat von B0rG*

Wenn der Spoiler auch signifikant die Performance verbessert dann sollte ich meine Vorurteile überdenken <3.

(Grund: Die List-Comprehension kann im C-Teil von Python ausgeführt werden und es muss nicht immer zwischen Python und C hin-und-her gewechselt werden.)



Es wird schon noch hin und her gesprungen, aber effizienter. [x for x in y] evaluiert das erste "x" ganz normal, der Unterschied ist, dass List/Set/Dict Comprehensions mit einem verdeckten temporären Objekt arbeiten und spezielle Opcodes für das Einfügen benutzen, die nur prüfen müssen, ob das Objekt eine Liste/Set/Dict ist und dann direkt PyList_Append usw. anspringen, statt erstmal herauszufinden, was "liste.append" denn für eine Methode sein könnte (was echt aufwendig in Python ist).

e: Sowas kann man immer gut mit "dis" nachvollziehen, wenn's einen interessiert. In den Docs von dem Modul stehen auch alle Opcodes drin, dann braucht man nicht durch die eval.c von Python waten. Wenn man das macht sieht man auch sehr schön, dass Python keinen Bytecode-Optimierer hat, weil das Ding ständig Dinge tut wie "STORE a; LOAD a" fröhlich
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von csde_rats am 08.09.2020 18:48]
08.09.2020 18:39:04  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
Oli

AUP Oli 21.12.2018
TIL 1_000_000. Weiß gerade nicht, wie ich das finden soll.

/e: Ich glaub ich einige mich auf "kacke". Dann lieber 10**6.
[Dieser Beitrag wurde 1 mal editiert; zum letzten Mal von Oli am 08.09.2020 19:22]
08.09.2020 19:21:15  Zum letzten Beitrag
[ zitieren ] [ pm ] [ diesen post melden ]
 Thema: pOT-lnformatik, Mathematik, Physik XXIII
« vorherige 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 nächste »

mods.de - Forum » Public Offtopic » 

Hop to:  

Thread-Tags:
pimp 
Mod-Aktionen:
19.11.2021 15:40:37 Atomsk hat diesen Thread geschlossen.
05.04.2020 13:23:20 red hat diesem Thread das ModTag 'pimp' angehängt.

| tech | impressum