Lv.1
在 谁能给我讲讲朴素叶贝斯分类器是什么鬼! 中回复
如果概念已经get了的话可以试试一下叫sklearn的python包,可以通过
pip install -U scikit-learn
来安装,里面包含有朴素贝叶斯的实现,下面是例子:
http://scikit-learn.org/stable/modules/naive_bayes.html
如果还想看具体的实现,可以看:
https:/喵scikit-learn/scikit-learn/blob/a24c8b46/sklearn/naive_bayes.py#L160
还有什么问题我们也可以继续讨论
2018-01-01T12:39:47 点赞:0
在 谁能给我讲讲朴素叶贝斯分类器是什么鬼! 中回复
下面是几个公开的垃圾邮件数据库:
http://c喵ining.org/index.php/spam-assassin-datasets.html
http://c喵ining.org/index.php/ling-spam-datasets.html
https://plg.uwaterloo.ca/~gvcormac/treccorpus/
http://nlp.cs.aueb.gr/software_and_datasets/Enron-Spam/index.html
如果想自己找的话,可以试试在搜索引擎上输入spam classification dataset这样的关键词来找。
2018-01-01T12:57:59 点赞:0
在 谁能给我讲讲朴素叶贝斯分类器是什么鬼! 中回复
第一道式子里面,P(S | W)指包含了sex这个词的邮件是垃圾邮件的概率,P(W|S)和P(S)的含义前文已经解释了,把他们乘起来得到的是一封邮件既包含了sex这个词同时又是垃圾邮件的概率,P(W)是一封邮件包含sex这个词的概率
2018-01-13T13:48:15 点赞:0
在 谁能给我讲讲朴素叶贝斯分类器是什么鬼! 中回复
要求P(S|W),就是已知一封邮件包含sex单词,那么该邮件是垃圾邮件的概率,我就要把所有包含sex单词的邮件全部拿出来,再计算其中垃圾邮件的比例,像下图展示的那样
2018-01-13T13:55:30 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
首先,关于AI里面分类AI的基本使用,技术喵已经有非常详细的介绍了。对于相应模块的功能和简单的实现,大家先看一下相关的介绍:
https://www.codemao.cn/wiki/forum/8912
2018-01-30T14:40:49 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
没事,不会直播的。我应该会一个一个点写好之后发出来,这个贴是为了方便和大家交流。最后我还会结合大家的讨论整理一个脱水的版本再发出来。
2018-01-30T14:45:48 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【关于学习的思路】
让AI进行学习,其中最核心的原理就是利用数据之间的相关性。关于相关性,其中的例子就是一个人的性别和购物的偏好是有相关性的,女生会更喜欢衣服、鞋子这些,男生会更喜欢机器人这些。要注意的一点是相关性不是绝对成立的规律,而是基于对大量的数据进行统计的结果,例如的确存在不少的程序媛或者女极客更喜欢极客一点的东西,但社会上大部分的小姐姐应该还是更粉衣服和鞋子吧。(欢迎大家提供一些举例的素材,90后的老腊肉表示和大家有代沟真的很难举例子啊)
2018-01-30T14:59:17 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
接着上面的讨论,数据之间相关性的产生,通常背后都会有着相应的机理(当然也存在着在数据不多的情况下,纯粹因为偶然而产生的相关性)。有的时候,去探究背后的机理对我们来说有很重要的意义,因为这会告诉我们这个世界究竟是怎么运行的;有的时候,仅仅是相关性本身就已经可以为我们所用了。
有一个特别经典的例子(为了说明这一点,故事略有改动):
1)有一段时间,喵沃尔玛超市发现啤酒和尿片这两样商品具有很强的相关性:它们经常会出现在同一个购物篮子里面。这时候为了利用这个相关性,超市设计了一系列的措施:把这两样商品放在比较靠近的位置,推出同时包括这两样商品的优惠套餐。结果果然销售额得到了大幅提升;
2)超市的相关人员还希望之后啤酒和尿布经常会出现在同一个购物篮子里面的原因,经过对顾客的调查之后他们发现,原来是因为当时在婴儿的家庭里面,都是妈妈在家照看孩子,爸爸下班后来买尿片这些相关用品,爸爸在买尿片的同时想着自己实在是太辛苦了就顺便买啤酒来犒劳自己(真是天下直男一个样)。
像通过我们的分类AI能做到的就是上面1)这一步:让计算机发现数据中的相关性的规律并利用相关性完成相应的预测任务。至于对相关性背后的原理的分析,则是由我们各位训练师根据实际情况决定是否需要进一步分析,如果要分析,那相关性背后的机理到底是什么。
2018-01-30T15:19:23 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【关于分类喵进行学习的过程】
关于这一点,上面技术喵的介绍帖里面应该有比较详细的介绍,大家如果有什么问题可以随时回帖提问,我会尽快回复。
2018-01-30T15:27:35 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【关于分类喵的训练技巧】
好,在大家已经基本熟悉了分类喵的各个模块,也能根据教程搭出来一个最简单的分类喵之后。接下来我要介绍的是关于分类喵的几项训练的技巧。在介绍之前先讲一下故事:
在2017年底人工智能最顶级会议之一的NIPS上,一位获奖者直接向目前在学界和业界都非常火的深度学习开炮,怒斥其为现代的炼金术,有兴趣的可以阅读下面的介绍:
NIPS风波|获奖者登台开炮:ML是炼金术,大神LeCun强硬回怼(https://zhuanlan.zhihu.com/p/31785823)
事实上根据喵常的学习和经验,对于深度学习的问题我们要一分为二地看待,深度网络的原理和设计应该是具有科学性的,其科学性在结构比较简单的网络上已经得到了严谨的验证,而且在一些实际任务,深度网络的确能取得非常优越的性能效果;但因为在目前我们使用的复杂网络上还缺乏理论的推导和科学的分析方法,所以对于复杂网络的设计和训练还是非常依赖一些经验性的技巧。正是由于技术上的两面性,所以如果你和一位相关的从业人员交流,他的态度其实是由你的提问方式决定的:
场景一
A:你用的深度学习,就是炼金,就是玄学,too young!too trivial!sometimes naive!!!
B:哼!深度学习也是有科学性的好嘛。最重要的是,你用的方法是有理论保证,你在实际任务上能比得过我的深度学习方法吗,等什么时候你的方法能超过深度学习的方法了,再来和我说这些。
场景二
A:哇。你这个深度学习的方法好强呀,一下子就把这个任务解决得很好呢。
B:哪有哪有,都是运气好。(心里暗想:太险了,昨天晚上熬了一个通宵,总算调了一组能用的参数。)
(以上故事纯属虚构,如有雷同,纯属事实。)
所以说,对于目前人工智能和深度学习相关内容的学习,我们一定要兼有科学和实践的态度和思维。下面我会一一具体介绍一些实用的技巧。
2018-01-30T15:48:20 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【分类喵的训练技巧一——网络结构的基础设计思路】
好了前面碎碎念把故事讲完了之后现在开始讲干货了,在我们设计具体的分类喵的时候,首先应该考虑的是我们具体的任务,这个版本的分类喵用的是最基本的神经网络的架构,特点就是泛用性强:各种数据类型都能处理,但不是基于某种特定任务设计的,所以在某些特定任务上性能会不如经过特别设计的网络。像对于图片分类的任务,分类喵肯定也是可以做的(只要你愿意在设置训练数据特征的时候手动添加几百几千维的特征
),不过一般来说效果会比上不专门为处理图像设计的卷积神经网络(https://en.wikipedia.org/wiki/Convolutional_neural_network)。下面我的介绍主要会集中于特征数不会太高的数据。
如果不考虑图像、声音或者文本处理这些格式比较特殊的任务的话,我们对分类喵的结构能够调整的部分就是神经网络的层数和各层单元的个数了。一般来说,神经网络的层数越深,每层的单元数越多,神经网络就能学习越复杂的数据分布。下面是一个例子:
对于只有一层三个单元的神经网络(大家留意下面图示里面神经网络隐含层的参数设置),不管学习多久都是没办法学习到圆形的数据分布的
这时候如果把单层的单元数增多,神经网络就能学习到圆形的数据分布了:
或者增加额外的层数也能达到相应的效果:
实际设计的过程中通常是两种方法并用,不过有研究成果表明:在每层单元数较多的情况下,增加层数比增加每层的单元数能取得更大的表达能力的提升。关于这一点大家先有个直观的认识,毕竟分类喵目前最多也只有两层。
(分类喵内心OS:你是在针对我大分类喵!!!)
另外在实际设计的时候也不是说层数越多越好,每层单元个数越多越好。因为层数和每层单元数的增加会使得模型更为复杂,需要更大的存储和计算资源。
(当然貌似现在对层数和每层单元数都有限制,所以现在的分类喵都很弱的,也就不用担心一发模型就开爆猫厂服务器内存的情况出现了)
(分类喵内心OS2:好了,你够了,不要再说了。)
除了计算资源方面的考虑,还有一个原因是神经网络是通过后向传播算法来训练的,(盗一下技术喵的图),顾名思义训练的信号就是从输出层往前传播,如果神经网络太深的化,训练的信号传到一半就传不下去了,整个网络的训练就会不充分。
当然啦,两层的分类喵,就不用担心……
(分类喵内心OS3:……!!!)
2018-01-30T17:00:42 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
嗯嗯,我这边也会有一些我的思考和经验哈,之后还是结合一些实际的数据案例。各位训练师有兴趣的话可以多多交流哈。
2018-01-30T17:07:29 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
嗯嗯,tensorflow是现在最火的深度学习开发平台,有python基础的训练师可以接触。另外猫厂这边的GameAI是结合游戏的场景设计的,而且分类AI和GameAI整体上都可以和编程猫其他的模块结合开发各种有趣的东西,各位训练师可以都关注学习讨论哈。
2018-01-30T17:14:24 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【不行我要歪一下楼】
To 楼上:好好攒石头,下次up的时候就出货了
另外如果不堪无良喵氪游戏的折磨,可以多多上编程猫,通过猫厂的平台去做游戏喵氪其他的训练师哟~![]()
2018-01-30T17:39:07 点赞:0
在 【AI】关于分类喵的一点小经验和交流 中回复
【更正】
更正一下,现在分类喵的层数是可以添加多于两层的,所以大家可以试一下更深的网络的效果和运行速度。不过貌似每层的单元数会限制在五个及以下。
2018-01-31T14:52:01 点赞:0