数据挖掘导论课后习题答案-第四章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第四章(a)Gini = 1 - ( 0.5 )2 - ( 0.5 )2 = 0.5(b)每个结点的 Gini = 0,因此总的Gini = 0.(c)男:Gini = 1 - ( 0.6 )2..._数据挖掘导论第四章 课后答案
分类: 其他 发布时间: 08-11 23:14 阅读次数: 0

数据挖掘导论课后习题答案-第五章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第四章(a)不互斥(b)是穷举的(c)需要排序,测试集很可能不仅由行车里程属性决定,并且会命中多条规则。(d)不需要,每条测试记录都能至少命中一条规则。(a)FOIL = 300 × [ log2 ..._数据挖掘导论完整版课后答案
分类: 其他 发布时间: 08-11 23:13 阅读次数: 0

数据挖掘导论课后习题答案-第六章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第六章..._数据挖掘导论第六章课后答案
分类: 其他 发布时间: 08-11 23:13 阅读次数: 0

数据挖掘导论课后习题答案-第七章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第七章(a)(b) 5(c)候选项集:10+28+3=41频繁项集:8+10+0=18(d)候选项集:5+10+0=15频繁项集:5+3+0=8(e)d中产生较少的项集(a)D1:..._数据挖掘导论第七章课后答案
分类: 其他 发布时间: 08-11 23:13 阅读次数: 0

数据挖掘导论课后习题答案-第八章(上)

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第八章..._数据挖掘导论第八章答案
分类: 其他 发布时间: 08-11 23:13 阅读次数: 0

数据挖掘导论课后习题答案-第八章(下)

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第八章(下)(a)会有问题。比如有1000个点分为两个簇,一个簇900个点,另一个簇100个点,抽5%的样本,那么第一个簇抽取45个点,另一个簇抽5个点,那么这五个点相比较于50个点很可能被当作噪声。(b)有问..._数据挖掘导论第八章课后答案
分类: 其他 发布时间: 08-11 23:12 阅读次数: 0

计算机图形学中DDA算法只画出一个点的解决办法

在上机实践DDA算法中,我发现按照书上示例的程序来运行,图形窗口中只画出了一个点,在debug过程中学到了一个新的知识点,于是有了这篇blog,顺便分享一下像我们这种新手debug的心路历程。让我们先看一下最开始的程序吧!(编程环境为TC2.0,因为要用到graphics库,有条件的可以用OpenCL实现)PS:前两行是在图形程序中初始化图形环境,原因是虚拟了DOS环境。(TC2.0这种上古..._vscode画点函数dda
分类: 其他 发布时间: 08-11 23:12 阅读次数: 0

数据挖掘导论课后习题答案第九章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第九章考虑文档数据,如果两个文档是相似的那么它们包含很多相同的词,并且没出现的词在大部分情况下都是无意义的。当一个文档中的词频繁出现,那么这个词在相似性度量上会占比较大的比重。举例来说,如果一个词有多个意思,那么可..._数据挖掘第九章答案
分类: 其他 发布时间: 08-11 23:12 阅读次数: 0

数据挖掘导论课后习题答案-第十章

最近在读《Introduction to Data Mining 》这本书,发现课后答案只有英文版,于是打算结合自己的理解将答案翻译一下,其中难免有错误,欢迎大家指正和讨论。侵删。第十章..._数据挖掘导论 范明 习题答案
分类: 其他 发布时间: 08-11 23:12 阅读次数: 0

Learning Data Mining with Python - Chapter1

所有代码以及数据包均来自《Learing Data Mining with Python (Robert Layton 著)》。使用环境为Jupyter Notebook。Chapter 1第一个例子是亲和性分析。数据挖掘中有个常见的应用场景,就是顾客在购买一件商品时,可能会愿意同时购买另一件商品,当收集到足够的数据后,就可以进行亲和性分析。商家可以利用这样的规则提高销售额,比如有名的例子“...
分类: 其他 发布时间: 08-11 23:11 阅读次数: 0

Learning Data Mining with Python - Chapter2

所有代码以及数据包均来自《Learing Data Mining with Python (Robert Layton 著)》。使用环境为Jupyter Notebook。Chapter 22.1 scikit-learn估计器为了帮助用户实现大量分类算法,scikit-learn把相关功能封装成所谓的估计器,它包括 fit() 和 predict() 两个函数,也就是训练步和测试步。下面..._learning data mining with python
分类: 其他 发布时间: 08-11 23:11 阅读次数: 0

Pytorch中的Variable和variable.backward()

1.VariablePytorch在autograd模块中实现了计算图的相关功能,autograd中的核心数据结构是Variable。Variable封装了tensor,并记录对tensor的操作记录用来构建计算图。autograd.Variable主要包含三个属性:1.data :保存variable所包含的tensor2.grad :保存data对应的梯度,grad也是variabl...
分类: 其他 发布时间: 08-11 23:11 阅读次数: 0

LeetCode两数之和(Python)——Hash表(字典)

题目:解题思路:除开暴力解法,我的第一反应就是利用字典的(key:value)键值对来做,key储存num,value储存num对应的下标,在网页上提交的程序如下:执行结果为:然后看了一下讨论区和大神们的解决方案,基本都是利用Hash表去做,然而经查阅,Python建立字典时其实应该就是调用了内部的散列函数,所以我误打误撞还是利用到了Hash表。而且可以一边建立Hash表一边判断,不需要两次循环,因此改进如下:执行结果为:...
分类: 其他 发布时间: 08-11 23:11 阅读次数: 0

LeetCode两数相加(Python)

题目:解题思路:因为题目定义好了单向链表(如下图),可以看出只能以头节点到尾节点的固定顺序访问,加数以倒序存储,所以感觉直接相加就可以,类似加法中的列竖式相加的做法。在网页提交的代码如图所示:感觉写的很直,不需要注释也能看懂,要说的两点就是:第一,l3_list想的是先得到结果的列表形式再去转换成单链表,第二就是要注意一种比较特殊的情况,[1] + [9, 9] = [0, 0, 1]。执行结果为:然后看了一下评论区和大神们的解决方案,思路差不多,于是把自己的代码浓缩了一下:写法上其
分类: 其他 发布时间: 08-11 23:10 阅读次数: 0

LeetCode无重复字符的最大子串(Python)——滑动窗口

题目解题思路维护两个类似指针的概念i1、i2,然后利用滑动窗口的思想去做:执行结果为:嗯,非常拉闸。看了一下大神们的解决方案,发现当字符重复时,不要一步一步往后滑,可以直接滑动到重复的那个字符后一位,有点KMP算法的思想在里面,利用哈希表(字典)来实现这一想法,可以减少运行时间,于是修改了一下代码:执行结果为:啧,提升不够满意。然后看了一个时间排名90%+的代码:试了一下:感觉思路上和我一开始是一致的,只是大神更巧妙,直接用字符串类型就做了,但我感觉如果是特别长的字符串,应该还
分类: 其他 发布时间: 08-11 23:10 阅读次数: 0

LeetCode整数反转(Python)

题目解题思路有时候拿Python刷题确实没意思…直接转字符串类型翻转即可,唯一要注意的就是判断是否溢出:执行结果为:属实没意思嗷。所以我去评论区看了C/C++的题解,和我想的一样,基本都是通过这样两行代码的迭代实现,剩下的就是判断是否溢出:但是判断是否溢出,官方是这么判断的(这里的pop即x,rev即y):挺有意思的,而我发现了一位大神更trick的判断方法:一开始没反应过来,后来:题目说给出32位有符号整数,所以大小也是被限制了的,当y=214748364时,本来是po
分类: 其他 发布时间: 08-11 23:10 阅读次数: 0

LeetCode罗马数字转整数(Python)

题目第一想法就是直接创建字典来做,把所有情况穷举出来,代码如下:执行结果为:但其实这样有点取巧,因为可能的几种情况不多所以才穷举,官方给出的思路就是判断当前这个字符与下一个字符的大小关系,看这两例子应该好理解:在示例4中,没有特殊规则的情况,所以是一个降序排列,在示例5中,当前字符为C时,下一个字符是M,这时候不符合降序了,就要利用到特殊规则。按这样的思路,代码如下:执行结果为:和预料的差不多,少了一点空间,时间上差不多。...
分类: 其他 发布时间: 08-11 23:09 阅读次数: 0

LeetCode有效的括号(Python)——栈

题目解题思路直接使用栈的思路去做就行,模拟后进先出,碰到左括号压入栈,碰到右括号弹出最上面的元素并比较是否匹配:执行结果为:
分类: 其他 发布时间: 08-11 23:09 阅读次数: 0

LeetCode合并两个有序链表(Python)——递归

题目解题思路第一想法就是逐个比较然后建立新单向链表即可:执行结果为:
分类: 其他 发布时间: 08-11 23:09 阅读次数: 0

LeetCode删除排序数组中的重复项(Python)——双指针

题目解题思路因为是排序数组,直接双指针一个一个比就行,代码如下:执行结果为:然后看了大神们的解决方案,学习到了新知识:在删除列表元素的时候时间复杂度并不一定为O(1),pop()默认弹出最后一个元素,这个时候时间复杂度为O(1),但当你删除第一个元素,那么其他所有元素都要移动一个索引位置,所以删除列表这一步,nums.pop(k)与del sums[k]操作的时间复杂度为O(n-k),所以上述写法会导致时间复杂度达到O(n2)。重新审题,发现题目中有这么一句话:所以可以不进行删除元素的操
分类: 其他 发布时间: 08-11 23:08 阅读次数: 0