[PYTHON] 100 Amateur-Sprachverarbeitungsklopfen: Zusammenfassung

Dies ist eine Zusammenfassung der Herausforderungsdatensätze von 100 Language Processing Knock 2015.

: Warnung: ** Dies ist kein Herausforderungsdatensatz von 100 Language Processing Knock 2020. Die alte Version 2015 ist das Ziel. Bitte beachten Sie: Bangbang: **

Herausgeforderte Umgebung

Ubuntu 16.04 LTS + Python 3.5.2 : : Anaconda 4.1.1 (64-Bit). (Nur Problem 00 und Problem 01 sind Python 2.7.)

Kapitel 1: Vorbereitende Bewegung

Überprüfen Sie einige fortgeschrittene Themen in Programmiersprachen, während Sie an Themen arbeiten, die sich mit Text und Zeichenfolgen befassen.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 00 Scheibe,print()
Problem 01 Scheibe
Problem 02 Anaconda、zip()itertools.zip_longest()Voriterierbar*WennSiehinzufügen,wirdesinArgumentegetrennt,str.join()、functools.reduce()
Problem 03 len()、list.append()str.split()list.count()
Problem 04 enumerate()、Python3.Hash wird standardmäßig nach 3 randomisiert
Problem 05 n-gram、range()
Problem 06 set()set.union()、set.intersection()、set.difference()
Problem 07 str.format()string.Templatestring.Template.substitute()
Problem 08 chr()、str.islower()、input(), Quantenoperator
Problem 09 Typoglycemia、random.shuffle()

Kapitel 2: Grundlagen des UNIX-Befehls

Erleben Sie nützliche UNIX-Tools für Forschung und Datenanalyse. Durch diese Neuimplementierungen erfahren Sie das Ökosystem vorhandener Tools und verbessern gleichzeitig Ihre Programmierkenntnisse.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 10 [UNIX-Befehle]manJapanischeLokalisierung,open(), Shell-Skript,[UNIX-Befehle]wc,chmod, Dateiausführungsberechtigung
Problem 11 str.replace()、[UNIX-Befehle]sedtrexpand
Problem 12 io.TextIOBase.write()、[UNIX-Befehle]cut,diff、UNIX-Befehleの短いオプションと長いオプション
Problem 13 [UNIX-Befehle]paste、str.rstrip(), Python-Definition von "leeres Zeichen"
Problem 14 [UNIX-Befehle]echo,read,head
Problem 15 io.IOBase.readlines()、[UNIX-Befehle]tail
Problem 16 [UNIX-Befehle]split、math.ceil()、str.format()//Kann abgeschnitten und geteilt werden durch
Problem 17 set.add()、[UNIX-Befehle]cut,sort,uniq
Problem 18 Lambda-Stil
Problem 19 Listeneinschlussnotation,itertools.groupby()、list.sort()

Kapitel 3: Reguläre Ausdrücke

Verschiedene Informationen und Kenntnisse können extrahiert werden, indem reguläre Ausdrücke auf die Markup-Beschreibung auf der Wikipedia-Seite angewendet werden.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 20 JSON-Manipulation,gzip.open()、json.loads()
Problem 21 RegulärerAusdruck,roheZeichenfolgennotation,raise、re.compile()、re.regex.findall()
Problem 22 [Reguläre Ausdrücke]Gieriges Match,Nicht gieriges Match
Problem 23 [Reguläre Ausdrücke]Rückverweis
Problem 24
Problem 25 [ReguläreAusdrücke]BejahenderAusblick,sorted()
Problem 26 re.regex.sub()
Problem 27
Problem 28
Problem 29 NutzungvonWebdiensten,urllib.request.Request()、urllib.request.urlopen()、bytes.decode()

Kapitel 4: Morphologische Analyse

