自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

计算机领域博客,与时俱进的思想与技术。

结合哲学思想,力求集大成者。

  • 博客(136)
  • 收藏
  • 关注

原创 【ORB-SLAM2:十一、C++多线程理论与实践】

通过跟踪、局部建图和闭环检测三个核心线程,各司其职、相互协作,ORB-SLAM2 实现了高效的实时性能和鲁棒的位姿估计。ORB-SLAM2 是一种高效的视觉 SLAM 系统,采用多线程架构,以实现对不同任务的并行处理,提升系统性能和实时性。本节将详细解析 ORB-SLAM2 中的多线程设计与实现,包括线程划分、任务分配、数据共享与同步的具体细节。ORB-SLAM2 通过这些线程实现了任务的并行处理,各线程之间通过共享的数据结构和同步机制进行协作。如果插入了关键帧,将其与新生成的地图点传递给局部建图线程。

2025-01-20 17:40:05 546

原创 【ORB-SLAM2:十、CMake理论与实践】

CMake是一种跨平台的构建工具,广泛用于现代C++项目中。本章将详细介绍CMake的理论和实践,包括其概念、安装与使用技巧、常用指令的介绍以及库的管理等内容,并结合实践案例全面解析CMake在开发中的应用。CMake是一个开源的构建系统生成工具,可以跨平台生成本地化的构建系统文件(如Makefile、Visual Studio解决方案等)。CMake通过解析用户定义的CMakeLists.txt文件,根据指定的构建配置生成对应平台的构建文件。生成的中间文件较多,可能增加项目的管理成本。

2025-01-20 17:37:34 688

原创 【ORB-SLAM2:九、BA优化】

通过最小化图结构中的重投影误差,BA在提高地图精度和轨迹优化方面发挥了核心作用。本章将围绕BA优化展开,从图优化工具简介到优化函数分类,再到具体的局部BA和Sim3优化边的解析进行详细阐述。通过本章内容的详细分析,BA优化在SLAM系统中占据关键地位。从图优化工具g2o的使用,到优化函数分类,以及局部BA和Sim3优化边的解析,我们全面理解了BA优化的理论和实现细节。局部BA是SLAM系统中提高实时性的重要优化步骤,其目标是通过对局部区域进行优化,减少计算复杂度,同时保证局部精度。

2025-01-20 17:35:18 1102

原创 【ORB-SLAM2:八、闭环检测及矫正线程】

闭环检测及矫正线程是ORB-SLAM系统中地图优化的重要部分,其主要目标是通过检测场景中的闭环情况,校正累积的漂移误差,从而提高系统的鲁棒性和精度。本章将详细介绍闭环检测和矫正的核心内容,包括闭环示意图、闭环候选帧的检测、Sim(3)算法原理以及回环矫正的具体实现。回环矫正是闭环检测的最后一步,其目的是利用检测到的闭环信息更新地图和轨迹,消除漂移误差。闭环检测的第一步是寻找闭环候选帧,通过快速匹配技术定位可能形成回环的关键帧。闭环候选帧是当前帧在历史轨迹中可能形成闭环的关键帧。

2025-01-20 11:11:25 842

原创 【ORB-SLAM2:七、局部建图线程】

局部建图线程是ORB-SLAM中负责维护地图结构的核心部分,其作用是对已有地图数据进行优化和更新,同时生成新的地图点和关键帧,从而确保地图的准确性和时效性。无论是删除无效点和关键帧,还是生成新的地图点,亦或是进行高效的邻域搜索,所有步骤都在为ORB-SLAM系统的稳健性和实时性提供支持。邻域搜索是同步建图线程中一项重要的功能,通过在地图中搜索某点或关键帧的邻域信息,可以有效提高系统的效率和优化效果。新生成地图点是同步建图线程的重要功能,它通过三角化方法在关键帧之间生成新的地图点,补充和优化现有的地图数据。

2025-01-20 11:09:56 817

原创 【ORB-SLAM2:六、 跟踪线程】

