- 博客(107)
- 收藏
- 关注
原创 attention 理解 根据pytorch教程seq2seq源码
https://blog.youkuaiyun.com/wuzqchom/article/details/75792501http://baijiahao.baidu.com/s?id=1587926245504773589&wfr=spider&for=pcpytorch源码这是李宏毅老师的ppt。右侧对应pytorch seq2seq源码。我们的问题是,左边的数学符号,右侧...
2018-08-20 10:20:54
5627
1
原创 pytorch lstm crf 代码理解
好久没有写博客了,这一次就将最近看的pytorch 教程中的lstm+crf的一些心得与困惑记录下来。原文 PyTorch Tutorials 参考了很多其他大神的博客,https://blog.youkuaiyun.com/cuihuijun1hao/article/details/79405740https://www.jianshu.com/p/97cb3b6db573至于原理,非常建议...
2018-08-17 10:30:17
16594
26
原创 python html表格 转化
在做html解析时,遇到了需要将html的<table> 标签转成需要的形式。这里是转成 (' 增持方式 ', ' 竞价交易 ') 这种形式。接下来的代码是可以处理可变长的table,思路很简单,可以根据自己的需求封装成函数,或者修改。from bs4 import BeautifulSouphtml = """目标html的只包含表格的...
2018-06-23 15:24:48
4387
原创 机器学习基石(林轩田)第十六章 笔记与感悟总结
16.1 Three Learning Principles - Occam’ Razor简单的hypothesis,简单的model简单的model。当输入乱乱的资料时,Ein无法很小。因此,如果用简单的模型,能够分开资料,那么就说明其中会有某种规律。而不能分开,则说明没有啥规律。因为复杂的模型能够拟合所有的数据,所以你根本不知道到底是有规律的样本?还是随机抛硬币产生的样本(没有内在规律)。16...
2018-05-31 20:12:31
489
原创 机器学习基石(林轩田)第十五章 笔记与感悟总结
15.1 Validation - Model Selection Problem我们为了解决过拟合的问题,我们提出了regularization。我们不只关注Ein,而是在Ein上面加上一个regularizer,一起做minimize。这样可以有效的减小model complexity我们面临着很多的选择,之间的组合会产生组合爆炸的。输入:各种g和演算法。输出:最好的那个模型,能让Eout变小...
2018-05-29 10:12:42
448
原创 机器学习基石(林轩田)第十四章 笔记与感悟总结
14.1 Regularization - Regularized Hypothesis Set我们可以看出,右侧的数据拟合的并不好,因为我们用来拟合的方程维数太高!!!我们想让右侧的overfit 变成左侧的看起来不错的 ‘regularized fit’。我们想从高次的H慢慢回退到低次的Hypothesis、命名的历史是:当有限的数据点可以用多个方程来进行拟合时,我们需要选择最合适的那个。弹幕...
2018-05-28 18:25:52
647
原创 机器学习基石(林轩田)第十三章 笔记与感悟总结
13.1 Hazard of Overfitting - What is Overfitting我们可以看出,虽然Ein为0,貌似算法的表现很好,但是实际上可以看出,我们的拟合曲线和target一点点也不像!!!!这意味着,我们有很高的Eout。不好的“举一反三”(generation)。我们从紫色曲线的最低点开始往右移,我们可以看出来,模型的复杂度在增加,而输入样本的偏差却在不断减小。我们把fi...
2018-05-28 11:24:48
291
原创 机器学习基石(林轩田)第十二章 笔记与感悟总结
12.1 Nonlinear Transformation - Quadratic Hypotheses我们用非线性的方法来做分类。但是也有其他的情况,无法利用线性的方法来进行分割。我们不用线的方式,而是用其他的方法,将数据进行分割。我们想通过使用圆圈的方式来进行分类。这样我们要重新改写之前所有的分类结果。重新编写 圆-PLA,圆-Regression 这几种方法。我们给w上面加了个~,表示 ...
2018-05-28 09:45:19
525
原创 机器学习基石(林轩田)第十一章 笔记与感悟总结
11.1 Linear Models for Classification - Binary Classificationstochastic 随机的linear classification是一个NP hard问题,因此如何找到一种方法,能够使相对容易的linear regression 和 logistics regression 来帮助求解linear classification,就比较有...
2018-05-27 20:28:53
493
原创 机器学习基石(林轩田)第十章 笔记与感悟总结
10.1 Logistics Regression - Logistics Regression Problem判断有还是没有心脏病,即二元分类问题。左上角说明有噪音。我们比较在意的是错误率的多少。我们不是很强硬的就0或者1,而是变成了一个值,值的大小即概率值。我们得不到理想中的数据,而是实际上有噪音的数据,而且数据不是概率值,而是确定的0,1x0是bias,其他都是数据,然后计算一个加权和。我们...
2018-05-26 16:00:05
339
原创 机器学习基石(林轩田)第九章 笔记与感悟总结
9.1 Linear Regression - Linear Regression Problem我们花力气在二元分裂的VC Bound是可以用在各种情形,也可以用在线性回归。输出不是二元了,而是一个实数。输出空间就是一个实数。我们怎么做到机器学习呢?相比感知器,我们最后的输出没有了sign左图为二元空间,右图为三元空间。想找个小的residuals传统上最常用的错误衡量使用 squared e...
2018-05-26 12:14:35
543
原创 机器学习基石(林轩田)第八章 笔记与感悟总结
8.1 Noise and Error - Noise and Probabilistic Target任务:有噪音的情况下如何衡量我们错误上一节:如果我们的假设空间有有限的dvc ,很大的资料 又能找到g使Ein很小的话,那么我们大概就能学到东西。如果有noise怎么办呢?比如标签标错了,同时既是好的又是坏的,输入信息就有错误等等。此时的vc bound 还有用嘛?我们进行vc bound 推导...
2018-05-26 10:01:04
495
原创 机器学习基石(林轩田)第七章 笔记与感悟总结
7.1 The VC Dimension - Definition of VC Dimension我们上个周证明了Ein 约等于 Eout ,即测试的表现和训练的表现相似。在成长函数在某个地方有break point 和 N足够大的时候。意义在于之后介绍的VC维度。我们以后就不用B(N,k)这种麻烦的写法了,只需要使用N^(k-1)这种简单的写法。因为N^(k-1)是最大的上限。vc bound,...
2018-05-25 16:20:13
683
原创 机器学习基石(林轩田)第六章 笔记与感悟总结
6.1 Theory of Generalization - Restriction of Break Point机器学习领域机器是如何做到举一反三的本领的? dichotomies 是二分类 ,即label只有(o,x)这种。例如positive rays,意思是一侧全是正,另一侧全是负,而出现ox 这种情景时,则两个点的mh(2)=3,实现了小于2^2的目的。突破口是两个点,则k=2.例如...
2018-05-24 21:10:45
948
原创 机器学习基石(林轩田)第五章 笔记与感悟总结
5.1Training versus Testing - Recap and Preview训练和测试过程到底有什么不一样?机器学习是否可行,老师说的是: 1)资料从一个distribution中学习,如抽球问题 2)我们有 有限的 hypothesis 的那么无限大的hypothesis的,那怎么办?如果我们选择了一个 g 使Ei...
2018-05-24 19:37:55
678
原创 机器学习基石(林轩田)第四章 笔记与感悟总结
4.1 Feasibility of Learning - Learning is Impossible 老师提出了一个难以学习的例子。我们无法知道未知的东西,但是我们想要推断未知的东西。4.2 Feasibility of Learning - Probability to the Rescue有什么工具对未知的 f 做一些推论???例如对瓶子里的弹珠颜色比例进行推论。思路是进行抽样。引入了大数...
2018-05-23 20:43:14
428
原创 机器学习基石(林轩田)第三章 笔记与感悟总结
3.1Learnig with Different Output Space本节介绍了很多的机器学习问题。是非问题可以用PLA。其实就是二分类的问题(binary classification)。是非题应用十分广泛。从而引申到多类分类的问题。Multiclass Classification二分类其实就是多分类时k=2。回归问题典型,输出是一个实数。自然语言处理:如果是一个单词,则是多分类问题。但...
2018-05-23 14:40:15
504
原创 机器学习基石(林轩田)第二章 笔记与感悟总结
2.1 Perceptron Hypothesis set问题:什么样的机器学习能解决是非问题?问题:我们的H 到底长什么样子?通过w来进行加权,然后看是否通过门槛值。红字h被称为'感知器'。perceptron打个比方:就是数学题,权值是每个题的分数。这样60分就是阈值。我们想要将threshold也当成一个特殊的W!这样用两个向量就能很简单的表示出来了。注意w的第0个数字是(-threshol...
2018-05-23 12:28:05
350
原创 机器学习基石(林轩田)第一章 笔记与感悟总结
第一章 The Learning Problem 1.1 Course Indroduction 老师观点:从基础学起。不要成为机器学习的奴隶。1.2 What is Machine Learning 学习是从观察出发,视听嗅觉。观察——>学习——>技能电脑的观察是资料,然后进行处理变成技能。什么是技巧?技巧是improve some performance measure(e.g...
2018-05-22 20:34:36
2952
原创 大学四年历经四个专业 他是如何做到的?
本来写来用来评选校级的优秀毕业生的,可惜最后落选,但既然写了文字,与其删掉不见天日,不如放到博客里,作为自己的回忆。-------------------------------------------------- -------------------------------------------------- --------------------------大学四年历经四个专业...
2018-05-05 19:55:38
516
原创 Leetcode 404. 左叶子之和
这道题看到了解法又让我感受到了编程之美。教会了我虽然框架能让人很快写出代码,但是真正优秀的代码总是能够不被框架约束!参考了向北的稻草 的博客class Solution: def sumOfLeftLeaves(self, root): """ :type root: TreeNode :rtype: int """ ...
2018-04-03 16:09:12
725
原创 leetcode 205. 同构字符串
class Solution: def isIsomorphic(self, s, t): """ :type s: str :type t: str :rtype: boo """ if len(s) != len(t): return False d...
2018-04-01 20:45:28
356
原创 Leetcode 606. 根据二叉树创建字符串
一定要理清逻辑,我在这题上修修补补,打补丁打了半天,最后才发现,如果一开始有清晰的逻辑的话,那么代码会非常简单的。class Solution: def tree2str(self,t): if t is None: return "" s=str(t.val) a=self.tree2str(t.left) ...
2018-04-01 12:00:40
622
原创 Leetcode 38. 数数并说
class Solution: def countAndSay(self, n): """ :type n: int :rtype: str """ S="1" for i in range(1,n): #控制外层的迭代次数 S=self.myfun(S) ...
2018-03-31 13:55:48
965
原创 python leetcode 258. 各位相加
人生苦短,我用python我感觉我这种做法太邪恶了。。。class Solution: def addDigits(self, num): """ :type num: int :rtype: int """ num=str(num)#变成字符串来进行处理 count=0 whi...
2018-03-30 19:34:26
368
原创 leetcode 171. Excel表列序号
#思路就是26进制转10进制,这样一说是不是感觉很简单了呢?class Solution(object): def titleToNumber(self, s): """ :type s: str :rtype: int """ base=ord("A")-1 count=0 f...
2018-03-30 17:13:03
275
原创 leetcode 575. 分糖果
class Solution(object): def distributeCandies(self, candies): """ :type candies: List[int] :rtype: int """ myset=set()#表示多少种类 for i in candies: ...
2018-03-30 16:58:11
618
原创 leetcode 669. 修剪二叉搜索树
class Solution(object): def trimBST(self, root, L, R): """ :type root: TreeNode :type L: int :type R: int :rtype: TreeNode """ if root is ...
2018-03-30 09:36:43
674
原创 leetcode 806. 写字符串需要的行数
class Solution(object): def numberOfLines(self, widths, S): """ :type widths: List[int] :type S: str :rtype: List[int] """ base=ord('a') #字母a的作...
2018-03-29 19:34:36
630
原创 leetcode 657. 判断路线成圈
我用了字典的方式来做这题,挺好玩的题目class Solution: def judgeCircle(self, moves): """ :type moves: str :rtype: bool """ dict={"U":(0,1), "D":(0,-1), ...
2018-03-27 22:20:28
360
原创 leetcode 766. 托普利茨矩阵
class Solution: def isToeplitzMatrix(self, matrix): """ :type matrix: List[List[int]] :rtype: bool """ m=len(matrix) n=len(matrix[0]) for i ...
2018-03-27 20:22:54
641
原创 Python 知乎知识之王答题辅助程序不完全版
使用了以下软件:1、雷电安卓模拟器+知乎最新版apk 用来截图2、tesseract 用来将图片转换成了文字3、selenium操作chrome浏览器搜索答案注:这是不实用的版本,因为知乎只给10s的反应时间,而程序大概要跑7s,并且百度搜索答案很不准确。但这个思路使用与其他答题软件,只要时间给的比较充裕。改进策略:1、将识别后的文字分词,然后爬取所有页面进行TF-IDF分析,找出权重最高的一...
2018-02-13 21:50:16
1568
原创 python 黑龙江招生考试信息港 暴力查询 某人成绩
需要知道的信息:1、某人的真实姓名 2、他的准考证号除后三位外的所有位(前12位) 3、测试报考哈工大的学生通过这里详细解释一下,一般而言,考一个科目的所有人前12位都是相同的,最后三位因人而异。例如考计算机854的所有成员为102138040001***,因此可以穷举102138040001000-102138040002000之间的1000位数字cookies要改成自己的(红字提示位
2018-02-04 16:21:35
1016
原创 python 自动提醒黑龙江招生信息网考研成绩 小程序
本人报考哈工大计算机专业,因为成绩公示未公布明确的查询时间,心慌之下写了小的查询程序。注:1. 在弹窗提示的手段里,可以自己填写,简单的如弹出记事本,复杂的如直接弹出web(需要提前安装selenium库)2. header里的cookies要改成自己的,我这里隐藏为****import requestsimport seleniumimport reimport o
2018-02-02 17:55:16
680
原创 python WiFi暴力破解小程序
思路: 1、扫描前十个信号最好的wifi,得到ssid2、然后用一个密码,遍历所有ssid,尝试能否连接上3、密码正确连接上后,会报错退出程序,否则会一直运行下去4、本脚本没有优化,运行时可能有bug5、时间大概是2~3秒扫描一个ssid,根据计算机的不同可以修改,但是时间间隔太短会出错,比如正确的密码却因时间太短认为是错误的。本博客是学习
2018-01-25 10:13:01
23824
13
原创 LintCode 166-倒数第k个节点
《王道数据结构》给出的快慢指针,真是一个不错的好方法啊! static public ListNode nthToLast(ListNode head, int n) { // write your code here ListNode p=head; while(p!=null&&n!=0){ p=p.next;
2017-10-29 20:15:12
392
原创 LintCode 480-二叉树的所有路径
后序遍历非递归,当遍历到叶子结点时,将栈中所有的内容都按照格式要求生成列表返回。 static List<String> ret=new ArrayList<>();//全局变量 static public List<String> binaryTreePaths(TreeNode root) { // write your code here if(root==null
2017-10-29 20:05:19
364
原创 LintCode 95-验证二叉查找树
static ArrayList<Integer> list=new ArrayList<>();//全局变量 static public boolean isValidBST(TreeNode root) { // write your code here getlist(root);//获得序列,保存在list中 return isascen
2017-10-29 19:43:37
414
原创 lintCode 搜索插入位置
public int searchInsert(int[] A, int target) { // write your code here for(int i=0;i<A.length;i++){ if(A[i]>=target) return i; } return A.length;}}
2017-10-28 20:12:27
315
原创 LintCode 二叉树的最大节点
static int i; static TreeNode p; static public TreeNode maxNode(TreeNode root) { // write your code here if(root==null)return null; p=root; i=root.val; fin
2017-10-28 19:25:02
336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人