"竹杖芒鞋轻胜马, 一蓑烟雨任平生"

Do not deify machine learning,it is not that cool

机器学习实践:利用优化算法,实现StumbleUpon系统原型

30 Sep 2013 ###背景&相关知识点 优化算法是针对NP Hard问题暴力搜索解法的优化,算是一种启发式搜索 。比起暴力搜索,通过优化算法来进行启发搜索的好处是,效率更高,更快的逼近最优解;缺点则是最终结果很可能并不是全局最优解,它只能保证向最优解靠拢。这在现实的很多系统中是可以接受的。毕竟有一个可行的较优解比没有解要好很多。
之所以想到网址推荐,还是受到《集体智慧编程》相关章节里延伸应用的启发。StumbleUpon鼓励用户对网站进行人工标注,然后根据标注的tag对其他用户进行推荐,注意,这里显然也可以利用推荐系统算法来推荐网址。但是利用搜索算法同样可以实现快速为指定用户寻找指定大小的网址候选集合。
优化算法的核心是“估价函数”,又叫“惩罚函数”,这个函数主要是算法对一个可行解进行代价判定时使用。如果通过估价函数判定后,解空间A花费的代价要小于解空间B,那么A胜出,然后进行下一轮的迭代, 注意,并非每一轮迭代更优的解都会取代旧的解,这主要是为了避免陷入局部最优解的陷阱中。是否更新当前解的概率和具体算法相关。不同优化算法的区别就在迭代过程中凸显出来。这里择其1,2说一下


###项目地址 https://github.com/zuojie/MichineLearningCases/tree/master/Optimization

comments powered by Disqus