一、word2vec调参
 
./word2vec -train resultbig.txt -output vectors.bin -cbow 0 -size 200 -window 5 -negative 0 -hs 1 -sample 1e-3 -threads 12 -binary 1

  

一般来说,比较喜欢用cbow ,因为模型中 cbow有向量相加的运算。##保留意见

 
-cbow 0表示不使用cbow模型,默认为Skip-Gram模型
-size 表示词向量维数:经验是不超过1000,超过1000基本都没有效果,我感觉是可以取  sqrt(dict_size)/2 的样子,不过最好多试几个
-window 上下文窗口,是训练词向量的时候,取上下文的大小,感觉这个一般都是5比较好
 
-sample 表示采样参数,是一个经验忽视掉频率过高的词的参数,一般也用默认的就行。
-sampe指的是采样的阈值,如果一个词语在训练样本中出现的频率越大,那么就越会被采样。
 
-negative 表示负采样参数,每有一个正样本,选择几个负样本的参数,一般也是用默认的。
-binary为1指的是结果二进制存储,为0以文本形式进行存储。
上面这两个参数试过很多个,感觉就是默认的比较好用。

-hs 做不做层次的softmax,是1的时候效果比较好,但是训练会慢一点
-min-count 控制词典大小的参数,如果只想要高频词的话就设置高一点。

 

    架构:skip-gram(慢、对罕见字有利)vs CBOW(快)

·         训练算法:分层softmax(对罕见字有利)vs 负采样(对常见词和低纬向量有利)

·         欠采样频繁词:可以提高结果的准确性和速度(适用范围1e-3到1e-5)

·         文本(window)大小:skip-gram通常在10附近,CBOW通常在5附近

二、LDA调参

1.文章

http://jmlr.org/proceedings/papers/v32/tang14.pdf

2.思路

1)lda模型(latent dirichlet distribution)调优,比如曾经有研究表明,直接把短文档(比如一个微博,一个查询)作为输入,不如先做预处理把这些短文章聚合成一些长文章(比如把同一作者的微博合一块)。

2)当我们选择的主题数目k和真实主题数目k’ 一致,或者主题-词分布区分度够高(欧式距离衡量下)的情况下,假如我们还满足文档长度的限制,log d 《= n 的, 那么, 随着n 和 d 增长,后验分布和真实分布之间的误差正比于 logn / n +logd / d。

3)当我们选择的主题数目k 大于真实主题数目k‘时,如果我们仍然满足 d》= log n, 那么误差正比于 (log n / n + logd / d) ^ (1/(2k –1))

4)

    1. 文档长度不能太短,至少是文档数目的log,所以对于太短的文档,我们必须把他们聚合

    2. 为了满足log d 《= n, 还有一个方法是降低d,但很可惜,最终误差大小正比于d,所以文档数量最好也多一点。

    3. 当我们选择的topic 数目k 大大超出于真实topic 数目 k‘ 时,可以从(5)的结果看到,也会减慢收敛速度,所以应该从比较小的topic数目开始,慢慢增加。

    4. 最好当然是我们能知道真正的主题数目k,这样可以避开上面的试探过程,但现实很难,另外一个可能的条件是topic之间差异大,比如每个文档可能的topic少,或者每个topic有一些特殊的词,比如一个topic是自然语言处理,另一个topic是图像处理,两个各有自己独特的词,如像素,语法树等等,这样我们就可以不用太担心试探过程。

    5. 当上面两种情况发生时,可以考虑设置小一点的alpha 和beta, 以减少迭代。

 

