• 层次softmax函数(hierarchical softmax)


    一、h-softmax

    在面对label众多的分类问题时,fastText设计了一种hierarchical softmax函数。使其具有以下优势

    • (1)适合大型数据+高效的训练速度:能够训练模型“在使用标准多核CPU的情况下10分钟内处理超过10亿个词汇”,特别是与深度模型对比,fastText能将训练时间由数天缩短到几秒钟。
    • (2)支持多语言表达:利用其语言形态结构,fastText能够被设计用来支持包括英语、德语、西班牙语、法语以及捷克语等多种语言。

    可以认为,FastText= (word2vec中)CBOW + h-softmax;其结构为:输入 - 隐层 - h-softmax

    基本原理

    • 根据标签(label)和频率建立霍夫曼树;(label出现的频率越高,Huffman树的路径越短)
    • Huffman树中每一叶子结点代表一个label;

    二、理论分析

    层次之间的映射

    将输入层中的词和词组构成特征向量,再将特征向量通过线性变换映射到隐藏层,隐藏层通过求解最大似然函数,然后根据每个类别的权重和模型参数构建Huffman树,将Huffman树作为输出。 
    这里写图片描述

    模型的训练

    Huffman树中每一叶子结点代表一个label,在每一个非叶子节点处都需要作一次二分类,走左边的概率和走右边的概率,这里用逻辑回归的公式表示 

    如何做到fast

    参考:fastText原理及应用

  • 相关阅读:
    NSCoding相关
    object c 运行时编程指南
    iphone 框架体系结构
    Object c 反射
    hook qq 聊天内容(转)
    iphone地址本操作
    通过xib文件创建子控件(转)
    iphone生成唯一字符串
    反射手册笔记 6.NET组件模型
    IDC项目技术总结
  • 原文地址:https://www.cnblogs.com/eniac1946/p/8818892.html
Copyright © 2020-2023  润新知