- 博客(53)
- 收藏
- 关注

原创 【GCN】 代码详解 (2) 主体框架【pytorch】可运行版本
在前文中,已经对图卷积神经网络(Graph Convolutional Neural Networks, GCN)的理论基础和如何运行进行了深入探讨解读。接下来的章节将会进入新的阶段——将借助PyTorch,这一强大的深度学习框架,通过实战讲解来展示如何构建和训练一个图卷积神经网络。这一过程不仅将帮助读者巩固理论知识,更重要的是,它将引导读者迈出理论到实践的关键一步,从而在处理具有图结构数据的问题上实现质的飞跃。通过本章节的学习,希望读者能够掌握图神经网络在主体代码。
2024-05-31 14:52:45
2631
11

原创 【GCN】全网最简单细致理论讲解
百度百科的定义是这样的人工神经网络(Artificial Neural Network,缩写ANN),简称神经网络(Neural Network,缩写NN),是一种模仿生物神经网络(动物的中枢神经系统,特别是大脑)的结构和功能的数学模型或计算模型,用于对函数进行估计或近似。神经网络是一种有监督的机器学习算法,广泛地应用于分类预测、图像识别等领域。个人理解简而言之,神经网络是通过可训练的参数来逼近或拟合我们想要的曲线或曲面,从而解决分类或回归问题。
2024-05-31 14:47:19
2729
1