Wenden Sie den morphologischen Analysator MeCab auf Natsume Sosekis Roman "Ich bin eine Katze" an und erhalten Sie die Statistik der Wörter im Roman.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 30 conda、pip、apt、[MeCab]Installation,Verwendung, morphologische Analyse, Generator,yield
Problem 31 [Morphologische Analyse]Oberflächentyp
Problem 32 [Morphologische Analyse]Prototyp / Grundform, Listeneinschlussnotation
Problem 33 [Morphologische Analyse]Die Nomenklatur der seltsamen Verbindung, die Einschlussnotation der Liste der Doppelschleifen
Problem 34
Problem 35 [Morphologische Analyse]Verkettung der Nomenklatur
Problem 36 collections.Counter、collections.Counter.update()
Problem 37 [matplotlib]Installation,Balkendiagramm,Japanische Anzeige,Achsenbereich,Rasteranzeige
Problem 38 [matplotlib]Histogramm
Problem 39 [matplotlib]Streudiagramm, Zipf-Gesetz

Kapitel 5: Abhängigkeitsanalyse

Wenden Sie den Abhängigkeitsanalysator CaboCha auf "Ich bin eine Katze" an und erleben Sie die Funktionsweise des Abhängigkeitsbaums und der syntaktischen Analyse.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 40 [CaboCha]Installation,Wiebenutztman,__str__()、__repr__()、repr()
Problem 41 [Abhängigkeitsanalyse]Phrase und Abhängigkeit
Problem 42
Problem 43
Problem 44 [pydot-ng]Installation,So überprüfen Sie die Quelle gerichteter Grafiken und Module, die in Python erstellt wurden
Problem 45 [Abhängigkeitsanalyse]Fall,[UNIX-Befehle]grep
Problem 46 [Abhängigkeitsanalyse]Fallrahmen / Fallgrammatik
Problem 47 [Abhängigkeitsanalyse]Funktionsverb
Problem 48 [Abhängigkeitsanalyse]Weg von der Nomenklatur zur Wurzel
Problem 49 [Abhängigkeitsanalyse]Abhängigkeitspfad zwischen Nomenklatur

Kapitel 6: Verarbeiten von englischem Text

Ein Überblick über verschiedene grundlegende Technologien für die Verarbeitung natürlicher Sprache durch englische Textverarbeitung mit Stanford Core NLP.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 50 Generator
Problem 51
Problem 52 Wortstamm, Stemming, Schneeballstemmer: Wie man verwendet
Problem 53 [StanfordCoreNLP]Installation,Wiebenutztman,subprocess.run(),XML-Analyse,xml.etree.ElementTree.ElementTree.parse()、xml.etree.ElementTree.ElementTree.iter()
Problem 54 [StanfordCoreNLP]Teil,Lemma,XML-Analyse,xml.etree.ElementTree.Element.findtext()
Problem 55 [StanfordCoreNLP]ProprietäreVertretung,XPath,xml.etree.ElementTree.Element.iterfind()
Problem 56 [Stanford Core NLP]Co-Referenz
Problem 57 [Stanford Core NLP]Abhängig,[pydot-ng]Gerichteter Graph
Problem 58 [Stanford Core NLP]Gegenstand,Prädikat,Objekt
Problem 59 [StanfordCoreNLP]Klauselstrukturanalyse,SAusdruck,rekursiverAufruf,sys.setrecursionlimit()、threading.stack_size()

Kapitel 7: Datenbank

Erfahren Sie, wie Sie Datenbanken mit Key Value Store (KVS) und NoSQL erstellen und durchsuchen. Wir werden auch ein Demosystem mit CGI entwickeln.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 60 [LevelDB]Installation,Wiebenutztman,str.encode()、bytes.decode()
Problem 61 [LevelDB]Suche,Unicode-Codepunkt,ord()
Problem 62 [LevelDB]Aufzählung
Problem 63 JSON-Manipulation,json.dumps()
Problem 64 [MongoDB]Installation,Wie benutzt man,Interaktive Shell,Masseneinsatz,Index
Problem 65 [MongoDB]Suche,Behandlung von Typen, die nicht in Konvertierungstabellen für ObjectId- und JSON-Formate gefunden wurden
Problem 66
Problem 67
Problem 68 [MongoDB]Sortieren
Problem 69 Webserver,CGI,HTML-Escape,html.escape()、html.unescape()、[MongoDB]Suchen Sie nach mehreren Bedingungen

