LeetCode 解题报告 (684,685,721)- 并查集介绍及应用
本文主要以 LeetCode 上的几道题目: 684. Redundant Connection 、 685. Redundant Connection II 和 721. Accounts Merge 为例讲解并查集(merge–find set)这种数据结构的应用。
本文主要以 LeetCode 上的几道题目: 684. Redundant Connection 、 685. Redundant Connection II 和 721. Accounts Merge 为例讲解并查集(merge–find set)这种数据结构的应用。
这里的 Google 图片爬虫指的是爬取在 Google 上通过关键词搜索得到的图片,由于最近需要一些特定领域的图片,而且现有的数据库满足不了要求,因此就想通过 Google 搜索筛选出这些特定领域的图片,然后下载下来后再进行人工筛选。这里采用了两种方法,区别在于是否需要解析网页端的 JS 代码。该项目的代码已经放到了 Github 上,详细代码参见这里。
文章主要记录了 spark 2.1.0 集群部署注意事项以及如何通过 Jupyter Notebook 访问 spark 集群。
本文的表情识别指的是给出一张图片,检测其中人脸的表情(如果含有人脸的话)。所有可能的表情种类往往事先约定好,粗分可以分为 positive
、negative
、neutral
三种,细分可以分为 neutral
, angry
, surprise
, disgust
, fear
, happy
, sad
7 种或者更多种,这里的类别可根据具体采用的数据集进行调整,从机器学习的角度来说,这实际上就是一个多分类问题。
本文主要讲述如何将深度学习应用在表情识别中,以及在图像分类中深度学习一些常用方法,如采用预训练的模型进行特征的提取,用数据集对预训练的模型进行 Fine-tunning,而这实际上又牵涉到了迁移学习。
本文主要参考了这篇文章,该文章比较清楚地讲述了字符串的编码问题,并且在 python2 和 python3 中如何区分使用两者。
sklearn 是 python 中一个非常著名的机器学习库,但是一般都是在单机上使用而不支持分布式计算,因此往往跟大规模的机器学习扯不上关系。这里通过 sklearn 进行的大规模机器学习指的也不是分布式机器学习,而是指当数据量比内存要大时怎么通过 sklearn 进行机器学习,更准确来说是 out-of-core learning, 这里涉及到的一个核心思想是将数据转化为流式输入,然后通过 SGD 更新模型的参数,当然其中还涉及到一些其他的细节和 trick,下面会详细描述。
本文主要介绍隐马尔可夫模型以及该模型中的三大问题的解决方法。
在机器学习中,常常会遇到样本比例不平衡的问题,如对于一个二分类问题,正负样本的比例是 10:1。这种现象往往是由于本身数据来源决定的,如信用卡的征信问题中往往就是正样本居多。样本比例不平衡往往会带来不少问题,但是实际获取的数据又往往是不平衡的,因此本文主要讨论面对样本不平衡时的解决方法。
LeetCode 上的这两道题 343. Integer Break 和 377. Combination Sum IV 从名字上来看没有什么联系,但是实际上两个题目都是通过动态规划来降低了求解时间复杂度,并且面对这种题目一开始往往难以往动态规划方向去想,特此记录。
这篇文章的内容主要来源于 该知乎 live,主要介绍了利用数据获取了用户后如何运营,从而能够尽可能长时间地留存用户,介绍了这方面的三个具体方法:建立用户转化漏斗、通过多维报表找到问题和建立实验框架。