跟踪线程是ORB-SLAM的核心模块之一,负责实时估计相机的位姿。本章将围绕跟踪线程的主要流程、参考关键帧跟踪、恒速模型跟踪、重定位跟踪及同步地图跟踪进行详细探讨。通过对跟踪线程的整体流程及各子模块的详细讨论,可以看出ORB-SLAM的跟踪线程不仅要保证实时性和精度,还需通过多种容错机制和动态调整应对复杂的实际场景。当系统发生跟踪丢失时,重定位模块通过与历史关键帧的匹配恢复位姿,是ORB-SLAM的一个重要容错机制。恒速模型利用相机的上一帧运动状态,预测当前帧的位姿,是跟踪线程中一种高效且轻量化的方法。

2025-01-20 11:00:19 422

原创 【ORB-SLAM2:五、 特征匹配】

特征匹配是ORB-SLAM系统中至关重要的一环,其性能直接影响地图构建的精度、位姿估计的稳定性以及闭环检测的可靠性。本章将详细探讨特征匹配在不同模块中的应用,包括单目初始化、视觉词袋方法、局部建图线程中的匹配与三角化,以及闭环线程中的Sim3搜索匹配。通过对特征匹配在单目初始化、视觉词袋、局部建图和闭环线程中的详细讨论,可以看出特征匹配是ORB-SLAM系统中贯穿始终的核心技术。其主要目标是通过多帧的特征点匹配,恢复相机的运动轨迹和初始地图点的三维位置。三角化是这一过程中关键的一步,用于生成新的地图点。

2025-01-20 10:57:09 887

原创 ORB-SLAM2:四、 地图点、关键帧、图结构】

地图点、关键帧和图结构是ORB-SLAM系统的核心组成部分,它们共同构建了SLAM系统的空间表示与数据组织方式。地图点(MapPoint)是SLAM系统中用来表示环境中三维特征点的抽象概念。这些点是通过相机观测和三角测量得到的,是地图构建的基础。关键帧是相机轨迹中的一帧,它包含相机的位姿、特征点、描述子等信息。地图点与多帧图像中的特征点建立关联,用于优化和重投影误差计算。将三角测量得到的三维点存储为地图点,并记录其被观测的帧信息。关键帧用作地图点的创建和更新的参考帧。

2025-01-20 10:55:16 773

原创 【ORB-SLAM2:三、 地图初始化】

通过对多视图几何、卡方检验、单目SFM和双目稀疏匹配的详细介绍,能够深入理解ORB-SLAM中地图初始化的重要性及其实现原理,为构建鲁棒的SLAM系统提供基础支持。初始化过程中,SLAM系统从输入的关键帧中提取并三角化出第一批稀疏的三维点云,为后续的地图扩展和优化奠定基础。地图初始化为SLAM系统提供了一个全局参考坐标系,使后续的位姿估计和地图扩展能够在一致的框架内进行。多视图几何是SLAM系统地图初始化的理论基础,用于计算场景的三维信息和相机位姿。

2025-01-20 10:53:18 624

原创 【ORB-SLAM2:二、 ORB 特征点提取】

特征点去畸变是ORB算法处理图像特征点的重要步骤之一,尤其是在使用广角镜头或鱼眼镜头的情况下,摄像头的镜头畸变可能会导致特征点位置的偏移,进而影响特征匹配和SLAM系统的精度。在ORB特征提取过程中,特征点去噪是关键步骤,用于提高特征点的可靠性与稳定性。去畸变是特征点提取过程中不可或缺的一环,为特征点的后续处理奠定了坚实基础,确保了整个视觉SLAM系统的精度与鲁棒性。特征点角度的计算是实现旋转不变性的核心。在特征点检测和描述过程中,ORB算法引入了高斯滤波和尺度空间处理,以提高特征点的稳定性和准确性。

2025-01-20 10:48:40 1058

原创 【ORB-SLAM2:一、 简介】

