recursion + keyerror issue with some wordnet synsets
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 25/100
- Issue-Typ
- Bug
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- python
- Bereich
- machine-learning
Rechercherichtung
Reproduziere die gemeldeten Aufrufe mit pattern.en.wordnet, insbesondere s[4].hypernyms(recursive=True) für "deny" mit pos="VB". Lies pattern/text/en/wordnet/init.py im Umfeld von Synset.hypernyms sowie pywordnet/wordnet.py im Umfeld von getTarget, getSynset und _entityCache.get. Erledigt ist die Aufgabe, wenn die Rekursion und der KeyError für diese Reproduktion behoben sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Ran into an odd recursion and keyerror errors with a wordnet synset of "deny". Note that I abbreviated the 990 iterations of a part of the output.
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://anaconda.org
>>> from pattern.en import wordnet as wn
>>> from pattern import __version__ as pattver
>>> pattver
'2.6'
>>> s = wn.synsets("deny", pos="VB")
>>> print(s[4].hypernyms(recursive=True))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
**** CHUNK REPEATED 990 TIMES ****
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/__init__.py", line 244, in hypernyms
[p.extend(s.hypernyms(True, depth)) for s in list(p)]
**** CHUNK REPEATED 990 TIMES ****
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/__init__.py", line 236, in hypernyms
p = [Synset(p.getTarget()) for p in self._synset.getPointers(wn.HYPERNYM)]
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 722, in getTarget
synset = getSynset(self.pos, self.targetOffset)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 1090, in getSynset
return _dictionaryFor(pos).getSynset(offset)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 827, in getSynset
return _entityCache.get((pos, offset), loader)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 1310, in get
if value == None:
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 472, in __cmp__
return _compareInstances(self, other, ('pos', 'offset'))
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 1108, in _compareInstances
elif a.__class__ != b.__class__:
RuntimeError: maximum recursion depth exceeded in cmp
>>> print(s[4].hypernyms(recursive=True))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/__init__.py", line 244, in hypernyms
[p.extend(s.hypernyms(True, depth)) for s in list(p)]
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/__init__.py", line 236, in hypernyms
p = [Synset(p.getTarget()) for p in self._synset.getPointers(wn.HYPERNYM)]
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 722, in getTarget
synset = getSynset(self.pos, self.targetOffset)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 1090, in getSynset
return _dictionaryFor(pos).getSynset(offset)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 827, in getSynset
return _entityCache.get((pos, offset), loader)
File "[HOME_DIR]/anaconda/envs/snorkel/lib/python2.7/site-packages/pattern/text/en/wordnet/pywordnet/wordnet.py", line 1309, in get
del this.history[timestamp]
KeyError: 1003
- Vorherrschende Sprache
- Python
- Sterne
- 8.9k
- Forks
- 1.6k
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus clips/pattern
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
-
pattern.graph exampleOffen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 65/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 45/100
-
pattern lib not foundOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 30/100
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 85/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 90/100
Maintainer antworten meist innerhalb von 1 Tag
-
instance instance add
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
searxng/searx-instances#941 · 1 Kommentar ·
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
FluidNumerics/fluid-walk-blocker#89 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag