Blogs

雅思备考指北-v2023

June 9, 2023
ENG, IELTS

雅思备考指北-v2023 # Prologue # 大四下学期出现了一些规划上的危机,而且我这种情况算是特殊中的特殊,可借鉴的例子比较少。在调整好心态以后决定还是先行动起来,把一些达到目标的必须要求准备好,比如IELTS/GRE这种标化成绩。 还好最后三十多天调整了心态,在大学的最后把毕设和雅思一起搞定了。 阅读 # 我在备考前一年一直在有意保持自己的英语水平,所以阅读这块对我来说不是特别大的问题。 当时用的方法就是在少数派英语学习指南中看到的一种辅助精度法,但是根据我的情况进行了一点改进。我通常是找上一周的一些杂志,比如The Economists这样的,专门将其中的最精华部分,也就是每本开始的Leaders部分,大概有个5-6篇文章。然后把这些排好版打印出来,每篇文章一般是读3遍:第一遍主要浏览大意,基本搞懂70%左右的文章内容,并且顺手把一些不认识的单词标出来;第二遍进一步把之前没有搞懂的地方精读完成,把一些写的很好的句子和段落标记出来;第三遍就是更高层次的阅读,尽量用自己的话把每一段的大意写在边上,从头到尾顺下来。最后再从头到尾整理一下文章结构,脑子里根据刚才写的每段大意和理解的意思自动生成这篇文章的行文结构。这样一篇基本上就读透了。然后下一天继续。 非常巧妙的是,这个方法跟我后来对雅思阅读的整体理解非常类似。在做完了大量的雅思阅读训练以后,发现了每篇阅读当中的一些更深层次的套路。一些普通的套路我就不再赘述,可以直接去《阅读真经总纲》里面找。 我总结一般的阅读有三种题型: 细节题 概括题 结构题 细节题就是常见的T/F/NG,还有选择题。这种题100%能在文中找出来,读就完了。主要就看阅读量和速度能不能跟上。 概括题一般是每段的大意选择题,概括题目等。这种目标也比较明确,针对某一个段或者整篇文章的开头结尾中间这种看就可以。 结构题我认为是最难的,还有很多结构题是跟概括题结合在一起的,比如一些转写的填空题(直接把全篇概括让你填空),还有那种在表格里的大意选择题,这是我错误率最高的一种题。这种题需要大量的阅读,以及很好的定位能力,因为很难按照从头到尾的顺序去处理了。我认为的一个最主要方法就是多练,然后就是我上面提到的要对每篇文章有框架思维。经过一遍阅读后要尽量形成这篇文章的整体组织结构,这样就能在出现问你这个内容的同时快速定位,肯定不能精确定位,但也能够定位个大概,在附近2-3段里面选择。这样要比在全篇找容易的多。 不要大量做题。没有必要把剑雅的题都刷完再上考场。你做题的过程本质上是一个训练的过程,真正提升的部分是在你做题后发现错题,并想办法改进的过程。一直盲目做题只能让你巩固当前的分数水平,并且让自己很累,给自己一种努力的错觉。 每次做题尽量刷完一套。尤其是机考,在网站上练习的时候尽量一口气做完,因为一共也才整整一小时,这个时间肯定是能挤出来的。碎片做题很难整体把握阅读的节奏。 放一张当时做题的记录,感觉整体上剑雅的难度跟真题相比还是非常准确的。所以如果自己做的时候出现了问题,一定不要想考试的时候能发挥好,基本上差不多的。赶紧找方法,再练习,找自己的正反馈。 听力 # 听力在最后的考试里面感觉要比练习的时候难,不知道跟我的发挥状态有没有关系。到最后也就只有8,算是整个练习过程中分数比较低的水平了。 我在做听力的时候发现不要专注在题目本身,因为雅思是个很科学的考试,它考你听力主要还是要考你在以后国外的真实场景中能不能听到,能不能听懂,而不是做这几个破题。千万别用老钟那套备考思维往里面带。我感觉可以放70%以上的注意力在听文本,30%以下的注意力在题目上。在真正开始放声音前把题目都看完,标记完。在开始放以后,切换大部分的注意力在听这件事本身上,只需要同时关注当前到哪题了,catch up进度就行。这样即使你立刻没有选出答案,大脑里也会有之前听这段对话的印象,等到这个section录音放完,还有很多时间可以思考正确答案选哪个。同时也能达到听到哪看到哪,不在某一个题上浪费大量时间。 口语 # 所有的备考相关的中文资源or中国老师or中国人讲的视频都不要看了。 考的时候根本没时间想,所以切记一定不要背题!!!!!!考官一眼就能看出来。 口语有四个评分项,其中发音,词汇,语法是三个能短期内提升不少的,流利程度可能得看平时的积累和语感,但影响不大,这三个练好也能提0.5-1分了。 平时可以试着做一下自己的积累,就跟我附上的那个一样,这是我当时积累词和搭配用的表格。看别人说或者剧里面的好词好句都摘下来。目的不是都把他们背下来,目的是为了能在你说的过程中想起来然后插进去这么一两个高级搭配,整体能改善不少。 不要过多看题库。因为视频连线一开始就很容易大脑放空,我之前准备的时候主要是自己把本季的题都过一遍,主要是聊天能力,看自己有没有的可说。然后再想怎么丰富回答的层次,尤其是Part2和Part3. Part1: 这一部分100%属于聊天内容,每一问回答3句左右就行,再长的话遇到poker-face考官就直接打断你,我就这样了。这一Part主要就是看你回答的流畅度,因为都是简单的问题,不用在意回答的深度,就是聊天。 我准备的方式就是打开一个mock视频,看他问啥我就自己blabla说一堆,然后放视频,看看人家怎么回答的,最后还会有一个考官的点评和意见,这个时候可以想想自己说的问题,然后把他提到的好词好句积累下来。然后把回答的不好的问题也记下来。 Part2: 这块其实就是我说的自言自语的能力。我就属于自己话唠那种,最后2min直接都超时被打断。这块我建议考前可以不用练太多,积累自己想说话的那种感觉很重要,就算是编也得给它编到2min。 可以设定几个特殊的场景。比如我当时准备的就是学校的瑞幸,如果他问最近发生的一件有意义的事,你就说这个事是在我买咖啡的时候遇到了同学,我们俩聊天喝咖啡blabla就能续下去了;如果他问一个你努力实现的目标,你就说为了学习一个东西,早上很早学校其他地方都没开,自己来到了咖啡馆,很早就开始学习,然后很有氛围blabla。 虽然题你不能准备,也不能背,但是这些预设的场景能帮你快速开始说话,而且关键的是有细节,他们着重会听你讲故事里面的细节。我感觉可以设3个这样的场景,比如一个瑞,一个麦麦再来一个图书馆。可以提前积累一些你准备的场景里的高级词,比如你说跟同学在一起吃麦乐鸡(Chicken McNuggets)很开心,或者自己迷茫的时候去吃这个麦乐鸡。这些词就让考官觉得你很强。 Part3: 其实就是雅思大作文Part2。这部分前期不用单独准备,按照Simon的那个构思的流程学习完,然后让自己能更快地想到观点,想到接下来的论点,然后在脑子里串起来,这样就可以了。不需要很高级的词,主要是说的连贯,逻辑通顺,而且对错甚至也没关系,他们其实不关心你这个题答的是否正确,只要不跑题怎么说都行。但你一定要自己敢说,说的自洽就完全ok了。 Tips: 看剧!提前沉浸到这个英语环境里,尽量考前每天都要看,不用管别的,就是看的开心就行。我考试当天吃早饭还在看生活大爆炸。 建议多积累一些口语化的词,比如you know,about that这种,能给自己思考的缓冲时间,同时考官不会觉得你卡壳了。 定期自己模考。方法就是打开一个视频,他问一个问题你就回答同时用手机录音,然后自己听。就会慢慢发现问题在哪,然后去进步。 一定要根据Band Description评分标准去准备和提高,其他所有的解读其实都没有下面这个表有用。 考前可以找一些真人聊聊天,你得亲自感受一下这个语境。因为考试的时候真的问的飞快,脑子和嘴都得跟得上才行。 一些资源: Mock口语测试视频: https://www.youtube.com/@IELTSDaily 我当时基本上都是看的这个,非常非常非常帮助。就是说的太慢了+考官太温柔,考试的时候完全相反 英国佬的细节教学: https://www.youtube.com/@EnglishSpeakingSuccess 很多词汇积累,考试注意事项等等都有,也是非常有帮助 Pronunciation专项练习: https://www.youtube.com/@rachelsenglish/search?query=pronunciation 一些非常难的发音都在这里练,每天坚持十分钟能有很大提高。比如th这种音,练好了对以后去国外也一直会有帮助。 写作 # 优先看Simon的书!!!!! 这个书里面写的都是非常精华的内容,上了考场根本来不及细想,只能提前把里面的很多方法提前训练好。还有一个第二版,现在还没有电子版,非常推荐去买个纸质版,基本上有这一本纸质材料就足够了。 把两个大小作文的范文pdf打印出来,然后每天去看看这些范文咋写的,尽量下次考试前看完一遍。培养一下它要求的写作高分的感觉,这样写起来语感和节奏会越来越好,时间分配也会提高。 针对Simon书里面提到的几个点专项练习,我感觉如果目标是我这种6.5或7其实没必要积累很多的大词,主要还是整体的逻辑、衔接和流畅度。所以我比较推荐的是这个书里面的观点练习,有一个section是专门让你自己想观点,然后分段,最后照着他给出的范文想法去纠正自己的思路,大小作文都这样。我当时就是训练了一段时间这个然后能很快很准的想到论点,且跑题几率会大大降低。 最后是看写作真经总纲。我觉得这里面写的没有Simon这个英国佬写的有针对性,方法可以直接用Simon的,但这个书里有很多搭配和句型。比如小作文的很多数字上升下降的描写,很有参考价值。考前一天背一背都管用。 大作文平时主要是在练的时候尽量总结一下自己思考的方法,比如大作文我想的就是要找更大面的几个视角更容易下笔(环境保护、经济发展blabla),而且错也错不到哪去;每个段有不同的论证方法:比如中间两个主要论证的段,一段用平行论证,另一段用递进论证,这样写起来很容易有逻辑性和语言丰富度;一定要举例子,而且至少每个段要有一个,他们还是很看重这样的论证方法的,不要总是车轱辘话解释观点。 ...