ORB-SLAM2是一种开源的、实时的基于特征的视觉SLAM系统,由RaúlMur-Artal等人于2017年提出。它是ORB-SLAM的升级版本,支持单目、双目和RGB-D三种模式,能够实现高精度的相机定位和稠密环境的稀疏地图构建。在ORB-SLAM2的代码中,变量的命名具有一定的规律和风格。这一功能显著提高了系统的长期鲁棒性和地图的全局一致性。ORB-SLAM2在开源平台GitHub上提供代码、文档和示例,拥有活跃的用户和开发者社区,这为其快速推广和改进奠定了基础。

2025-01-19 21:21:02 1050

原创 【视觉惯性SLAM:二十、视觉 SLAM 的现在与未来】

视觉SLAM(SimultaneousLocalizationandMapping,同时定位与建图)是机器人与计算机视觉领域的重要技术,广泛应用于无人驾驶、增强现实(AR)、虚拟现实(VR)、无人机导航和工业自动化等领域。本章以视觉SLAM的发展历程为切入点,深入探讨视觉惯性SLAM的框架及数据集,并展望未来的发展方向。在未来,随着深度学习、多传感器融合和硬件技术的不断进步,SLAM系统将进一步适应动态、复杂、多样化的应用场景。2015年后,视觉SLAM技术逐步走向成熟。

2025-01-18 21:36:46 943

原创 【视觉惯性SLAM:十九、ORB-SLAM3 中的闭环及地图融合线程】

闭环检测通过识别当前帧和历史关键帧的重叠区域,为全局优化提供约束,显著降低误差。例如,利用语义分割先划分场景类别,仅对同类场景的关键帧进行匹配,从而减少搜索空间。为了进一步提高检索效率,可以结合时空信息(如运动轨迹和位姿变化)对候选关键帧进行约束,排除明显不相关的关键帧。在找到初始候选关键帧后,需要计算当前帧与候选关键帧之间的位姿变换。候选关键帧可能包含误匹配,为避免错误优化影响全局地图一致性,必须对候选关键帧进行校验。地图融合负责将多源地图整合为一致的全局地图,包括纯视觉地图融合和视觉惯性地图融合。

2025-01-18 21:33:46 943

原创 【视觉惯性SLAM:十八、ORB-SLAM3 中的局部建图流程】

局部建图是视觉SLAM系统中一个核心模块,其主要目的是在当前帧和附近关键帧之间建立高质量的局部地图,同时优化局部地图中所有特征点的三维位置和相关关键帧的位姿。局部建图的输入是当前帧的特征点和局部关键帧的特征点匹配关系,其输出是经过优化的地图点和关键帧位姿,以及进一步剔除的动态点或误差点。局部建图提供了更精确的地图点位置和关键帧位姿,这些信息将作为输入,传递给全局建图模块,从而提高全局优化的初始条件和效果。通过对局部区域的频繁优化,可以减少累积误差,增强地图点的质量,为后续的全局建图提供更可靠的数据。

2025-01-18 21:29:26 665

原创 【视觉惯性SLAM:十七、ORB-SLAM3 中的跟踪流程】

ORB-SLAM3的跟踪模块是整个系统的重要组成部分,负责实时确定相机在三维空间中的姿态位置,并保持关键帧之间的连续性。这些变化主要体现在对多模态输入的支持、跟踪失败的恢复机制以及对动态场景的适应性增强上。ORB-SLAM3的跟踪流程是一个动态的、实时更新的过程,其流图既直观地表达了数据流动关系,也为开发和调试提供了重要依据。第一阶段是特征点的提取与初始匹配过程。新增的状态管理大幅提升了ORB-SLAM3在复杂场景中的稳定性和鲁棒性。第一阶段的改进为后续的姿态估计和地图更新奠定了更坚实的基础。

2025-01-18 21:23:52 565

原创 【视觉惯性SLAM:十六、 ORB-SLAM3 中的多地图系统】