Kapitel 8: Maschinelles Lernen

Erstellen Sie einen Reputationsanalysator (positiver / negativer Analysator) durch maschinelles Lernen. Außerdem lernen Sie, wie Sie die Methode bewerten.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 70 [Maschinelles Lernen]Automatische Klassifizierung,Etikette,Lernen mit Lehrer / Lernen ohne Lehrer
Problem 71 Stoppwort, Behauptung,assert
Problem 72 [Maschinelles Lernen]Identität
Problem 73 [NumPy]Installation,Matrixoperation,[Maschinelles Lernen]Logistische Rückgabe,Vektorisierung,Hypothetische Funktion,Sigmaid-Funktion,Zielfunktion,Die steilste Abstiegsmethode,Lernrate und Anzahl der Wiederholungen
Problem 74 [Maschinelles Lernen]Prognose
Problem 75 [Maschinelles Lernen]Das Gewicht der Identität,[NumPy]Index der sortierten Ergebnisse abrufen
Problem 76
Problem 77 Richtige Antwortrate, Präzisionsrate, Rückrufrate, F1-Punktzahl
Problem 78 [Maschinelles Lernen]5-Split-Kreuztest
Problem 79 [matplotlib]Liniendiagramm

Kapitel 9: Vektorraummethode (I)

Finden Sie die Matrix für das gleichzeitige Auftreten von Wortkontexten aus einem großen Korpus und lernen Sie den Vektor, der die Bedeutung des Wortes darstellt. Der Wortvektor wird verwendet, um die Ähnlichkeit und Analogie von Wörtern zu finden.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 80 Wortvektorisierung,bz2.open()
Problem 81 [Wortvektor]Umgang mit zusammengesetzten Wörtern
Problem 82
Problem 83 Serialisierung/SerialisierungvonObjekten,pickle.dump()、pickle.load()
Problem 84 [Wortvektor]Wortkontextmatrix,PPMI(PositiveMutualInformationAmount),[SciPy]Installation,Behandlung von spärlicher Matrix,Serialisierung,collections.OrderedDict
Problem 85 Hauptkomponentenanalyse(PCA),[scikit-learn]Installation,PCA
Problem 86
Problem 87 Kosinusähnlichkeit
Problem 88
Problem 89 Additive Konstruktivität, Analogie

Kapitel 10: Vektorraummethode (II)

Verwenden Sie word2vec, um den Vektor zu lernen, der die Bedeutung des Wortes darstellt, und bewerten Sie ihn anhand der richtigen Antwortdaten. Darüber hinaus werden Sie Clustering und Vektorvisualisierung erleben.

Link zum Beitrag Was ich hauptsächlich gelernt habe, was ich in den Kommentaren gelernt habe usw.
Problem 90 [word2vec]Installation,Wie benutzt man
Problem 91
Problem 92
Problem 93
Problem 94
Problem 95 Spearman-Rangkorrelationskoeffizient, dynamische Elementaddition zur Instanz,**Du kannst reiten
Problem 96
Problem 97 Klassifizierung, Clustering, K.-Means、[scikit-learn]K-Means
Problem 98 Hierarchisches Clustering, Ward-Methode, Dendrogramm,[SciPy]Ward-Methode,Dendrogramm
Problem 99 t-SNE、[scikit-learn]t-SNE、[matplotlib]Beschriftetes Streudiagramm

Nach 100 Schlägen

Es hat 8 Monate gedauert, aber ich habe es geschafft, 100 Stößen standzuhalten. Ich bin Dr. Okazaki sehr dankbar, dass er eine so wunderbare Ausgabe mit einem Datenkorpus veröffentlicht hat.

Außerdem haben mich die Kommentare, Bearbeitungsanfragen, Likes, Aktien, Follow-ups und Einführungen in Blogs und SNS sehr ermutigt. Vielen Dank an alle, die bis zum Ende weitermachen. Vielen Dank.

Ich hoffe, dass der Artikel, den Sie gepostet haben, für diejenigen hilfreich ist, die folgen.

