Re: [Neo] Wikipedia-Korpus selbstgemacht

2011-04-21 Diskussionsfäden Karl
Florian Janßen writes:

> Karl schrieb am 25.03.2011 um 11:07 Uhr:
> > Was (vermutlich nicht nur) mich interessiert:
> > Kann eine Anleitung erstellt werden, nach der die einzelnen Schritte so
> > umsetzen kann, dass aus auf Wikimedia-Software basierende freie Wikis jeder
> > selber den Textkorpus extrahieren kann?
> 
> Ja, aber ich bin noch nicht ganz mit meiner Methode zufrieden. Ich bin
> etwas rabiat zu Werke gegangen und habe im Zweifelsfall lieber einen
> Ausdruck entfernt, statt ihn stehen zu lassen um einen möglichst
> „sauberen“ Korpus zu erreichen.
> Auf der anderen Seite habe ich nur manuell den Wikisyntax entfernt, der
> mir aufgefallen ist. Ich hatte keine Lust mir die ellenlange php-Datei
> vorzunehmen, in der der ganze Zauber steckt.

Hallo Florian,

in Deinem Beitrag vom 17 Apr 12:56 steht ein Teil des von Dir verwendeten
Skripts. Vielen herzlichen Dank dafür!

Als Anfänger mit der Windows PowerShell sowie in der Bearbeitung von
XML-Dateien bin ich sehr früh an meine Grenzen gestoßen, die sich auch per
Internetrecherche
nicht erweiterten. So bekomme ich es weder auf die Reihe, die zu lesende Datei
zu öffnen, geschweige denn die Methode ReadToFollowing aufzurufen, die nicht
in [System.String] enthalten ist. Zudem muss man sich bei Windows selbst als
angemeldeter Adminstrator noch werweißwelche Rechte zuteilen, damit überhaupt
etwas geht - aber: welche Rechte brauche ich, um mit PowerShell arbeiten zu
können?
Oder gibt es unter Windows 7 einen Befehl
"Bin als Admin angemeldet: Teile mir alle Rechte zu, die es gibt." ;)