此外,在动态场景中,针对不同区域构建独立地图,也能提高定位的鲁棒性。多机器人系统中,不同机器人可以分别维护独立地图,完成特定区域的建图任务,然后将这些地图统一到全局模型中。虽然是新地图,但仍需要与全局地图保持一定的关联性,比如记录新地图的初始位姿,或存储与旧地图的重叠区域信息,方便后续融合。在长期操作场景中,多地图可以动态更新已有地图,移除旧地图,或引入新地图,避免因单一地图规模增长而带来的存储和计算压力。在动态场景中,例如家具搬动、环境改造等,已有地图可能已经失效,系统需要放弃旧地图并创建新的地图。

2025-01-18 21:21:26 765

原创 【视觉惯性SLAM:十五、ORB-SLAM3中的IMU预积分】

视觉惯性紧耦合(Visual-Inertial Tight Coupling)在 ORB-SLAM3 中的作用不可替代,是实现高鲁棒性和高精度定位的核心技术。单一的视觉 SLAM 主要依赖于图像特征进行定位和建图,这种方法虽然能够在许多环境中获得良好的效果,但其鲁棒性容易受到动态变化、光照条件恶化以及环境特征稀缺等因素的限制。例如,昏暗场景或快速运动可能导致视觉特征丢失,从而引发系统的失败。IMU 提供的惯性信息包括加速度和角速度,可以很好地弥补视觉信号的短板。

2025-01-17 20:05:22 1438

原创 【机器学习:三十四、贝叶斯分类器:原理、方法及应用】

贝叶斯分类器以其理论的严谨性和实际应用的高效性,在众多机器学习任务中占有重要地位。尽管面临独立性假设的限制,改进方法和结合其他技术的尝试不断拓展其应用范围。未来,贝叶斯分类器在数据驱动的复杂场景中仍将发挥重要作用。贝叶斯分类器是一类基于贝叶斯定理的概率分类算法,因其简单性和高效性而广泛应用于文本分类、垃圾邮件检测和医学诊断等领域。是一种图模型,表示变量之间的条件依赖关系,能够捕捉特征间的复杂关系。放宽特征独立性假设,通过加入部分特征相关性提高模型性能。假设特征之间相互独立,简单高效,适用于文本分类等任务。

2025-01-17 16:57:32 667

原创 【机器学习:三十三(二)、支持向量机(SVM)的核函数:概念、类型与应用】

通过选择合适的核函数和调节相应的参数,SVM可以处理复杂的分类和回归任务。在实际应用中,高斯核因其灵活性和强大的非线性能力被广泛采用,而针对特定任务设计的自定义核函数则为领域问题提供了更高的解决效率。随着数据规模和复杂性的不断增加,核函数的优化与创新仍是未来研究的重点方向。核函数的引入使得支持向量机无需显式计算映射函数,就能够在高维空间中处理这些复杂的非线性问题。不同的核函数适用于不同类型的数据分布。核函数的选择对SVM模型的性能有显著影响。在基因分类或蛋白质结构预测中,通过高斯核捕捉复杂的生物特性。

2025-01-17 16:54:43 1211

原创 【机器学习:三十三(一)、支持向量机】

支持向量机作为经典的机器学习算法,因其理论严谨性与良好的泛化能力,在多个领域广泛应用。尽管在大规模数据场景中存在一定局限性,但通过算法优化和与其他技术的结合,SVM的适用性和性能得到持续提升。支持向量机(SVM)是一种用于分类和回归任务的机器学习算法,以其高效处理高维数据和非线性问题的能力而闻名。SVM的目标是找到一个超平面,使得间隔最大化,从而增强模型的鲁棒性和泛化能力。在三维空间中,是平面;支持向量机的核心思想是找到一个超平面将不同类别的样本分开,并使分类边界到最近样本点的距离(即分类间隔)最大化。

2025-01-17 16:52:05 1134

原创 【机器学习:三十二、强化学习:理论与应用】

*强化学习(Reinforcement Learning, RL)**是一种机器学习方法,旨在通过试验与反馈的交互,使智能体(Agent)在动态环境中学习决策策略,以最大化累积奖励(Cumulative Reward)。强化学习是机器学习的重要分支,其特点在于动态环境中的决策优化能力。未来,强化学习将进一步融合深度学习、迁移学习等技术,推动更智能、更高效的人工智能系统的构建。相比监督学习和无监督学习,强化学习更关注长期目标,而非简单地从标签中学习。:直接优化策略参数,通过梯度上升找到最优策略。