Recommended Posts

100 Amateur-Sprachverarbeitungsklopfen: Zusammenfassung
100 Amateur-Sprachverarbeitungsklopfen: 09
100 Amateur-Sprachverarbeitungsklopfen: 47
100 Amateur-Sprachverarbeitungsklopfen: 67
100 Sprachverarbeitungsklopfen (2020): 28
100 Sprachverarbeitungsklopfen (2020): 38
100 Sprachverarbeitung klopfen 00 ~ 02
100 Amateur-Sprachverarbeitungsklopfen: 41
100 Amateur-Sprachverarbeitungsklopfen: 71
100 Amateur-Sprachverarbeitungsklopfen: 56
100 Amateur-Sprachverarbeitungsklopfen: 50
100 Sprachverarbeitung klopfen 2020 [00 ~ 69 Antwort]
100 Amateur-Sprachverarbeitungsklopfen: 59
100 Amateur-Sprachverarbeitungsklopfen: 70
100 Amateur-Sprachverarbeitungsklopfen: 62
100 Amateur-Sprachverarbeitungsklopfen: 60
100 Sprachverarbeitung Knock 2020 Kapitel 1
100 Amateur-Sprachverarbeitungsklopfen: 30
100 Amateur-Sprachverarbeitungsklopfen: 06
100 Amateur-Sprachverarbeitungsklopfen: 84
100 Sprachverarbeitung klopfen 2020 [00 ~ 49 Antwort]
100 Amateur-Sprachverarbeitungsklopfen: 81
100 Amateur-Sprachverarbeitungsklopfen: 33
100 Amateur-Sprachverarbeitungsklopfen: 46
100 Amateur-Sprachverarbeitungsklopfen: 88
100 Amateur-Sprachverarbeitungsklopfen: 89
100 Amateur-Sprachverarbeitungsklopfen: 40
100 Amateur-Sprachverarbeitungsklopfen: 45
100 Amateur-Sprachverarbeitungsklopfen: 43
100 Amateur-Sprachverarbeitungsklopfen: 55
100 Sprachverarbeitung Knock-52: Stemming
100 Amateur-Sprachverarbeitungsklopfen: 22
100 Amateur-Sprachverarbeitungsklopfen: 61
100 Amateur-Sprachverarbeitungsklopfen: 94
100 Amateur-Sprachverarbeitungsklopfen: 54
100 Amateur-Sprachverarbeitungsklopfen: 04
100 Sprachverarbeitung Knock Kapitel 1
100 Amateur-Sprachverarbeitungsklopfen: 63
100 Amateur-Sprachverarbeitungsklopfen: 78
100 Amateur-Sprachverarbeitungsklopfen: 12
100 Amateur-Sprachverarbeitungsklopfen: 14
100 Amateur-Sprachverarbeitungsklopfen: 08
100 Amateur-Sprachverarbeitungsklopfen: 42
100 Amateur-Sprachverarbeitungsklopfen: 19
100 Amateur-Sprachverarbeitungsklopfen: 73
100 Amateur-Sprachverarbeitungsklopfen: 75
100 Amateur-Sprachverarbeitungsklopfen: 98
100 Amateur-Sprachverarbeitungsklopfen: 32
100 Amateur-Sprachverarbeitungsklopfen: 96
100 Amateur-Sprachverarbeitungsklopfen: 87
100 Amateur-Sprachverarbeitungsklopfen: 72
100 Amateur-Sprachverarbeitungsklopfen: 79
100 Amateur-Sprachverarbeitungsklopfen: 23
100 Amateur-Sprachverarbeitungsklopfen: 00
100 Amateur-Sprachverarbeitungsklopfen: 02
100 Amateur-Sprachverarbeitungsklopfen: 37
100 Amateur-Sprachverarbeitungsklopfen: 21
100 Amateur-Sprachverarbeitungsklopfen: 68
100 Sprachverarbeitung Knock 2020 Kapitel 3
100 Amateur-Sprachverarbeitungsklopfen: 90
100 Amateur-Sprachverarbeitungsklopfen: 74