word2vec参数调整 及lda调参的更多相关文章

  1. xgboost的sklearn接口和原生接口参数详细说明及调参指点

    from xgboost import XGBClassifier XGBClassifier(max_depth=3,learning_rate=0.1,n_estimators=100,silen ...

  2. lightgbm的sklearn接口和原生接口参数详细说明及调参指点

    class lightgbm.LGBMClassifier(boosting_type='gbdt', num_leaves=31, max_depth=-1, learning_rate=0.1, ...

  3. DeepMind提出新型超参数最优化方法:性能超越手动调参和贝叶斯优化

    DeepMind提出新型超参数最优化方法:性能超越手动调参和贝叶斯优化 2017年11月29日 06:40:37 机器之心V 阅读数 2183   版权声明:本文为博主原创文章,遵循CC 4.0 BY ...

  4. scikit-learn随机森林调参小结

    在Bagging与随机森林算法原理小结中,我们对随机森林(Random Forest, 以下简称RF)的原理做了总结.本文就从实践的角度对RF做一个总结.重点讲述scikit-learn中RF的调参注 ...

  5. rf调参小结

    转自http://www.cnblogs.com/pinard/p/6160412.html 1. scikit-learn随机森林类库概述 在scikit-learn中,RF的分类类是RandomF ...

  6. gbdt调参的小结

    关键部分转自http://www.cnblogs.com/pinard/p/6143927.html 第一次知道网格搜索这个方法,不知道在工业中是不是用这种方式 1.首先从步长和迭代次数入手,选择一个 ...

  7. 100天搞定机器学习|Day56 随机森林工作原理及调参实战(信用卡欺诈预测)

    本文是对100天搞定机器学习|Day33-34 随机森林的补充 前文对随机森林的概念.工作原理.使用方法做了简单介绍,并提供了分类和回归的实例. 本期我们重点讲一下: 1.集成学习.Bagging和随 ...

  8. XGBoost和LightGBM的参数以及调参

    一.XGBoost参数解释 XGBoost的参数一共分为三类: 通用参数:宏观函数控制. Booster参数:控制每一步的booster(tree/regression).booster参数一般可以调 ...

  9. XGBoost 重要参数(调参使用)

    XGBoost 重要参数(调参使用) 数据比赛Kaggle,天池中最常见的就是XGBoost和LightGBM. 模型是在数据比赛中尤为重要的,但是实际上,在比赛的过程中,大部分朋友在模型上花的时间却 ...

随机推荐

  1. Oracle学习笔记六 SQL常用函数

    函数的分类 Oracle 提供一系列用于执行特定操作的函数 SQL 函数带有一个或多个参数并返回一个值 以下是SQL函数的分类:

  2. memcached安装配置+基础操作

    先安装依赖关系 下载libevent-2.0.21-stable.tar.gz wget https://github.com/downloads/libevent/libevent/libevent ...

  3. tftp-nfs开发环境搭建

    嵌入式开发通常使用主机-开发板的开发模式,在裸板开发中,我们通常使用串口调试工具传递文件,比如windows平台的超级终端,SecuCRT以及Linux平台的ckermit(题外话:ckermit比w ...

  4. 4-安装workpress

    安装wordpress 软件下载 https://cn.wordpress.org/releases/ 在mysql数据库中创建wordpress数据库 mysql> create databa ...

  5. python教程与资料

    网上有个人写的python快速教程,非常好.比看书好多了.猛击下面的链接地址 http://www.douban.com/group/topic/30008503/ python文档资料收集 pyth ...

  6. excel基本

    1,换行:control+option(alt)+enter

  7. Heartbeat使用梳理

    在日常的集群系统架构中,一般用到Heartbeat的主要就2种:1)高可用(High Availability)HA集群, 使用Heartbeat实现,也称为"双机热备", &qu ...

  8. 【三石视频教程】当FineUIPro遇到ReportViewer

    FineUIPro 下个版本(v2.8.0)即将支持 ReportViewer,为此三石特别制作了一期视频教程,供大家参考. 运行效果图:   视频下载:http://pan.baidu.com/s/ ...

  9. CoreOS和Docker入门

    转载自: http://www.oschina.net/translate/coreos_and_docker_first_steps?cmp CoreOS是一个基于Linux,systemd和Doc ...

  10. 1207MySQL 面试题

    转自http://blog.itpub.net/26435490/viewspace-1133659/ 1, mysql的复制原理以及流程. (1)先问基本原理流程,3个线程以及之间的关联. (2)再 ...