fastText - 无故抛出异常

fastText - Throws exception without any reasons

我正在使用模块 gensimfastText 实现。尽管找不到原因,我的程序还是抛出了异常。

代码如下:

try:
    data = []
    with open(TXT_PATH, 'r', encoding='utf-8') as txt_file:
        for line in txt_file:
            for part in line.split(' '):
                data.append(part.strip())

    fastText = FastText(data, min_count=1, size=10000, window=5, workers=4)

    # Print results
    word_1 = 'happy'
    word_2 = 'birthday'
    print(f'Similarity between {word_1} and {word_2} thru fastText: {fastText.similarity(word_1, word_2)}')
except Exception as err:
    print(f'\n!!!!! An error happened! Detail: {str(err)}')

输出结束:

!!!!! An error happened! Detail: 

根据我在 上的回答,您的 data 格式似乎不正确(每个项目都是一个字符串列表),并且 size=10000远远超出了通常的合理矢量大小范围。

但主要是,如果您需要更多异常信息,您不应该捕获 Exception 并打印您自己的最小的、神秘的错误消息。从您的代码中删除 try/except 处理,再次 运行 它,您应该会看到更有用的错误消息,包括一个调用堆栈,它准确显示了代码的哪一行(和行被调用的库代码) 涉及错误条件。

如果仅此一项不能指导您解决问题,您可以将完整错误和调用堆栈的额外详细信息添加到您的问题中,以帮助其他人了解发生了什么。