diff --git "a/source/\347\254\254\351\233\266\347\253\240/0.1 \344\272\272\345\267\245\346\231\272\350\203\275\347\256\200\345\217\262.md" "b/source/\347\254\254\351\233\266\347\253\240/0.1 \344\272\272\345\267\245\346\231\272\350\203\275\347\256\200\345\217\262.md" index 84a438509..cfb15bbeb 100644 --- "a/source/\347\254\254\351\233\266\347\253\240/0.1 \344\272\272\345\267\245\346\231\272\350\203\275\347\256\200\345\217\262.md" +++ "b/source/\347\254\254\351\233\266\347\253\240/0.1 \344\272\272\345\267\245\346\231\272\350\203\275\347\256\200\345\217\262.md" @@ -33,7 +33,18 @@ 人工智能的第三次浪潮有两个重要的时间节点:2006年和2016年。2006年是深度学习发展史的分水岭。杰弗里辛顿在这一年发表了《一种深度置信网络的快速学习算法》,其他重要的深度学习学术文章也在这一年被发布,在基本理论层面取得了若干重大突破。而2016年3月,谷歌DeepMind研发的AlphaGo在围棋人机大战中击败韩国职业九段棋手李世乭,“人工智能”一词正式进入普通民众的视野并被逐渐熟知。至此,人工智能正式迈向了从“科研领域的应用型工具”到“实用性,功能性工具”的转变,人工智能有了新的研究方向和研究模式,即从过去的学术主导型研究逐渐走向了商业主导型研究。随着人类社会对智能化工具的不断追求和探索,人工智能的发展迎来了全新的时代。 -### 1.1.4 总结 + +### 1.1.4 第四次浪潮 + +2020年前后,随着深度学习技术的成熟和大规模预训练模型(Large Language Models, LLM)的突破,人工智能发展进入以生成式AI为核心的第四次浪潮。这一阶段的核心标志是Transformer架构的广泛应用,以及以ChatGPT为代表的通用型对话系统在自然语言理解、生成和逻辑推理能力上的飞跃式提升。 + +此次浪潮的起点可追溯至2017年谷歌提出的Transformer模型,其自注意力机制(Self-Attention)解决了传统循环神经网络(RNN)处理长序列数据的效率瓶颈。2020年,OpenAI发布1750亿参数的GPT-3模型,首次展现了大规模预训练模型在零样本学习(Zero-Shot Learning)和小样本学习(Few-Shot Learning)中的潜力。2022年11月,基于GPT-3.5的ChatGPT正式向公众开放,其通过人类反馈强化学习(RLHF)技术实现了与人类意图对齐的对话能力,上线两个月用户突破1亿,成为历史上增长最快的消费级应用。2023年3月,GPT-4的发布进一步突破多模态能力边界,将文本、图像、代码的生成与理解整合至统一框架。 + +第四次浪潮的本质是人工智能从“专用工具”向“通用助手”的范式转变。基于自监督学习的预训练技术使得模型能够通过海量数据(如数万亿单词的文本库)自主构建对世界的认知体系,而指令微调(Instruction Tuning)和价值观对齐技术则让人工智能的输出更符合人类伦理与社会规范。此阶段的技术突破显著降低了AI应用门槛,编程、写作、教育、法律等领域的生产力工具开始全面智能化重构,人类与机器的交互模式从“命令式”转变为“协作式”。 + +然而,此次浪潮也面临前所未有的挑战。千亿级参数模型对算力的需求引发全球GPU资源争夺战,训练成本的高企导致技术垄断风险;模型可能产生包含偏见或事实错误的“幻觉”(Hallucination)输出,引发对信息可信度的担忧;以开源社区(如Meta的LLaMA、Stability AI的Stable Diffusion)与闭源商业公司(如OpenAI、Google)的路线之争,更折射出技术伦理与治理的复杂性。当前,第四次浪潮仍在持续推进中,其最终走向将取决于技术突破、社会接受度与监管框架的多方博弈。 + +### 1.1.5 总结 ![](figures/AI.jpg) diff --git "a/source/\347\254\254\351\233\266\347\253\240/0.3 \345\270\270\347\224\250\345\214\205\347\232\204\345\255\246\344\271\240.md" "b/source/\347\254\254\351\233\266\347\253\240/0.3 \345\270\270\347\224\250\345\214\205\347\232\204\345\255\246\344\271\240.md" index 08dab5cb7..8ca93f64d 100644 --- "a/source/\347\254\254\351\233\266\347\253\240/0.3 \345\270\270\347\224\250\345\214\205\347\232\204\345\255\246\344\271\240.md" +++ "b/source/\347\254\254\351\233\266\347\253\240/0.3 \345\270\270\347\224\250\345\214\205\347\232\204\345\255\246\344\271\240.md" @@ -1,4 +1,145 @@ # 常用包的学习 -## Numpy + +## NumPy + +**简介:** +NumPy 是 Python 的基础科学计算包,提供了高性能的 N 维数组对象(`ndarray`)和大量用于数组操作的函数。它是很多其他数据分析包(例如 pandas 和 scikit-learn)的基础。 + +**学习重点:** + +- **数组创建:** + - 从列表创建:`np.array([1, 2, 3])` + - 特殊数组:`np.zeros((3, 4))`、`np.ones((2, 5))`、`np.eye(4)`、`np.arange(0, 10, 2)`、`np.linspace(0, 1, 5)` + +- **数组操作:** + - 形状操作:`array.shape`、`np.reshape()`、`np.transpose()` + - 切片和索引:类似 Python 列表,但支持多维索引 + - 广播机制:在不同形状的数组间进行运算 + +- **数学运算:** + - 基本运算:加减乘除(直接对数组操作) + - 通用函数(ufuncs):如 `np.sin()`、`np.log()`、`np.exp()` 等 + - 矩阵运算:`np.dot()`、`np.matmul()`、`@` 操作符 + +**示例代码:** + +```python +import numpy as np + +# 创建数组 +a = np.array([1, 2, 3]) +b = np.arange(0, 10, 2) # [0, 2, 4, 6, 8] + +# 数组的基本运算 +c = a * 2 +d = np.sin(a) + +# 数组的形状操作 +matrix = np.arange(12).reshape(3, 4) +transposed = matrix.T + +print("数组 a:", a) +print("数组 b:", b) +print("数组 c (a*2):", c) +print("数组 d (sin(a)):", d) +print("原始矩阵:\n", matrix) +print("转置矩阵:\n", transposed) +``` + +--- + ## pandas -## matplotlib \ No newline at end of file + +**简介:** +pandas 是基于 NumPy 构建的数据分析库,主要提供了两种核心数据结构:`Series`(一维数据)和 `DataFrame`(二维数据表)。它极大地方便了数据读取、清洗、变换和分析。 + +**学习重点:** + +- **数据结构:** + - **Series:** 类似于带标签的一维数组 + - **DataFrame:** 表格数据结构,既有行索引也有列标签 + +- **数据读写:** + - 从 CSV、Excel、SQL 等文件或数据库中读取数据:`pd.read_csv()`, `pd.read_excel()` + - 保存数据:`DataFrame.to_csv()`, `DataFrame.to_excel()` + +- **数据操作:** + - 选择与过滤:通过标签(`.loc`)或位置(`.iloc`)索引 + - 数据清洗:处理缺失值(`dropna()`, `fillna()`)、重复值 + - 数据变换:排序(`sort_values()`)、重设索引(`reset_index()`) + - 数据聚合:`groupby()`、`pivot_table()`、`merge()`、`join()` + +**示例代码:** + +```python +import pandas as pd + +# 创建 DataFrame +data = { + '姓名': ['Alice', 'Bob', 'Charlie', 'David'], + '年龄': [25, 30, 35, 40], + '城市': ['北京', '上海', '广州', '深圳'] +} +df = pd.DataFrame(data) + +# 查看数据 +print("DataFrame 内容:") +print(df) + +# 筛选年龄大于30的数据 +df_filtered = df[df['年龄'] > 30] +print("\n年龄大于30的人:") +print(df_filtered) + +# 分组聚合:按城市统计平均年龄 +df_grouped = df.groupby('城市')['年龄'].mean().reset_index() +print("\n按城市计算平均年龄:") +print(df_grouped) +``` + +--- + +## matplotlib + +**简介:** +matplotlib 是 Python 最常用的数据可视化库,特别是其 `pyplot` 接口,能够方便地创建各种图表(折线图、散点图、直方图、条形图等)。 + +**学习重点:** + +- **基本绘图:** + - 使用 `plt.plot()` 绘制折线图 + - `plt.scatter()` 绘制散点图 + - `plt.bar()` 绘制条形图 + - `plt.hist()` 绘制直方图 + +- **图表定制:** + - 添加标题:`plt.title()` + - 添加坐标轴标签:`plt.xlabel()`、`plt.ylabel()` + - 添加图例:`plt.legend()` + - 自定义颜色、线型、标记等 + +- **显示与保存图表:** + - 显示图表:`plt.show()` + - 保存图表:`plt.savefig('filename.png')` + +**示例代码:** + +```python +import matplotlib.pyplot as plt +import numpy as np + +# 生成数据 +x = np.linspace(0, 10, 100) +y = np.sin(x) + +# 绘制折线图 +plt.figure(figsize=(8, 4)) +plt.plot(x, y, label='sin', color='blue', linestyle='-', marker='o', markersize=4) +plt.title('sin') +plt.xlabel('X ') +plt.ylabel('Y ') +plt.legend() +plt.grid(True) +plt.show() + +```