【Python短期内快速掌握学习人工智能知识能力】:从零到入门的NLP学习秘籍

忆_恒心 2024-06-13 16:01:11 阅读 56

⭐️我叫忆_恒心,一名喜欢书写博客的研究生👨‍🎓。

如果觉得本文能帮到您,麻烦点个赞👍呗!

近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三连支持一下呗。👍⭐️❤️

Qt5.9专栏定期更新Qt的一些项目Demo

项目与比赛专栏定期更新比赛的一些心得面试项目常被问到的知识点。


如何在暑期快速掌握学习人工智能知识能力:从零到入门的NLP学习秘籍

1 前言

随着人工智能的迅速发展,掌握AI知识已成为现代社会的重要技能。然而,仅仅了解工具的使用方法是不够的,还需要深入理解其背后的原理,避免误用和滞后性。无论你是刚入学的研究生还是正在职场打拼的打工人,都可能会面临相似的困惑:如何快速入门自然语言处理(NLP)。

作为一名研一新生或者初次接触NLP的职场人士,希望这篇文章能为你提供实用的指导和帮助。😊

整理了之前的研究生学习笔记 -

自然语言处理(NLP)入门指南,研一学习笔记-小白NLP入门学习笔记

2 学习新知识的小技巧

2.1 调整心态

首先,要调整好自己的心态。无论你现在是研究生阶段还是在职场打拼,更多时候是你在为导师或上司工作,而不仅仅是学习。在这个过程中,你可能会遇到一些杂事打乱你的计划。

2.2 明确学习方向

其次,必须对自己的学习有一个清晰的认识和规划。如果你已经联系上了导师或师兄师姐,并对自己的学习方向有了大致的了解,那么恭喜你,接下来就是要努力学习了。

但实际上,很多人可能会面临以下情况:

没有联系上导师或上司没有联系上直系师兄师姐学习方向不明确,只知道自己学的是NLP导师或上司只给了一堆论文或资料让你看,啥也没说

不要慌,大多数实验室或职场的科研工作其实是没有人带的。你应该认真阅读这篇博文,了解如何度过研一或入职初期。

2.3 研究生暑假期间的任务

在暑假期间,了解自己的学习方向,至少知道研究方向的名称。

你应该养成阅读论文的习惯:

学会阅读英文文献学会查找外国文献能够理解外文文献

3 学习的小小建议

3.1 学习方向

以我所学习的自然语言处理方向为例,首先你要知道这个方向的一个大题目标是啥。

首先,对Ai模型保持一定的探索

以下面为例:

比如我之前写过的一篇文章。以ChatGPT为例进行自然语言处理学习——入门自然语言处理

目前人工智能最为火热的ChatGPT

image-20230417100959287

相信各位小伙伴最近都听过ChatGPTGPT-4,百度的文言一心Kimi甚至有些同学也已经玩上了这些工具,大家都知道这是人工智能的产物,但是ChatGPT有哪些功能,我们进行一个简单的介绍。

我们输入一句:

作为一名刚入门自然语言处理的同学,第一堂课的学习,你能给些建议吗?

即使这个输入,可能含有错别字。

image-20230417101215054

那这背后运用的是那些技术的呢?

CV还是自然语言处理

0 什么是自然语言处理

上述设计到的模型所用的人工智能领域技术是自然语言处理,那么什么是自然语言处理呢?

我们来看一下维基百科上是如何进行定义的:

计算机科学与语言学领域交叉的一门学科,目的是让计算机能够理解、解释、生成人类语言。

这么说可能会优点抽象,简单来说就是:

自然语言处理 (Nautral Language Process, NLP) =自然语言理解(Natural Language Understand, NLU) + 自然语言生成

(Natural Language Generate, NLG)。

可能这在你看来是很神奇的一件事情,但其实ChatGPT也就做了这两部分的内容。

总的来说:NLP = NLU + NLR

ChatGPT可以说是自然语言处理综合应用的一个典型的模型了

image-20230417104322724

自然语言处理技术可以看出是两个阶段。

我们以ChatGPT为例,他是如何做到这些功能的呢?

(通过一个图 人–>电脑 电脑—人)

ChatGPT为例,我们每一次向他输入一段话的时候,会发生哪些事情呢?

image-20230323073852717

其中词法分析、句法分析、语义分析属于NLU任务,对话管理生成回复属于NLG任务。

我门进行一个简单的小结。

image-20230417104630271

1. 请教师兄师姐或同事

请教师兄师姐或同事是最直接的方式。通常情况下,你的师兄师姐或同事做什么,你大概率也会继续做下去,因为科研需要时间积累。

准研二不清楚就去问准研三的师兄。准研三的师兄都是宝藏!

上班可以多去Github上逛逛

2. 联系不上导师或同事

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/54463fad9

在这里插入图片描述

fa9489fa3a381a1b001e85e.png)

如果联系不上导师或没有从事相关工作的同事,可以去学校官网查看导师的研究方向,或者公司其他组查看AI方向的项目,特别是近两年导师或公司发表的文章或项目研究方向,这大概率就是你将来需要做的方向。

在没有师兄师姐或同事带的情况下,你需要对大方向进行了解,方便自己后期找论文或资料看时缩小范围:

直接拿老师或上司发表的近三年论文或项目报告来读用文献管理工具批量下载相关参考文献上GitHub找相关方向的知识点上知网查看其他人的硕士论文