YOLOv5_HNet

May 30, 2023
ai, object detection

YOLOv5_HNet # A YOLOv5 modification net for key objects on private helmet dataset CaesarYangs/YOLOv5_HNet 中文 | EN 本项目的主要目标是利用一些已有的论文方案,结合我自己的一些思考和改动,实现对于私人数据集上的安全帽检测的效果提升。 效果提升的标准定义: 准确率 速度(检测速度) 模型大小(所需算力) 本项目所基于的数据集种类、数量都极其复杂,涉及多场景的情况处理。也在这些珍贵的数据集上进行了大量的实验及必须的消融实验。 tips:本项目适合完全了解YOLOv5及以上版本源码的同学阅读及使用。建议可以先通过 GitHub - HuKai97/yolov5-5.x-annotations: 一个基于yolov5-5.0的中文注释版本! HuKai大神之前做过的这个非常详尽的标注版本进行整体源码和必要细节阅读理解。也非常感谢这个项目让我在早期能够快速吃透并上手修改工作。 Solution1: 改变Anchor,添加小目标检测层 # 思路: 根据对数据集的分析,发现更多的情况是监控拍摄到的图片,结果就是目标的距离很远,物体较小。自然想到的第一个方向就是针对这些小目标着重优化。 改进要点: 添加一层新的小目标Anchor。 [5, 6, 8, 14, 15, 11] #new_anchor 修改FPN结构,增加层数。 在原来5层FPN的基础上增加两层:分别是对dim=512及dim=256维度特征的再次提取,经过再次上采样提取过的最后一层连接到检测头,替换原来的单层提取/上采。 利用kmeans,针对特定数据集情况做anchor重新聚类 本质上是针对后期YOLOv5模型自带的anchor回归预测的一个手动验证,看经过我解耦后的单独anchor重聚类算法能否对基础的YOLO模型有所提升,以验证这个方法对于安全帽检测这个特定领域的有效性。 训练结果: type model parameters FLOPs pt_size mAP@0.5 mAP@0.5~0.95 FPS Power Plant YOLOv5s_baseline 7.06M 16.5G 14.3MB 0.75 0.484 30.5 Power Plant little_obj_anchor_fpn 50.9M 192. ...