2025-01-17 16:37:26 942

原创 【机器学习:三十一、推荐系统:从基础到应用】

推荐系统是一种根据用户的兴趣和偏好,为用户提供个性化建议的技术,广泛应用于电子商务、流媒体平台和社交媒体等领域。通过分析用户行为数据,推荐系统可以帮助用户发现他们感兴趣的内容,同时提升平台的用户体验和商业收益。推荐系统在现代信息社会中具有重要作用,其技术从基础的协同过滤发展到复杂的深度学习和多模态建模。未来,推荐系统将更加智能化、个性化,为用户带来更加丰富和精准的体验,同时面临新的技术挑战和伦理问题。

2025-01-17 12:42:59 979

原创 【机器学习:三十、异常检测:原理与实践】

异常检测(Anomaly Detection)是一种用于识别数据中异常模式或异常点的技术,旨在发现与大部分数据行为不同的样本。它在工业监控、网络安全、金融欺诈检测等领域具有广泛应用。异常检测的目标是找到那些偏离正常行为的数据点,这些数据点可能代表错误、故障、攻击或其他需要特别关注的情况。异常检测作为数据分析和安全保障的重要工具,广泛应用于各个行业。通过不同的方法选择和技术优化,异常检测可以有效发现数据中的潜在异常模式。在技术不断进步的驱动下,异常检测的应用场景和效果将进一步拓展和提升。

2025-01-17 12:41:57 953

原创 【机器学习:二十九、K-means算法:原理与应用】

K-means作为一种简单高效的聚类算法,在多个领域得到了广泛应用。尽管存在局限,但通过改进初始中心选择、结合其他方法等手段,K-means的性能和适用性得以大幅提升。随着大数据和深度学习的兴起,K-means在特征工程、数据预处理等环节中仍将扮演重要角色,推动机器学习应用的进一步发展。K-means的简单性和高效性使其在模式识别、图像处理、市场分析等领域具有广泛应用。K-means是一种经典的无监督学习算法,广泛应用于数据聚类任务。,K-means实现簇内相似性最大化,簇间相似性最小化。

2025-01-17 12:41:02 914

原创 【机器学习:二十八、无监督学习】

无论是K-means的简单高效、异常检测的精准识别,还是推荐系统的个性化服务,它都在实际应用中发挥着不可替代的作用。无监督学习是机器学习的一类任务,目标是在没有标签数据的情况下从数据中发现潜在模式、结构或分布。与监督学习不同,无监督学习不依赖于标注数据,而是通过算法在数据中挖掘隐藏的信息。K-means是一种最常用的聚类算法,通过迭代地分配数据点到最近的中心并更新中心位置,达到数据分组的目的。推荐系统是无监督学习的一个重要应用,通过挖掘用户与商品的关系,为用户提供个性化推荐。

2025-01-17 12:39:46 808

原创 【机器学习:二十七、决策树集合】

通过对决策树集合的全面分析,可以发现其在性能、灵活性和适用性上的突出优势。尽管存在一定的局限性,但结合高效的优化策略和现代计算技术,决策树集合在未来仍有巨大的发展潜力,是解决复杂问题的重要工具之一。决策树集合是一种基于多个决策树模型集成的机器学习方法,通过组合多个弱学习器(决策树)形成一个强学习器,显著提升预测性能和泛化能力。决策树集合广泛应用于金融(信用评分、风险预测)、医疗(疾病诊断)、电商(用户推荐)、自然语言处理(文本分类)等多个领域。集成决策树的方法主要分为两类:基于并行的方法和基于序列的方法。

2025-01-17 12:38:46 848

原创 【机器学习:二十六、决策树】

