如何为cloudml引擎打包词汇文件

2024-06-22 10:35:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个.txt文件,其中每行都有一个不同的标签。我使用此文件创建标签索引查找文件,例如:

label_index = tf.contrib.lookup.index_table_from_file(vocabulary_file = 'labels.txt'

我想知道我应该如何用云ml引擎打包词汇文件?packaging suggestions在如何设置.py文件方面是明确的,但我不完全确定应该将相关的.txt文件放在哪里。它们是应该放在引擎可以访问的存储桶(即gs://)中,还是可以与培训师一起打包?在


Tags: 文件from引擎txtindexlabelstftable
1条回答
网友
1楼 · 发布于 2024-06-22 10:35:27

您有多个选项。我认为最直接的方法是将^{cd1>}存储在GCS位置。

但是,如果您愿意,您也可以将文件打包到^{cd2>}。有多种方法可以做到这一点,所以我将介绍official setuptools documentation

让我来简单介绍一个示例:

在您的培训包下面的目录中创建^{cd2>}(通常在CloudML引擎的示例中称为^{{cd4>}),因此,我将继续,就像代码的结构与示例相同,包括使用^{cd4>}作为包)。以下是基于您引用的docs的一个重要更改,即^{{cd6>}参数,而不是^{{cd7>}:

from setuptools import find_packages
from setuptools import setup

setup(
    name='my_model',
    version='0.1',
    install_requires=REQUIRED_PACKAGES,
    packages=find_packages(),
    package_data={'trainer': ['labels.txt']},
    description='My trainer application package.'
)

如果运行^{cd8>},您可以看到^{cd9>}已复制到tarball中。

然后在代码中,您可以访问如下文件:

^{pr2}$

注意,要在本地运行此代码,您必须安装包:^{{cd10>}。

这就是我认为在GCS上存储文件可能更容易的主要原因。

相关问题 更多 >