word2vec参数调整 及lda调参
./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有向量相加的运算。##保留意见
-window 上下文窗口,是训练词向量的时候,取上下文的大小,感觉这个一般都是5比较好
-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)
文档长度不能太短,至少是文档数目的log,所以对于太短的文档,我们必须把他们聚合
为了满足log d 《= n, 还有一个方法是降低d,但很可惜,最终误差大小正比于d,所以文档数量最好也多一点。
当我们选择的topic 数目k 大大超出于真实topic 数目 k‘ 时,可以从(5)的结果看到,也会减慢收敛速度,所以应该从比较小的topic数目开始,慢慢增加。
最好当然是我们能知道真正的主题数目k,这样可以避开上面的试探过程,但现实很难,另外一个可能的条件是topic之间差异大,比如每个文档可能的topic少,或者每个topic有一些特殊的词,比如一个topic是自然语言处理,另一个topic是图像处理,两个各有自己独特的词,如像素,语法树等等,这样我们就可以不用太担心试探过程。
当上面两种情况发生时,可以考虑设置小一点的alpha 和beta, 以减少迭代。
word2vec参数调整 及lda调参的更多相关文章
- xgboost的sklearn接口和原生接口参数详细说明及调参指点
from xgboost import XGBClassifier XGBClassifier(max_depth=3,learning_rate=0.1,n_estimators=100,silen ...
- lightgbm的sklearn接口和原生接口参数详细说明及调参指点
class lightgbm.LGBMClassifier(boosting_type='gbdt', num_leaves=31, max_depth=-1, learning_rate=0.1, ...
- DeepMind提出新型超参数最优化方法:性能超越手动调参和贝叶斯优化
DeepMind提出新型超参数最优化方法:性能超越手动调参和贝叶斯优化 2017年11月29日 06:40:37 机器之心V 阅读数 2183 版权声明:本文为博主原创文章,遵循CC 4.0 BY ...
- scikit-learn随机森林调参小结
在Bagging与随机森林算法原理小结中,我们对随机森林(Random Forest, 以下简称RF)的原理做了总结.本文就从实践的角度对RF做一个总结.重点讲述scikit-learn中RF的调参注 ...
- rf调参小结
转自http://www.cnblogs.com/pinard/p/6160412.html 1. scikit-learn随机森林类库概述 在scikit-learn中,RF的分类类是RandomF ...
- gbdt调参的小结
关键部分转自http://www.cnblogs.com/pinard/p/6143927.html 第一次知道网格搜索这个方法,不知道在工业中是不是用这种方式 1.首先从步长和迭代次数入手,选择一个 ...
- 100天搞定机器学习|Day56 随机森林工作原理及调参实战(信用卡欺诈预测)
本文是对100天搞定机器学习|Day33-34 随机森林的补充 前文对随机森林的概念.工作原理.使用方法做了简单介绍,并提供了分类和回归的实例. 本期我们重点讲一下: 1.集成学习.Bagging和随 ...
- XGBoost和LightGBM的参数以及调参
一.XGBoost参数解释 XGBoost的参数一共分为三类: 通用参数:宏观函数控制. Booster参数:控制每一步的booster(tree/regression).booster参数一般可以调 ...
- XGBoost 重要参数(调参使用)
XGBoost 重要参数(调参使用) 数据比赛Kaggle,天池中最常见的就是XGBoost和LightGBM. 模型是在数据比赛中尤为重要的,但是实际上,在比赛的过程中,大部分朋友在模型上花的时间却 ...
随机推荐
- sqoop:Failed to download file from http://hdp01:8080/resources//oracle-jdbc-driver.jar due to HTTP error: HTTP Error 404: Not Found
环境:ambari2.3,centos7,sqoop1.4.6 问题描述:通过ambari安装了sqoop,又添加了oracle驱动配置,如下: 保存配置后,重启sqoop报错:http://hdp0 ...
- WPF 自定义DateControl DateTime控件
自定义日期控件,月份选择.如下是日期的一些效果图. 具体的样式.颜色可以根据下面的代码,自己调节即可 1.日期控件的界面 <UserControl x:Class="WpfApp ...
- iOS多线程主题
下面是:2个并发进程.和2个并发线程的示意图: 下面介绍三种多线程技术(Thread.Cocoa Operation.Grand Central Dispatch): 1.最轻量级Thread(需要自 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- [LeetCode] Binary Watch 二进制表
A binary watch has 4 LEDs on the top which represent the hours (0-11), and the 6 LEDs on the bottom ...
- [LeetCode] Find the Difference 寻找不同
Given two strings s and t which consist of only lowercase letters. String t is generated by random s ...
- [LeetCode] Department Highest Salary 系里最高薪水
The Employee table holds all employees. Every employee has an Id, a salary, and there is also a colu ...
- [LeetCode] Best Time to Buy and Sell Stock 买卖股票的最佳时间
Say you have an array for which the ith element is the price of a given stock on day i. If you were ...
- 常用DOS命令
1.查询端口占用情况:netstat -aon |findstr "8080"; 查看端口进程号: 2.查看进程号信息: tasklist |findstr "999 ...
- tensorflow 一些好的blog链接和tensorflow gpu版本安装
pading :SAME,VALID 区别 http://blog.csdn.net/mao_xiao_feng/article/details/53444333 tensorflow实现的各种算法 ...