通过以上多维度的分析,决策树作为一种经典且实用的机器学习方法,在数据挖掘和人工智能领域占据重要地位。尽管存在一定局限性,但结合其他技术的优化和发展,它仍然是解决实际问题的强大工具之一。决策树是一种基于树状结构的监督学习算法,既可以用于分类任务,也可以用于回归任务。决策树在实际应用中可能面临过拟合、噪声敏感等问题,通过以下方法可以优化其性能。决策树算法有多种实现版本,不同版本在分裂标准、适用任务和优化策略上各有差异。决策树的构建主要基于数据划分的过程,通过选择最佳分裂点来逐步生成树结构。

2025-01-17 12:37:11 1170

原创 【机器学习:二十五、处理倾斜数据集的完整指南】

倾斜数据集问题是机器学习中的常见难题,但通过数据处理、算法改进和指标优化等多种手段,可以有效提升模型在不平衡数据上的性能。未来,随着生成模型和深度学习技术的发展,处理倾斜数据集的方法将更加智能化和自动化,例如通过自监督学习或无监督学习生成高质量的少数类样本。倾斜数据集(Imbalanced Dataset)是指在分类任务中,不同类别的数据分布极为不平衡的情况。例如,在信用卡欺诈检测中,正常交易占99%,欺诈交易仅占1%。在实际项目中,通常需要综合采用数据处理和算法改进的方法,以应对倾斜数据集的挑战。

2025-01-17 12:35:59 769

原创 【机器学习:二十四、机器学习项目的完整周期】

机器学习项目的完整周期包括从问题定义到模型部署的多个阶段,每一步都需要与业务需求和技术实现紧密结合。通过科学的数据处理、高效的模型训练和优化以及合理的部署与维护,可以确保机器学习项目的成功实施并产生实际价值。机器学习项目的开发是一个复杂的过程,通常包括从问题定义到模型部署的多个阶段。这一阶段是项目成功的基础,直接影响后续的开发流程和结果。高质量的数据是成功的基础,因此数据收集与处理是机器学习项目的核心阶段之一。特征工程需要结合业务知识和数据科学技术,既是科学的艺术,也是艺术的科学。

2025-01-17 12:34:55 612

原创 【机器学习:二十三、迁移学习】

迁移学习(Transfer Learning)是机器学习中的一种方法,它通过将一个领域中学到的知识(通常称为源领域)应用到另一个相关领域(目标领域)来完成任务。传统机器学习模型通常从零开始训练,依赖大量标注数据。而迁移学习则不同,它通过迁移已有的知识,不仅降低了对目标领域标注数据的需求,还能够提升模型的学习效率和精度。比如,一个在ImageNet数据集上训练的图像分类模型可以迁移到医学影像分类任务中,通过微调让模型适应新的任务。

2025-01-16 23:49:33 1225

原创 【机器学习:二十二、机器学习项目开发的技巧】

误差分析是通过评估模型错误分类的样本,寻找改进模型的潜在方向的方法。数据是否均衡(类别分布是否偏斜)。模型是否对某些特定特征敏感(如特定词汇)。是否存在系统性错误(例如,将特定类型的正常邮件错误分类为垃圾邮件)。机器学习开发需要高度重视迭代和误差分析,结合项目需求逐步优化模型。通过规范化的流程,可以减少开发过程中的不确定性,提升模型性能。数据增强是通过对现有数据进行轻微变动(如旋转、裁剪、噪声注入等),生成新的数据样本的过程。通过模拟器或生成模型(如GAN)合成全新数据。

2025-01-16 23:40:02 1044 1

原创 【机器学习:二十一、避免高偏差和高方差】

针对神经网络的高偏差和高方差问题,需要结合模型结构、正则化和数据处理多方面进行优化。

2025-01-16 23:36:10 766

原创 【机器学习:二十、拆分原始训练集】

通过二拆分或三拆分,能够有效避免数据泄露,准确评估模型性能。将数据集分为训练集(training set)、验证集(validation set)和测试集(test set),比例通常为70%:15%:15%。在机器学习任务中,模型性能的提升通常受限于训练数据、模型架构、优化方法及超参数设置等。将数据集分为训练集(training set)和测试集(test set),通常比例为80%:20%或70%:30%。合理拆分训练集、验证集和测试集是评估模型性能的基础,确保模型在未见数据上的泛化能力。