RegEx101 正则入门笔记

November 10, 2022
regex

RegEx101 正则入门笔记 # 正则表达式的两种基本用途:搜索和替换。给定一个正则表达式,它要么匹配一些文本(进行一次搜索),要么匹配并替换一些文本(进行一次替换)。 非常好的在线正则表达式匹配检测工具: regex101: build, test, and debug regex 学习与工作上都非常好用 匹配单个字符 # 正则表达式,也被称为模式,其实是一些由字符构成的字符串。这些字符可以是字面字符(普通文本)或元字符(有特殊含义的字符)。 普通文本 正则表达式是区分大小写的。 任意字符 注意正则表达式使用字符串内容来匹配模式。匹配到的未必总是整个字符串,也可能是与某个模式相匹配的子串。在上面的例子里,我们使用的正则表达式并不能匹配完整的文件名, 而是只匹配了其中一部分。如果你需要把某个正则表达式的匹配结果传递到其他代码或应用程序里做进一步处理,就必须记住这种差异。 特殊字符 . 表示匹配任意单个字符。 \ 是一个元字符(metacharacter,表示这个字符有特殊含义,代表的不是字符本身)。 .a.\. 结果:na1.xls 第一个.匹配a前面的单个字符;第二个.匹配a后面的单个字符;\.作为转义匹配真正的.符号 匹配一组字符 # 在正则表达式里,我们可以使用元字符 [ 和 ] 来定义一个字符集合。在使用 [ 和 ] 定义的字符集合里,出现在 [ 和 ] 之间的所有字符都是该集合的组成部分,必须匹配其中某个成员(但并非全部)。 此处的 [ 和 ] 代表着强制匹配其中的元素。只有存在才能够匹配成功。 [ 和 ] 不匹配任何字符,它们只负责定义一个字符集合。接下来,再由真正的 regex 匹配部分参与匹配操作。 使用 [ 和 ] 的字符集合在不需要区分字母大小写(或是只需要匹配某个特定部分)的搜索操作里比较常见。 利用字符集合区间 - 连字符,一种特殊的元字符。可以用这种连字符来定义字符区间。 一些合法的字符区间: [a-z]:匹配 a 到 z 所有小写字母 [A-Z]:匹配 A 到 Z 所有大写字母 [A-z]:匹配从 ASCⅡ字符 A 到 ASCIⅡ字符 z 的所有字母。这个模式一般不常用,因为它还包含 [ 和 ^ 等在 ASCⅡ字符表里排列在 Z 和 a 之间的字符。 字符区间的首、尾字符可以是 ASCⅡ字符表里的任意字符。但在实际工作中,最常用的字符区间还是数字字符区间和字母字符区间。 ...

