marchboy / marchboy.github.io

0 stars 0 forks source link

一些小笔记 | ComputerScience #3

Open marchboy opened 4 years ago

marchboy commented 4 years ago

https://marchboy.github.io/2020/09/11/ali-interview/#more

谈谈python2和python3的区别字符编码py3中默认字符编码是UTF-8/unicode; str 对象和 bytes 对象可以使用 .encode() (str -> bytes) 或 .decode() (bytes -> str)方法相互转化。 py2中默认字符编码是 ASCII,如果文件中出现了中文,需要在顶部加入coding声明# coding=utf-8

marchboy commented 4 years ago

需要补充下GDBT /XGBoost之间的区别。

特别地,关于XGBoost并行的原理,参考:

https://zhuanlan.zhihu.com/p/79543485

https://www.codenong.com/cs106252303/

marchboy commented 3 years ago

问题:如果你在开发一个音乐分类的应用,需要对k种类型的音乐进行识别,那么是选择使用 softmax 分类器呢,还是使用 logistic 回归算法建立 k 个独立的二元分类器呢?

分析:这一选择取决于你的类别之间是否互斥,例如,如果你有四个类别的音乐,分别为:古典音乐、乡村音乐、摇滚乐和爵士乐,那么你可以假设每个训练样本只会被打上一个标签(即:一首歌只能属于这四种音乐类型的其中一种),此时你应该使用类别数 k = 4 的softmax回归。(如果在你的数据集中,有的歌曲不属于以上四类的其中任何一类,那么你可以添加一个“其他类”,并将类别数 k 设为5。)

一、如果你的四个类别如下:人声音乐、舞曲、影视原声、流行歌曲,那么这些类别之间并不是互斥的。例如:一首歌曲可以来源于影视原声,同时也包含人声 。这种情况下,使用4个二分类的 logistic 回归分类器更为合适。这样,对于每个新的音乐作品 ,我们的算法可以分别判断它是否属于各个类别。

二、现在我们来看一个计算视觉领域的例子,你的任务是将图像分到三个不同类别中。(i) 假设这三个类别分别是:室内场景、户外城区场景、户外荒野场景。你会使用sofmax回归还是 3个logistic 回归分类器呢? (ii) 现在假设这三个类别分别是室内场景、黑白图片、包含人物的图片,你又会选择 softmax 回归还是多个 logistic 回归分类器呢?

总结:在第一个例子中,三个类别是互斥的,因此更适于选择softmax回归分类器 。而在第二个例子中,建立三个独立的 logistic回归分类器更加合适。