自顶向下分析一个简单的语音识别系统(四)

上回我们分析了模型的初始化,花开两朵各表一枝,本回我们说一下上回提到的set_dirs.py。该文件结构如下图所示:

Created with Raphaël 2.1.0 get_home_dir get_data_dir/get_conf_dir/get_model_dir get_relevant_directories

其中,
get_home_dir返回RNN-Tutorial所在目录,代码如下:

def get_home_dir(home_dir=None):
    if home_dir is None:
        home_dir = os.environ['RNN_TUTORIAL']
    return home_dir

get_data_dir/get_model_dir/get_conf_dir函数调用get_home_dir函数,进行相关操作得到相关目录,代码如下:

def get_data_dir(data_dir=None, home_dir=None):
    if data_dir is None:
        data_dir = os.path.join(get_home_dir(home_dir=home_dir), 'data', 'raw')
    # if the beginning of the data_dir is not '/' then prepend home_dir behind it
    elif not os.path.isabs(data_dir):
        data_dir = os.path.join(get_home_dir(home_dir=home_dir), data_dir)
    return data_dir


def get_conf_dir(conf_dir=None, home_dir=None, debug=False):
    if conf_dir is None:
        conf_dir = os.path.join(get_home_dir(home_dir=home_dir), 'configs')
        # Descend to the testing folder if debug==True
        if debug:
            conf_dir = os.path.join(conf_dir, 'testing')
    return conf_dir


def get_model_dir(model_dir=None, home_dir=None):
    if model_dir is None:
        model_dir = os.path.join(get_home_dir(home_dir=home_dir), 'models')
    return model_dir

get_relevant_directories函数调用上面的三个函数,返回相关的三个文件夹的路径,代码如下:

def get_relevant_directories(
        home_dir=None,
        data_dir=None,
        conf_dir=None,
        debug=False):

    home_dir = get_home_dir(home_dir=home_dir)

    data_dir = get_data_dir(data_dir=data_dir, home_dir=home_dir)

    conf_dir = get_conf_dir(conf_dir=conf_dir, home_dir=home_dir, debug=debug)

    return home_dir, data_dir, conf_dir

本回主要内容结束,下回我们回到主故事线,开始分析run_model函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值