openXBOW的使用(1)

默认:已下载openXBOW源码。

  1. 获取所有可用参数的列表:
    java -jar openXBOW.jar
  2. 直接上使用示例:

    1. 示例1(基础操作):对每个音频/图像文档,给定一定数量的特征向量,即数字低级描述符(LLD),如MFCC,SIFT等。从属于一个文档/样本的所有LLD中,应创建一个词袋表示。

      1. 根据数据、标签生成词袋模型的三种方式:

        (1)java -jar openXBOW.jar -i examples/example1/llds.arff -l examples/example1/labels.csv -o bow.arff
        (2)java -jar openXBOW.jar -i examples/example1/llds.csv  -l examples/example1/labels.csv -o bow.arff
        (3)java -jar openXBOW.jar -i examples/example1/llds_labels.arff -o bow.arff
      2. 如果需要生成codebook大小为1000,且每个输入LLD有10个分配的字包表示形式:在上述指令中增加参数:-size 1000 -a 10

      3. 对输入文件中所有LLD进行随机抽样生成codebook,当没有目标(类标签)情况下生成单词袋输出:

        java -jar openXBOW.jar -i examples/example1/llds.csv -o bow2.arff
      4. 使用 kmeans++ 聚类学习大小为 200 的codebooks,然后将其存储在文件中:

        java -jar openXBOW.jar -i examples/example1/llds_labels.arff -o bow.arff -a 5 -c kmeans++ -size 200 -B codebook
      5. 加载学习的codebook并将其应用与相同的输入数据:java -jar openXBOW.jar -i examples/example1/llds_labels.arff -o bow.arff -a 5 -b codebook

      6. 生成词袋表示形式后,可进行的进一步处理:

        1. 对数项频率加权:适用于袋中的每个项频率(TF),可在加载相应的codebook时使用。

        2. 逆文档频率(IDF)转换:将每个词项频率乘上(样本总数与存在相应词项/单词的实例数)之比的对数,可在加载相应的codebook时使用。

        3. 直方图归一化:在基础指令中增加:(1,2,3择一个数字即可)一般用于不同输入文档/样本之间的输入LLD数量不同时:

          -norm 1/2/3
        4. 标准化/规范化的参数:(以下择1即可)

          -standardizeInput 
          -normalizeInput 
          -standardizeOutput -normalizeOutput

            

    2. 示例2:
      1. 从与时间相关的数值低级描述符生成与时间相关的词袋表示形式
      2. 对应场景:对音频中说话人特征(如情绪)的时间依赖性(离散时间连续)预测。
      3. 袋子是在特征的段或块上创建的
      4. 在参数中设置窗口大小和跃点大小(均以秒为单位):此处使用的是5.0s的块大小来生成袋子,有跃点大小0.5s指定每个时间戳周围2.5s 的周期:
        java -jar openXBOW.jar -i examples/example2/llds.csv -l examples/example2/labels.csv -t 5.0 0.5 -o bow.arff -a 1 -c kmeans++ -size 200 -B codebook
        
        java -jar openXBOW.jar -i examples/example2/llds.csv -l examples/example2/labels.csv -t 5.0 0.5 -o bow.arff -a 1 -b codebook
      5. 将输入的LLD拆分为两个或多个子集,对于每个子集训练一个单独的codebook。为每个LLD子集独立生成袋子,并最终融合,实际操作:
        java -jar openXBOW.jar -i examples/example2/llds.csv -attributes nt1[5]2[5] -l examples/example2/labels.csv -t 5.0 0.5 -o bow.arff -a 1 -c kmeans++ -size 50,100 -B codebook -writeName -writeTimeStamp
    3.  示例3:
      1. 从交叉模式(数字和符号)输入数据生成词袋表示形式
      2. 在使用声学特征和文本的实际设置中,声学特征的速率将远远高于单词的速率。所以很多的文本是空的。
      3. 将相同属性的所有输入都转为词袋表示形式:
        java -jar openXBOW.jar -i examples/example3/crossmodal.arff -o bow.arff -c kmeans++ -size 4 -B codebook -writeName
      4. 生成的codebook中所有文本会自动转换为大写。文本输入通常来自自动语音识别系统(该系统主要以大写形式输出)
      5. 后期融合:(即先数字和符号分别生成codebook,后续进行融合):
        java -jar openXBOW.jar -i examples/example3/crossmodal.arff -attributes n1[4]rc -o bowNumeric.arff -c kmeans++ -size 4 -B codebookNumeric -writeName
        
        java -jar openXBOW.jar -i examples/example3/crossmodal.arff -attributes nr[4]0c -o bowText.arff -B codebookText -writeName
         
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值