我用的是预先训练过的模型:
import fasttext.util
fasttext.util.download_model('en', if_exists='ignore') # English
ft = fasttext.load_model('cc.en.300.bin')在哪里可以找到用于训练模型的超参数值的详尽列表?https://fasttext.cc/docs/en/options.html列出了默认值,这与使用的值不同:例如,单词向量的维数是300,而不是100 (引用https://fasttext.cc/docs/en/crawl-vectors.html没有列出它们的全部)。
发布于 2021-06-05 13:54:43
引用https://github.com/facebookresearch/fastText/issues/887#issuecomment-649018188的NVS Abhilash的正确代码是:
args_obj = ft.f.getArgs()
for hparam in dir(args_obj):
if not hparam.startswith('__'):
print(f"{hparam} -> {getattr(args_obj, hparam)}")这将打印所有的超参数的训练模型!
发布于 2021-06-04 01:08:12
从Facebook源代码中的_FastText Python模型类.
...it看起来就像,至少在创建模型时,所有的超参数都是作为属性添加到对象上的。
你有没有检查过你装好的型号上是否有这种情况?例如,ft.dim report 300和其他参数(如ft.minCount )是否有什么有趣的地方?
更新:似乎不起作用,它看起来也像_FastText模型在其.f属性中包装了一个原生(非在_FastText中的) FastText模型的内部实例。(请参阅我前面指出的源代码中的几行代码。)
该本机实例由fasttext_pybind.cc指定的模块设置。该代码看起来像它指定了一组读写类变量,与元参数关联-例如,请参见:
因此:ft.f.minCount或ft.f.dim是否从加载后的模型ft返回有用的信息?
https://stackoverflow.com/questions/67829695
复制相似问题