盘点我跳过的科研天坑,进坑就是半年白干( 三 )


4.和领域内的专家保持交流
领域内专家的意见是很重要的(特别是你的导师) 。 基于丰富的经验 , 他们能更好地估计研究的可行性和研究价值;对于研究结果的预期可能会更准确 , 因此当你误入歧途时 , 更可能及时地指出;而对于你的成果面向的受众也会更了解 , 能帮助你选择论文投稿的正确的期刊 。 因此 , 多和前辈们交流 。 记住 , 前辈不限于你的导师 , 院系内类似工作的老师、学长学姐都是可以请教的对象 。 多交流还能防自闭!
5.好好做文献调研!好好做文献调研!
重复一遍是因为小轶觉得这点简直是坑中之坑!需要鞭策自己!
当你想到一个研究问题的时候 , 你很可能不是第一个想到的 。 如果你没找到相关的研究 , 可能只是因为他人描述问题的形式和你不尽相同 , 更糟糕的是可能是因为你的问题根本不具备研究价值 。 无论哪种情况 , 都是由于文献调研还不够充分导致的 。 需要多读论文 , 然后通过交流讨论 , 确定这个研究问题能不能做下去 。 不要担心那些和你研究同一个问题的论文:创新性可以来自很多方面 , 新方法 , 新结论 , 新应用点 , 世界这么大 , 只要你会讲故事 , 没那么多论文能和你完全一样(真一样的话就说明是有缘人 , 发邮件交个朋友去吧) 。 前人的工作将为你提供很多宝贵的结论、经验、教训 , 也必然存在不完善的地方 , 沿着前人的不足做下去就好了 。
盘点我跳过的科研天坑,进坑就是半年白干
文章图片
6.考虑好要如何部署模型
“你为什么一定要用深度学习模型?传统方法它不香吗?”这是每一篇应用机器学习模型的论文必须回答的问题 。
目前 , 有很大一部分的机器学习模型并不具有实用价值 , 它们只代表了建模和数据分析的发展方向 。 如果只是运用机器学习模型 , 一定要注意模型的适用范围(实时性、计算力等) , 还要对如何魔改模型的输入输出心里有数 。 “因为没人把机器学习用在我的领域 , 所以我把模型套过来跑一跑”的行为早就饱受诟病了(详见《近期神奇机器学习应用大赏》) 。
4如何建立可靠的模型
1.不要混淆训练和测试数据!
要使用能证明模型泛化性的测试集 。 训练集上表现再好也可能只是过拟合 , 只有在一个尽可能贴近实际场景的测试集中表现过关 , 才能证明模型的训练是有效的 。 你的训练集中数据可以是在单一条件下采集的 , 但测试集中数据必须包括各式各样的情况 。 而且测试集和训练集绝对不能有重合 。
2.多尝试几个模型
根据NoFreeLunch理论 , 任何的机器学习方法都不可能在所有领域表现最好 。 所以 , 当你将机器学习引入自己的领域的时候 , 多试几个模型 , 确保你用的是最合适的那一个 , 当然 , 也可能没有一个适合你:)
3.不要使用不合适的模型
由于现在机器学习的库太多了 , 生搬硬套的现象也越来越普遍 。 搞不清模型输入输出 , 只想用新兴神经网络炮轰一切问题的 , 看到个新模型就想拿来用的 , 是不是听起来就要血压升高?
盘点我跳过的科研天坑,进坑就是半年白干
文章图片
4.好好调参!好好调参!
重复一遍是因为白鹡鸰特别懒不喜欢调参需要鞭策自己
很多模型中都有超参数 , 它们对模型的表现影响重大 , 而不同的领域/数据集对超参数的要求又各有不同 。 所以 , 即使是懒 , 也必须采用一些自动化方法来调参 , 比如网格搜索 , 简单粗暴 , 我的挚爱 。 如果模型很大 , 训练成本高昂 , 甚至可以利用一些工具包帮忙调参 。