原创 空域图卷积神经网络理解 GCN,GAT,GraphSAGE讲解
在这一章中,对两种空域图神经网络模型——GAT(图注意力网络)和GraphSAGE,以及对GCN(图卷积网络)的空域解读进行深入分析。这些讲解旨在帮助读者迅速掌握图神经网络领域的基础知识,使其能够在阅读相关论文时容易理解公式,从而避免对这些理论感到反感。同时,这样的基础知识也让读者将重点放在论文的创新点上,而不必纠结于概念初学的困惑。在后续的文章中,我们还将为其他模型提供详尽讲解。至此,入门篇章就告一段落了。如果这些内容能帮到您,我也会感到十分欣慰。
2024-03-06 17:35:13
4008
1
原创 【AutoDL】通过【SSH远程连接】【vscode】
其实这个东西你说它难,确实没啥难度,但是我总是在这个连接到连接到主机这个步骤下。不会点击这个添加新的主机,而是直接在对话款中复制。然后就变成了怎么搞也连接不上。就是不停的连接超时,okok说了这么多下次再忘我就是回来看看吧。
2024-12-18 19:14:19
1790
1
原创 【图神经网络】 GraphSAGE 原文精讲(全网最细致篇)
在大图中的节点的低维嵌入在多种预测任务中证明了其极大的有用性,从内容推荐到识别蛋白质功能。这里就是再说GNN的聚合方式生成的节点嵌入表示,对预测任务比如分类还是比最初的特征生成的性能要好的。然而,大多数现有方法要求在嵌入训练过程中图中的所有节点都必须存在;让我们用一个例子来阐明这一点:假设 ( AX ) 表示的操作,其中 ( A ) 是邻接矩阵,而 ( X ) 是节点的特征矩阵。像GCN(图卷积网络)或GAT(图注意力网络)这样的方法通常都会采用这种方式进行图卷积操作。
2024-12-18 19:13:22
3070
1
原创 【Mamba】详解(5) 【Mamba: 硬件感知算法】全网最简单版本
这个Mamba的讲解到此结束了,其实比较难理解的还是SSM前期的准备,在后续的部分都是一些参数规模以及更高层面的东西,这确实需要大量工作的累积。还是与很多巧思在里面的,这同样也是作者的功力嘛。如果你对这样的讲解方式觉得有趣,喜欢。欢迎催更。如果帮助到你十分荣幸。有任何问题或建议,欢迎随时通过私信评论与我交流。期待你们的反馈。
2024-12-04 15:33:05
1299
2
原创 【Mamba】详解(4) 【Mamba: 选择性 SSM】全网最简单版本
【Mamba】详解(4) 【Mamba: 选择性 SSM】,在之前的章节中我们讲解了HiPPO,以及S4,以及这一章节的Mamba的第一个创新,下一节将迎来最中的完结部分。如果你对这样的讲解方式觉得有趣,喜欢。欢迎催更。如果帮助到你十分荣幸。有任何问题或建议,欢迎随时通过私信评论与我交流。期待你们的反馈。
2024-12-04 15:32:20
2421
1
原创 【Mamba】详解(3) 【S4理解】全网最简单版本
这仅仅是Mamba详解(3) 【S4理解】,我们讲解了HiPPO,以及S4,确实这部分比较干。不过可以看到作者对其模型的理解和思考,确实让我受益颇深。主要是学术灌水的时代看到真东西很不错了。我相信这三节的学习你一定是对这个SSM或者S4有了一个清晰的认识。如果你对这样的讲解方式觉得有趣,喜欢。欢迎催更。如果帮助到你十分荣幸。有任何问题或建议,欢迎随时通过私信评论与我交流。期待你们的反馈。
2024-12-02 12:03:17
1428
原创 Google 网页排序算法 PageRank
PageRank技术的主要限制之一是对新页面不够友好。由于新页面通常没有太多外链,它们的初始等级较低,难以与旧页面竞争,即使它们的内容非常优质。这是因为PageRank重视历史链接的积累。其实这个博文主要是为了记录我对 阻尼系数ddd。
2024-12-02 12:02:39
926
原创 【Mamba】详解(2) 【离散SSM和SSM并行化】全网最简单版本
这仅仅是Mamba详解(2) 【离散SSM和SSM并行化的理解】,如果你对这样的讲解方式觉得有趣,喜欢。欢迎催更。如果帮助到你十分荣幸。有任何问题或建议,欢迎随时通过私信评论与我交流。期待你们的反馈。
2024-11-25 13:42:35
1416
原创 【Mamba】详解(1) 【SSM理解】全网最简单版本
ok我想大家都明白了这个SSM的公式咱们再总结下,和正常的其他博文接轨下。在状态空间模型中,有两个基本的方程:状态方程和观测方程。这两个方程共同构成了模型的完整结构状态方程状态方程描述的是系统状态变量的演化过程,ht′AhtBxtht′AhtBxt就是一个典型的状态方程。这个方程解释了系统状态如何通过内部动力学(由AAA表示)以及外部输入(由BBB和xtx_txt表示)演进。
2024-11-25 13:41:05
1890
2
原创 【图神经网络】 IDGL原文精讲(全网最细致篇)
在本文中,我们提出了一个端到端的图学习框架,名为迭代深度图学习(Iterative Deep Graph Learning,IDGL),用于联合并迭代地学习图结构和图嵌入。模型不同的是传统的GCN着重通过图结构对节点嵌入进行更新,进而分类。而本文提出的框架简单的理解就是一个图结构的特征工程。其主要能力则是在迭代过程中对表示图结构的邻接矩阵进行更新。这个创新主要是其提出了一种通用框架通过优化图结构从而实现节点分类性能的提升。
2024-11-20 18:23:02
527
原创 以【Transformer】的视角看待【GAT】
GAT作者对注意力的理解确实十分强大, 在时间上不是简单的嫁接而是真正的改进了精髓,形神具备。有一个问题就是没实现按照邻接矩阵进行注意力的计算还是进行了全局注意力的计算。这一点也是其性能受限的原因吧,主要是和论文中表述不一致,不过还是很厉害的。好了好了不废话了。有任何问题或建议,欢迎随时通过私信评论与我交流。期待你们的反馈。
2024-11-20 18:22:11
1103
原创 【add_module】 菜鸟实用教程指南
本文提供了一种灵活地调整网络层数的方法,通过使用 nn.ModuleList 和 add_module,可以在不重写模型定义的情况下改变网络架构。开设这个专栏的目的,也是想为初学者提供一个更直观的平台,帮助他们理解那些看似复杂难懂的概念。好了,今天的分享就到这里。如果你对这个话题感兴趣,并希望了解更多,请随时留言催更。如果有任何问题,欢迎随时私信我。期待与你的互动!
2024-11-14 15:39:33
801
原创 【GAT】 代码详解 (2) 主体框架【pytorch】可运行版本
在前文中,我们已深入探讨了图注意力网络(GAT)的理论基础及其运行方法。此外,我们还介绍了如何执行这一实验。然而,这并非算法的全部精髓。本节将利用 PyTorch 这一强大的深度学习框架,通过实战案例详细讲解如何构建和训练图注意力网络。这一过程不仅有助于读者巩固理论知识,更重要的是,它将帮助读者从理论迈向实践,实现在处理图结构数据问题上的质的飞跃。通过本章节的学习,我们希望读者能够熟练掌握图神经网络的主体代码,并通过实际编码练习来深化对图神经网络工作原理的理解。
2024-11-14 14:29:12
1236
原创 【GAT】 代码详解 (1) 运行方法【pytorch】可运行版本
在前文中,我们已经深入探讨了图卷积神经网络和图注意力网络的理论基础。还没看的同学点这里补习下。接下来,将开启一个新的阶段,我们将借助强大的深度学习框架PyTorch,通过实战讲解来展示如何构建和训练一个GAT模型。这一过程不仅帮助读者巩固理论知识,更重要的是,它将引导读者从理论迈向实践,实现在处理具有图结构数据的问题上的质的飞跃。在本章节中,我将主要介绍如何运行代码以获取计算结果。考虑到我的读者中有很多是初学者,我认为在深入探讨代码的各种细节之前,首先了解如何简单地运行模型并查看其结果是非常必要的。
2024-11-14 14:26:44
1511
原创 【图神经网络】 GCN原文精讲(全网最细致篇)
在阅读开始前提示下,如果阅读开始后你觉得看起来十分吃力,可以看下这个专栏下的针对于GCN的谱域频域精讲,这样才能很好的理解他说什么。好的咱们现在开始吧。我们提出了一种基于图结构数据的半监督学习的可扩展方法,该方法基于高效的卷积神经网络变体直接操作图数据。我们通过图谱卷积的局部一阶近似来解释我们选择卷积架构的动机。我们的模型在图边数量上线性扩展,并学习隐藏层表示,这些表示编码了本地图结构和节点的特征。在一系列关于引用网络和知识图数据集的实验中,我们证明了我们的方法在显著程度上超越了相关方法。
2024-11-13 12:22:24
2246
原创 【图神经网络】 GAT原文精讲(全网最细致篇)
我们提出了图注意力网络(GATs),这是一种新颖的神经网络架构,用于处理图结构数据。对神经网络附加注意力机制这些网络通过利用掩蔽自注意力层来弥补基于图卷积或其近似方法的现有不足。通过叠加节点能够关注其邻域特征的层,我们能够(隐式地)为邻域中不同的节点指定不同的权重,而无需进行任何成本高昂的矩阵操作(如求逆)或依赖于预先了解图结构。这段的意义实际上是想表明其GAT模型是将注意力机制高度集成到了卷积操作。而不需要各种额外的复杂操作实现注意力机制。就是简单直观的完成了注意力在GNN中的集成问题。
2024-11-13 12:21:40
4175
原创 【图神经网络】 AM-GCN代码实战(4)【pytorch】代码可运行
讲到这里我们的AMGCN论文讲解接近尾声了,大家可以按照自己的需求构建自己希望的模型。其实本人理解这个作者的工作主要体现在其集成架构的理解上,做了大量的探索。我还采用cora数据集,验证了一下AMGCN的效果,效果表明人家论文中没用是对的,没啥效果。当然其在论文中给出的其他数据集下优越性都是可见的。欢迎各位和我共同学习我的实验部分。有任何问题或建议,欢迎随时通过私信与我交流。期待你们的积极参与和反馈。下一小节将在pytorch中复现AMGCN模型在Cora数据集下的实验结果,👏欢迎大家观看哦。
2024-11-06 16:39:07
1265
原创 【GCN】数据集转换成【x,y,tx,ty,allx,ally】格式问题详解
在前文中,已经对图卷积神经网络(Graph Convolutional Neural Networks, GCN)的理论基础和实践操作进行了深入探讨。相信你按照顺序阅读看到这里已经对GCN有一个全面而详细的认识,这里是一个额外的章节,准确的说是我的个人的实验部分,其主要目的是分享自己在学习GCN中的面对相关问题的思考。如果你仅仅是想对GCN有一个初步的认识,当然可以不看这部分的内容。当然我也希望这个文章能像这个题目一样,真正的帮助到有需要在此寻找答案的人。
2024-11-06 16:37:35
825
原创 【GCN】 代码详解 (1) 如何运行【pytorch】可运行版本
在前文中,已经对图卷积神经网络(Graph Convolutional Neural Networks, GCN)的理论基础进行了深入探讨。接下来的章节将会进入新的阶段,将借助PyTorch,这一强大的深度学习框架,通过实战讲解来展示如何构建和训练一个图卷积神经网络。这一过程不仅将帮助读者巩固理论知识,更重要的是,它将引导读者迈出理论到实践的关键一步,从而在处理具有图结构数据的问题上实现质的飞跃。在本章节中,我将主要介绍如何运行代码以获取计算结果。
2024-11-05 15:32:54
1623
1
原创 【图神经网络】 AM-GCN代码实战(3)【pytorch】代码可运行
可以看到论文中一共使用到了六种数据集,在代码中都有提供。代码中格式如下:这种数据格式的划分非常常见。以 Citeseer 数据集为例,它包含 3327 个节点和 4732 条边,分布在 6 个不同的类别中。每个节点具有 3705 维的特征。关于训练集的节点数量如 120、240 和 360,可能会令人疑惑。其实,这些数字具体表示的是在每个类别中抽取一定数量的节点进行训练。
2024-11-05 12:26:21
752
原创 【图神经网络】 AM-GCN代码实战(1)【pytorch】代码可运行
相信各位在看完这样的解释后已经成功的运行完了代码。但是这也才是理解这个代码的第一步,接下来的章节中我们将会对代码中的具体细节以及文件的内容形式进行详细的解释,希望能够共同进步,还是有问题欢迎私信哦。
2024-11-05 12:25:59
1074
原创 【图神经网络】 AM-GCN代码实战(2)【pytorch】代码可运行
这只是对AMGCN模型性能展开的一项初步实验。在接下来的章节中,我们将逐步揭开图神经网络全面架构的细节,并深入解析相关论文。如果您觉得这些内容对您有帮助,请考虑订阅支持。就是对我工作的最大支持,我会持续更新有关图神经网络的最新动态和深入分析,我们一同努力、共同进步。
2024-10-30 15:25:16
1104
1
原创 【图神经网络】 AM-GCN论文精讲(全网最细致篇)
图卷积网络(GCNs)在处理图形和网络数据的各种分析任务中获得了巨大的普及。然而,一些最近的研究对于GCNs是否能在信息丰富的复杂图中最优地整合节点特征和拓扑结构提出了担忧。主要讨论的就是模型能否有效的聚合结构信息和节点特征信息。作为一种表征学习,简而言之就是节点的潜入表示学习,其最终的得到的潜入表示是否有效的聚合了邻居的特征信息,以及周围的结构信息,直接影响着模型的最终性能。在本文中,我们首先提出了一项实验调查。
2024-10-30 15:24:06
1283
原创 计算机视觉专栏(2)【LeNet】代码实战【pytorch】完整可运行
本文对比了李沐老师的LeNet实现和b友噼里啪啦的实现,展示了两种不同风格的代码结构及其适用场景。李沐老师的版本面向初学者,使用自定义的d2l库简化数据处理和训练流程,侧重于教学和易理解性,适合快速掌握基础概念。而噼里啪啦的实现则更接近实际应用,采用模块化的代码组织方式,直接应用PyTorch原生操作,更适合有一定基础的开发者深入学习和项目开发。这两种实现各有优点,选择时应考虑个人学习阶段和目标:初学者或基础理解者适合从李老师的代码学起,而希望进行实际应用或深化理解的开发者则可从劈啦啪的实践代码入手。
2024-10-28 16:26:30
1044
原创 【nn.Sequential()】菜鸟实用教程指南
这种布局清晰地展示如何将复杂的图层组合简化为可重用的模块。: 此容器存储模块并自动按顺序执行每个模块的前向传播。这意味着在Sequential中添加的模块必须按照严格的输入和输出顺序连接。使用可以极大地简化代码,特别是在模型层次结构比较直观且线性的情况下。它不仅增强了代码的可读性,还减少了潜在的编程错误,使得整体网络结构的管理更为高效。
2024-10-28 16:23:48
1045
原创 【Shuffle Net V2】精讲 (5) 【pytorch】完整可运行代码
实际上,代码的核心在于模型架构的实现,尤其是对通道重排 (Channel Shuffle) 和通道分离操作的应用。虽然这些操作在代码层面可能没有显著的亮点,但它们为我们提供了一个简明的实践环境,让我们能够深入理解并应用这些概念。此外,这一部分还有很多值得学习和探索的内容。本章节主要对模型文件的实现以及代码的执行进行了详细解释。对于理解这些操作存在疑问的读者,欢迎通过评论或私信交流和指导。我们鼓励大家积极参与讨论,共同提升在实际应用中的理解与技能。
2024-10-27 14:13:51
1057
1
原创 计算机视觉专栏(1)【LeNet】论文详解
多层神经网络与误差反向传播算法的结合是成功的基于梯度学习技术的最佳例证。现阶段这就是作为深度学习的基础了。在给定适当网络架构的情况下,基于梯度的学习算法可以用来合成一个复杂的决策面。这句话说的就很SVM,当然这些都是进化演变的产物,从最优化算法到现阶段的梯度下降。优化神经网络参数,满满的时代感的文字这个决策面能够对高维模式(如手写字符)进行分类,而且预处理工作很少。无需过多的数据预处理本文回顾了应用于手写字符识别的各种方法,并在一个标准的手写数字识别任务上进行了比较。
2024-10-27 14:12:06
1565
原创 【argparse】 菜鸟实用教程指南
argsparse是python的命令行解析的标准模块,内置于python,不需要安装。这个库可以让我们直接在命令行中就可以向程序中传入参数并让程序运行。上面这句话是什么意思呢。python的命令行解析标准模块???我对着话解读一下:其实就是在例如mac中的终端和win中的cmd下,这样的一个纯命令行环境下。我们称这样的环境为命令行,但是现阶段大多数用的还是ide这样的可视化环境取运行。假如你在使用命令行界面执行代码的时候实际上都是不考虑代码本身,而是直接开始进行接口接上直接运行的。
2024-10-16 15:33:39
882
原创 【TensorBoard】 菜鸟实用教程指南
通过详细阅读官方文档,可以进一步理解 TensorBoard 作为深度学习工具,展示模型和训练过程强大功能的细节。它具备丰富的可调节特性,以及图形化界面,真正是深度学习研究和实践中的一把利器。开设这个专栏的目的,也是想为初学者提供一个更直观的平台,帮助他们理解那些看似复杂难懂的概念。好了,今天的分享就到这里。如果你对这个话题感兴趣,并希望了解更多,请随时留言催更。
2024-10-16 15:33:07
2358
原创 Shuffle Net系列详解 (4) Shuffle Net V2实践部分讲解 for pytorch版本
在之前的论文精讲环节,确实还有许多内容需要进一步深入探讨。如果您对某些部分感兴趣,欢迎随时联系我,我会持续更新以提供更多信息。我真心希望读者能够从中获得收益,这里分享的都是基于个人理解的见解。接下来,我计划跟进一些在小型模型上可以执行的实践代码,旨在帮助读者更深入地理解这些概念。其实我看下来这两个代码模型的主体构建都是很容易看懂的。真正的难点是其整体的训练逻辑的堆积。以及各种各样自己写的小的trick。值得注意的是现阶段新技术的引入有些是可以替换的,各位酌情学习哦。
2024-10-12 13:13:27
702
原创 Shuffle Net系列详解 (3) Shuffle Net V1实践部分讲解 for pytorch版本
这段代码所承载的工作量是相当大的,这不仅源于它所处理的问题本身的复杂性,还因为它处理的数据集的规模。然而,尽管模型的整体架构相对简单易懂,但真正需要时间去消化的是,训练过程中展示的各种精细的技巧。这些技巧非常值得学习,希望大家能在本节中尽可能地掌握那些对自己的科研工作有所帮助的方法,以便在科研的旅程中更加顺风顺水。接下来会对将要讲解 ShuffleNet V2,对于那些对此感兴趣的读者,我建议亲自动手实践一下这个实验。
2024-10-12 13:13:03
865
原创 Shuffle Net系列详解 (2) Shuffle Net V2论文理论部分详解
当前,神经网络架构设计主要由间接复杂度指标(如 FLOPs)引导。然而,直接指标(例如速度)也依赖于其他因素,比如内存访问成本和平台特性。因此,本工作提议在目标平台上评估直接指标,而不仅仅考虑 FLOPs。基于一系列受控实验,本工作得出了几条高效网络设计的实用指南。据此,我们提出了一种新的架构,称为 ShuffleNet V2。全面的消融实验验证了我们的模型在速度与准确性权衡方面是最先进的。就是提出了新的模型性能很好,并且其不在基于理论层面的复杂度讨论,而是实际应用层面的比较。不玩虚的就是干。
2024-10-09 12:24:34
1179
原创 Shuffle Net系列详解 (1) Shuffle Net论 V1论文理论部分详解
我们介绍了一种极其效率高的CNN架构,命名为ShuffleNet,该架构专门为计算能力非常有限的移动设备设计(例如,10-150 MFLOPs)。这种新架构利用两种新的操作,即逐点群卷积和通道混洗,大大降低了计算成本,同时保持了准确性。在ImageNet分类和MS COCO目标检测的实验中,ShuffleNet相比其他结构展现出了优越的性能,例如在40 MFLOPs的计算预算下(在计算资源有限的情况下),其在ImageNet分类任务上的top-1错误率(绝对值7.8%)低于最近的MobileNet[12]
2024-10-09 12:23:17
1089
原创 Mobile net V系列详解 (2) Mobile net V2论文理论部分详解
在这篇论文中,我们描述了一种新的移动架构,它在多个任务和基准测试中提升了移动模型的最先进性能,同时覆盖了不同模型大小的广泛范围。我们还描述了将这些移动模型高效应用于物体检测的新框架,我们称之为SSDLite。此外,我们展示了如何通过深度学习框架DeepLabv3的简化形式(我们称之为Mobile DeepLabv3)构建移动语义分割模型。MobileNetV2基于一种倒置残差结构,在细小的瓶颈层之间建立了快捷连接。中间扩展层使用轻量级深度卷积来过滤特征,作为非线性的来源。
2024-09-21 19:53:32
1334
原创 Sigmoid引发的梯度消失爆炸及ReLU引起的神经元参数失效问题思考
因此,在包含ReLU激活函数的神经网络中,即使某些权重(如w1w_1w1)和输入的组合(如w1x1w_1x_1w1x1)贡献了负值,但只要整体加权和(zzz)为正,ReLU激活后的神经元就可以对损失函数的梯度做出响应,并且所有相关的权重(w1w_1w1w2w_2w2)在反向传播过程中都有可能被更新。这种机制展示了深度学习模型在训练过程中通过结合多个特征和权重以实现复杂函数近似的强大能力。
2024-09-21 19:51:37
1204
原创 Mobile net V系列详解 (3) 【Mobile net V2】代码可运行【pytroch】
可以看到数据集本身被存放在了三个文件夹下,其主要是花的图片,被分割成了验证集和训练集,模型训练主要就是采用训练集中的数据进行训练,验证集则用来对模型的性能进行测试。为了进一步增强数据集的结构化和规范化,每个图像通常会被放置在代表其类别的文件夹中。这意味着所有同类别的图像会被存放在相同的文件夹里。这样的存放方式不仅使数据集的管理变得简单化,更重要的是,为使用自动化工具提供了便利。例如,图像数据集的这种标准存放形式完美支持了 PyTorch 中的DatasetFolder工具直接进行处理。
2024-09-18 21:46:51
1284
原创 Mobile net V系列详解 (1) Mobile net V1论文理论部分详解
MobileNets,用于移动和嵌入式视觉应用。MobileNets 基于一个精简的架构,该架构使用深度可分离卷积来构建轻量级的深度神经网络。
2024-09-18 21:45:57
970
原创 pytorch项目实战-分类模型李宏毅 21 机器学习第三次作业代码详解 CNN图片分类任务
深度学习领域中,卷积神经网络(CNN)是一个绕不开的重要主题。本章节旨在深入探讨和实践CNN相关的概念和知识点,将依据李宏毅教授在2021年机器学习课程中的第三次作业代码作为例子。通过这一实例,读者将有机会加深对CNN的理解,并提升自己的实践技能。需要指出的是,本章节中展示的代码并未直接采用课程提供的baseline示例。这是因为基础模型的性能有限,而且与传统的深度神经网络(DNN)代码相比,并不提供更多的学习内容。因此,自行选择了一套演示代码,旨在提供更深入的学习和探索机会。
2024-06-01 14:29:46
1005
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人