2025-01-16 23:33:29 678

原创 【机器学习:十九、反向传播】

计算图(Computation Graph)是一种有向无环图,用于表示数学表达式中的计算过程。每个节点表示一个操作或变量,每条边表示操作的依赖关系。通过计算图,可以轻松理解和实现反向传播。反向传播是神经网络训练的核心,通过计算梯度并更新参数,使得网络能够有效学习复杂的映射关系,从而提高模型的泛化能力。多层网络通过将链导法则逐层应用,从输出层反向传播至输入层。每层的梯度依赖于后一层的梯度。,其计算图包括三个节点(加法、乘法、输入变量)和两条边。通过计算偏导数,可以更新参数。例如,对于两层网络的损失函数。

2025-01-13 22:23:49 1024

原创 【机器学习:十八、更高级的神经网络概念】

Adam(Adaptive Moment Estimation)是一种优化算法,结合了动量梯度下降和 RMSProp 的优点,在处理稀疏梯度和高维空间优化时表现尤为出色。:密集层是深度学习中最基本的神经网络层,每个神经元与上一层的所有神经元相连,进行线性变换后加上激活函数。卷积层提取局部特征,池化层减少维度,全连接层用于分类。:卷积神经网络主要用于处理结构化数据(如图像),其核心是通过局部连接和共享权重提取特征。Adam 的收敛速度通常比传统的 SGD 快,特别是在具有高噪声的目标函数中表现优异。

2025-01-13 22:02:34 886

原创 【机器学习:十七、多分类问题和Softmax函数】

多分类问题是指一个模型需要从多个类别中选择一个类别作为输出的任务。与二分类问题不同,多分类任务中类别的数量。

2025-01-13 11:18:33 1192

原创 【机器学习:十六、其他的激活函数】

输出范围为 (0, 1),适合二分类问题。: Tanh 是 Sigmoid 的改进版本,其输出范围为 (-1, 1),对称于原点,减少了非零中心问题。激活函数的选择直接影响模型的收敛速度和最终性能。ReLU 的简单计算和稀疏激活特性使其成为主流激活函数。:激活函数是神经网络的核心,选择得当能显著提升模型性能。Swish 在深度网络中性能优于 ReLU。: 更平滑的激活函数,适合高性能模型。

2025-01-12 22:49:53 1067

原创 【机器学习:十五、神经网络的编译和训练】

神经网络的编译和训练是深度学习的核心环节。通过选择合适的损失函数和优化器,结合数据的有效预处理,能够实现高效的模型训练与预测。TensorFlow 是深度学习中最为广泛使用的框架之一,提供了灵活的接口来构建、编译和训练神经网络。是神经网络模型在 TensorFlow 中的关键步骤,用于指定优化器、损失函数和评估指标。是 TensorFlow 模型训练的核心方法,用于指定训练数据、批量大小、训练轮数等。以上代码展示了从加载数据到模型训练和测试的完整流程,后续小节将分解具体步骤进行详解。

2025-01-12 22:44:59 1172

原创 【Ubuntu与Linux操作系统:十二、LAMP平台与PHP开发环境】

LAMP 是一种经典的开源 Web 开发平台,代表 Linux(操作系统)、Apache(Web 服务器)、MySQL(数据库管理系统)和 PHP(脚本语言)。这种组合被广泛应用于动态网站和 Web 应用的开发与部署。

2025-01-12 22:38:48 840

原创 【Ubuntu与Linux操作系统:十一、Java与Android应用开发】

Java是一种广泛使用的面向对象编程语言,以其平台无关性和强大的生态系统而闻名。它在Android开发中占据重要地位,同时也是企业级应用和服务器开发的首选语言。:Java开发的基础是Java Development Kit(JDK)。:将JAVA_HOME和PATH添加到环境变量中,确保编译和运行Java程序正常。Java是Android的原生开发语言,负责应用逻辑的实现和与Android系统的交互。Android开发中的Activity、Service等核心组件均基于Java类构建。

2025-01-12 22:38:08 1125

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除