在 Apple Silicon 上配置 PyQt5 以及 LabelImg

tech, gadget, hands-on

在 Apple Silicon 上配置 PyQt5 以及 LabelImg # Mac M1 芯片安装 labelImg - 简书 最近突然需要继续做一些数据标注的任务,下载好了之前经常用的 Labelme 后发现输出的标记文件是 json 格式的,不符合项目规范。发现 labelImg 这款标注软件刚好是输出 xml 作为标记文件的,十分合适。 但是由于最近刚刚换了电脑,时隔一年的试用后终于把我的主力机换到了 Apple Silicon 平台上来,随之而来的就是这一系列的配置问题。 GitHub - heartexlabs/labelImg Q-问题 # 官方的安装文档向来是非常重要的部分。主要是在执行 pip3 install pyqt5 lxml # Install qt and lxml by pip 的时候报错,直接 error。 在这一部分可能会有很多的人会遇到与我相似的问题,故将整个问题的出现与操作列出。 一般到这里复制错误信息到 Google 会发现有一部分用户也遇到了这类问题,主要的原因就是 arm64 架构和此处的 PyQt5 不兼容所导致的。 此时可以尝试利用 homebrew 中更新的命令:brew install pyqt@5 进行安装。 并且可以看到这个命令安装的 PyQt5 已经是适配 arm64 架构的版本了。 但此时如果继续按照官方文档走下去安装,会发现在安装labelimg的时候依旧会报错。并且所报的错误与之前几乎完全相同。 此时就可以发现,整个的错误原因都是来源于PyQt5没有正确导入造成的。虽然已经在本地安装好相应的包了,但是并没有导入到对应的Python环境当中,导致无法正确使用。如果在此时尝试直接下载GitHub的源码编译安装的话,会非常直接的发现报错内容为:PyQt5 import error ...