Für mich sieht das Befassen mit Windows PowerShell vorerst wie
undurchdringliches Gestrüpp aus. :-(
Wie hast Du es geschafft, in die Materie zu gelangen?

Mit netten Grüßen
Karl




Re: [Neo] Wikipedia-Korpus selbstgemacht

2011-04-21 Diskussionsfäden Karl
Michael Gattinger writes:

> Fallen euch derzeit sonst noch Feature ein, die interessant wären? 

Hallo Michael,

vielen Dank für die Arbeit an Deinem feinen Projekt zur Aufbereitung von
Wikipediainhalten für die Verwendung in Korpussen.

Da der Wikipedia-XML-Dump (nur pages und articles) bereits knapp 8 GB groß
ist, kann er für die Bedürfnisse von Neo großzügig geputzt werden. Mehr als
ein GB als Ergebnis wird stets mehr als genug sein.

Nicht immer läßt sich einfach entscheiden, was weggeputzt werden soll und
was bleiben soll.

Was ich versuchen würde, um aus Wikipedia einen Korups für Neo zu
extrahieren:

1. Artikel entfernen, die eine Person oder etwas geografisch Benanntes
(Stadt, Land, Fluss (oft an deren Kategorie erkennbar)) zum Thema haben.
2. Alle Tabellen entfernen.
3. Alle Aufzählungen entfernen.
4. Alle ref entfernen.
5 .Alle references mitsamt einleitender Überschrift entfernen.
6. Alle Überschriften innerhalb von Artikeln entfernen.
7. Titel übriger Artikel belassen (davor zwei, dahinter ein Zeilenumbruch).
8. Zitatinhalte belassen (in typografische Anführungszeichen stellen).
9. Alle Verweise nach Fallunterscheidung modifizieren bzw. entfernen.
10. Alle Artikel entfernen, die als #redirect bwz. #weiterleitung dienen.
11. Alle Artikel entfernen, die als Liste dienen.
12. Alle Artikel entfernen, die als Liste dienen.
13. ...- bzw. ...-Inhalte als hoch- oder tiefgestellte
ASCII- oder Unicode-Zeichen darstellen, wenn als solche verfügbar; dabei
ASCII bevorzugen, z. B. ²³.
14. Alle MediaWiki-Markups zu Text konvertieren bzw. entfernen.
15. html-Schreibweisen bzw. Entities konvertieren bzw. entfernen.

Dabei muss Artikelweise vorgegangen werden, da sich andernfalls massenhaft
Fehler durch das Putzen einschleichen können und werden.

Unabhängig von den Wikipedia-Artikeln wäre ein zweiter auf dieselbe Weise
erstellter Korpus zu den Wikipedia-Diskussionen ein besonders interessanter
weiterer Korpus für Neo, da die Diskussionen weitaus mehr von der Sprache
enthalten, wie Menschen sie untereinander in den Internetmedien austauschen.

Leider sind meine Programmier- und Skriptkenntnisse hoffnungslos veraltet
und eingerostet, so dass ich mit den jetzt erforderlichen Umgebungen dafür
vorerst nicht zurecht komme.

Mit netten Grüßen
Karl



P. S.: Reguläre Ausdrücke, die ich derzeit einsetze, könnten vielleicht
hilfreich sein (falls eine zweite Zeile unter dem RegExp steht, dient sie
als Ersetzung). Leider lassen sich wie auch immer verschachtelte
Textkomponenten mittels RegExps schlecht aufbereiten. Auch gibt es weitere
Schwächen in der Anwendung von RegExps, so dass sie sich allenfalls in
Skripten wohlüberlegt einsetzen lassen.

zu3. Alle Aufzählungen entfernen.
Ab 3 Aufzählungsitems alle außer den ersten und letzten löschen:
(?<=(^[\*#;][^\n]*?\n))[\*#;]{1,9}[^\n]*?\n(?=(^[\*#;]))

zu 4. Alle ref entfernen.
[ \t]??[^&]*?

zu 5 .Alle references mitsamt einleitender Überschrift entfernen.
-Zeilen mitsamt zwei Überschriften entfernen:
[\s]*?==.*?==[\s]*?[\s]*?===.*?===[\s]*?[\s]*?[\s]*?\n
\n

(mehrmals wiederholen) -Zeilen incl. einer Überschrift entfernen:
[\s]*?==.*?==[\s]*?[\s]*?\n
\n

-Zeilen ohne Überschrift entfernen:
[\s]*?[\s]*?\n
\n

zu 6. Alle Überschriften innerhalb von Artikeln entfernen.
Alle Überschriftenzeilen mit == entfernen:
(=+?)[^=\n]*?\1[\s]*?\n

zu 8. Zitatinhalte belassen (in typografische Anführungszeichen stellen).
Zitatschreibweise {{Zitat|...}} ändern zu "...":
\{\{Zitat\|[']*?([^'][^}\n]*?)[']*?\|[^}\n]*?\}\}\n
"\1"

zu 9. Alle Verweise nach Fallunterscheidung modifizieren bzw. entfernen.
Verweise zu Wiki-Artikeln in anderer Sprache entfernen (falls aus der
Mailingliste kopiert, dann die Zeilenumbrüche innerhalb dieser einen
einzeiligen RegExp entfernen):
[\s]*?\[(?:\[(ab|abq|ace|ady|af|ain|ak|aln|als|alt|am|amr|an|ang|anp|ar|
arc|arn|aro|arq|ary|arz|as|ast|atv|av|ay|az|azb|ba|ban|bar|bat-smg|bcc|
bcl|be|be-x-old|bfq|bg|bh|bi|bjn|bm|bn|bo|bpy|bqi|br|brx|bs|bto|bug|bxr|
ca|cbk-zam|cdo|ce|ceb|ch|chi|chn|cho|chr|chy|ckb|ckt|co|cr|crh|cs|csb|cu|
cv|cy|da|de|diq|dng|dsb|dv|dz|ee|el|eml|en|enm|eo|es|ese|et|eu|ext|fa|ff|
fi|fil|fiu-vro|fj|fo|fr|frp|frr|fur|fy|ga|gag|gan|gd|gl|glk|gn|gom|got|
grc|gu|gv|ha|hak|haw|haz|he|hi|hif|hil|ho|hr|hsb|hsn|ht|hu|hy|hz|ia|ibb|
id|ie|ig|ii|ik|ilo|inh|io|is|it|iu|ja|jam|jbo|jct|jv|ka|kaa|kab|kac|kbd|
kg|ki|kiu|kj|kjh|kk|kl|km|kn|ko|koi|krc|krj|krl|ks|ksh|ku|kum|kv|kw|ky|
la|lad|lb|lbe|lez|lg|lhu|li|lij|liv|lld|lmo|ln|lo|loz|lrc|lt|ltg|lus|lv|
lzz|mad|mai|map-bms|maz|mdf|mfe|mg|mh|mhr|mi|min|mk|ml|mn|mnc|mr|mrj|ms|
mt|mwl|mww|my|myv|mzn|na|nah|nap|nds|nds-nl|ne|new|ng|niu|njo|nl|nn|no|
non|nov|nrm|nso|nv|ny|oc|om|or|os|ota|ote|otk|pa|pag|pam|pap|pcd|pdc|pdt|
pes|pfl|pi|pih|pko|pl|pms|pnb|pnt|pny\[4\]|ppl|prs|ps|pt|qu|rar|rif|rm|
rmy|rn|ro|roa-rup|roa-tara|rtm|ru|rue|ruq|rw|ryu|sa|sah|sc|scn|sco|sd|sdc|
se|sei|sg|sgc|sh|shi|si|simple|sk|skr|sl|sli|slr|sm|sma|sn|so|sq|sr|srn|
ss|st|stq|su|sv|sw|swg|szl|ta|tcy|te|tet|tg|th|ti|tk|tl|tn|to|tpi|tr|trp|
ts|tsd

[Neo] [ticket] #261: Ebene 5: Bra ⟨ und Ket ⟩ ergeben ‹ und ›

2011-04-21 Diskussionsfäden Neo-Layout
#261: Ebene 5: Bra ⟨ und Ket ⟩ ergeben ‹ und ›
--+-
 Reporter:  anonymous |   Owner: 
 Type:  Fehler/Defekt |  Status:  new
 Priority:  hoch  |   Milestone:  Neo Version 2.0
Component:  Treiber: Linux – Xmodmap  | Version:  2.0 Final  
 Keywords:|  
--+-
 Der Fehler ist sowohl in der aktuellen Xmodmap-Version als auch in der von
 Kubuntu 10.10 mitgelieferten globalen Version enthalten. Andere Versionen
 konnte ich nicht überprüfen.
 Laut Aufsteller und Kommentaren in der Xmodmap sollte die Tasten 8 und 9
 auf Ebene 5 mit den Zeichen Bra ⟨ (U27E8) und Ket ⟩ (U27E9) belegt sein.
 Es erscheinen aber die Zeichen ‹ (U2039) und › (U203A), die schon auf den
 Tasten 5 und 4, Ebene 3 liegen.
 Die in der Xmodmap für Bra und Ket verwendeten Wörter
 ({left,right}anglebracket) sind wohl nicht ⟨⟩, sondern ‹› zugeordnet.

-- 
Ticket URL: 
Neo-Layout 
Das Neo-Tastaturlayout ist ein freies und ergonomisch optimiertes 
Tastaturlayout für die deutsche Sprache, das auch sehr viele Sonderzeichen 
direkt verfügbar macht.


Re: [Neo] Wikipedia-Korpus selbstgemacht

2011-04-21 Diskussionsfäden Arne Babenhauserheide
On Thursday 21 April 2011 02:07:17 Michael Gattinger wrote:
> Leider scheinen noch nicht so viele mitbekommen zu haben was wir machen.
> Kein anderer hat auf die E-Mails vom 17.04.2011 um 23:48 ("Kommentar zur
> Repräsentativität von Texten"; "Re: [Neo] Wikipedia-Korpus
> selbstgemacht") geantwortet

Wir haben hier viele verschiedene Interessen und viele Leute, die einfach
mitlesen. Lass dich davon nicht einschüchtern: Wenn was da ist, haben es meist
doch mehr mitbekommen, als man dachte¹.

Liebe Grüße,
Arne

¹: Das ist normal: Meist gibt es sehr viel mehr Leute, die etwas toll finden,
als Leute, die etwas dazu sagen :)

signature.asc
Description: This is a digitally signed message part.


Re: [Neo] Wikipedia-Korpus selbstgemacht

2011-04-21 Diskussionsfäden Arne Babenhauserheide
On Thursday 21 April 2011 02:03:58 Michael Gattinger wrote:
> Am 18.04.2011 00:34, schrieb Arne Babenhauserheide:
> > Und ist es frei lizensiert? (hatte ich das schon gefragt?)
>
> nach welchen regeln sollte es mindestens lizensiert sein und was
> passiert wenn wir es nicht machen?

Das Programm unter GPL oder BSD: Freie Software (Neo ist explizit freie
Software - das ist eins der Dinge, die mir bei Neo sehr gut gefallen). Ich
verwende für den Optimierer GPL, weil ich mit meiner Arbeit gleichzeitig freie
Software fördern will.

Ein Korpus unter cc attribution - wenn absolut nötig auch sharealike (aber das
ist mit nichts anderem kompatibel, darf also nicht kombiniert weitergegeben
werden).

Liebe Grüße,
Arne
--
singing a part of the history of free software:

- http://infinite-hands.draketo.de



signature.asc
Description: This is a digitally signed message part.


Re: [Neo] Optimierer TODO: Was noch fehlt

2011-04-21 Diskussionsfäden Arne Babenhauserheide
Hi Peter,

On Thursday 21 April 2011 09:03:15 Peter Bartosch wrote:
> Da ich aktuell die Liste nur am Rande verfolge, bin ich mir nicht sicher, ob
> dein Optimierer dies schon unterstützt:
>
> - Auswechseln des Layouts (-> In Hinblick z.B. auf die Truely Ergonomic)

Theoretisch ja, praktisch ist es etwas Arbeit, das Layout radikal zu ändern,
weil auch die Tastenkosten und das Mapping von Fingern auf Tasten angepasst
werden müssen.

Die Änderungen sollten sich auf Teile von layout_base.py und config.py
beschränken.

> - Automatisches/semi-automatisches generieren der XKB/AHK/...
> Belegungstabellen(?) für die Treiber?

Bisher nur eine xmodmap.

> - Automatisches/semi-automatisches generieren von Grafiken (eventuell über
> die Belegungstabelle, ev. als separates Modul/Programm, aber dann mit/über
> "Austausch-Format"

Bisher nur die Bigramm-SVGs. Da nur die Grundebene bearbeitet wird, würde ich
als einfachstes Austauschformat das hier nutzen:

xvlcw khgfqyß
uiaeo snrtd⇘
üöäpz bm,.j

Das Leerzeichen teilt die beiden Seiten, so dass das Format zum Rand hin
erweitert werden kann.

Liebe Grüße,
Arne
--
Konstruktive Kritik:

- http://draketo.de/licht/krude-ideen/konstruktive-kritik



signature.asc
Description: This is a digitally signed message part.


Re: [Neo] Optimierer TODO: Was noch fehlt

2011-04-21 Diskussionsfäden Peter Bartosch

Hallo!


Da ich aktuell die Liste nur am Rande verfolge, bin ich mir nicht sicher, ob dein Optimierer dies 
schon unterstützt:



- Auswechseln des Layouts (-> In Hinblick z.B. auf die Truely Ergonomic)

- Automatisches/semi-automatisches generieren der XKB/AHK/... 
Belegungstabellen(?) für die Treiber?

- Automatisches/semi-automatisches generieren von Grafiken (eventuell über die Belegungstabelle, ev. 
als separates Modul/Programm, aber dann mit/über "Austausch-Format"




HTH,
Peter