这是我读研一时发现的方法,虽然我没怎么用,但名校的毕业论文比顶刊的英文论文好读多了,而且通俗易懂。

3.2 学习笔记

这里列出了一些我研一时的学习笔记:

在这里插入图片描述

我的研一笔记

机器学习入门笔记

神经网络基础学习笔记

研一上学期刚开始看文献时,显得很吃力,后悔得不行。以上是当时学习的部分笔记。学习时做好记录是必要的,后面翻看起来比较方便,不容易忘记。

4 论文阅读

当你对自己的研究方向有一定了解后,就可以开始大量阅读论文了。

小建议

对于一些较新的细分方向,通常没有很好的视频讲解。这时,你应该直接去找相关论文阅读。

第一步:英语基础较弱

建议先查看知网上的名校硕士/博士论文,看看是否有学者做过类似工作。尽量选择毕业论文。

小技巧:

知网在下载硕士或博士论文时通常不是PDF格式,可以通过首页的国际版下载成PDF格式。

第二步:看英文文献

学会使用文献管理工具,并借助一些英文阅读工具完成论文阅读。

一边看论文,一边养成管理文章的习惯。

可以参考我之前写的文章:研究生入门工具

绝对干活

第三步:记录文章知识盲点

针对知识盲区进行基础学习,比如遇到LSTM、RNN这些基础知识时,如果存在困惑就应进行有针对性的学习。这种系统学习的方式体验感极佳。

5 基础学习

如果开学前已经和导师取得联系,导师一般会发一些论文给你看。按照上面的论文阅读建议走,你就会大致知道需要补充哪些知识,从而进行系统学习。

如果时间充足,建议按照下面的学习流程走一遍,可能需要一个月左右的时间。

Python的学习请查看机器学习初学者公众号关于机器学习可以先看吴恩达的机器学习课程深度学习入门:鱼书(非常推荐)NLP入门: 选一篇英文综述补充基础知识:Word2Vec数学基础看论文 看完上面的内容可以专攻NLP 补一下基础知识:Word2Vec

看一些论文综述对研究领域有大致了解、补充基础知识点

学习建议

Python的学习请查看机器学习初学者公众号,主要学习科学工具包、SKlearn等使用关于机器学习可以先看吴恩达的课程,研一这门课基本上是必修课,到时会重新学,所以看一遍做一下习题就差不多了深度学习方面,鱼书是必看的,可以补充神经网络的知识

在这里插入图片描述

现在回忆起来 这本真是神书啊! 首先书不厚,讲得非常基础好懂,而且提供了丰富的代码!超级棒,感觉可以先看这本书再去看吴恩达的视频会更好,至少他这部分的神经网络,我觉得比吴恩达的手推公式好太多了(适合数学基础比较差的同学

多写代码:

6 写论文的工具

之前写了一篇关于科研论文学习的工具,写文章必备神器!!!

获得比较多的好评,我自己写文章的时候,也经常翻出来查查对应的内容!

科研论文写作神器——让你事半功倍的SCI论文写作神器

在这里插入图片描述

7 多练习编码

当然,学习机器学习不仅需要理论知识,还需要实际动手练习。这里有一段使用Python和Scikit-learn库的简单机器学习代码示例,展示了如何训练一个基本的分类模型。

# 导入必要的库import numpy as npfrom sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn.preprocessing import StandardScalerfrom sklearn.neighbors import KNeighborsClassifierfrom sklearn.metrics import accuracy_score# 加载数据集iris = datasets.load_iris()X = iris.datay = iris.target# 将数据集拆分为训练集和测试集X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)# 标准化数据scaler = StandardScaler()X_train = scaler.fit_transform(X_train)X_test = scaler.transform(X_test)# 训练KNN分类器knn = KNeighborsClassifier(n_neighbors=3)knn.fit(X_train, y_train)# 进行预测y_pred = knn.predict(X_test)# 计算准确率accuracy = accuracy_score(y_test, y_pred)print(f'模型准确率: { accuracy:.2f}')

这段代码使用鸢尾花数据集,训练了一个K近邻(KNN)分类器,并评估了模型在测试集上的准确率。通过这段代码,你可以了解数据预处理、模型训练和评估的基本流程。希望这对你的学习有所帮助!

8 小结

持续学习!

无论你是刚入学的研究生还是职场中的打工人,学习自然语言处理(NLP)都需要正确的心态和明确的方向。调整好心态,明确学习目标,利用暑期时间阅读相关文献和论文,补充基础知识是入门的关键。通过请教师兄师姐或同事,使用文献管理工具,并记录学习笔记,可以有效提升学习效率。掌握了这些技能和方法,你将能够在NLP领域迈出坚实的第一步。希望这篇文章能为你提供实用的指导和帮助。

喜欢文章的小伙伴们,麻烦点击下方三连支持一下哦!欢迎在评论下方留下你读研期间的疑惑。


⭐️我叫忆_恒心,一名喜欢书写博客的研究生👨‍🎓。

如果觉得本文能帮到您,麻烦点个赞👍呗!

近期会不断在专栏里进行更新讲解博客~~~ 有什么问题的小伙伴 欢迎留言提问欧,喜欢的小伙伴给个三连支持一下呗。👍⭐️❤️

Qt5.9专栏定期更新Qt的一些项目Demo

项目与比赛专栏定期更新比赛的一些心得面试项目常被问到的知识点。



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。