- 博客(108)
- 资源 (5)
- 收藏
- 关注
原创 算法价值6-梯度下降
这些变种的区别主要在于每次更新参数时所使用的样本数量不同,但核心思想都是相似的:沿着损失函数的梯度方向调整参数的值,以逐步接近最优解。通常的停止条件可以是达到最大迭代次数、损失函数的变化小于某个阈值,或者梯度的大小小于某个阈值。它的核心思想是通过迭代调整参数的值,使目标函数的值逐渐趋于最小值。通过这个简单的例子,我们可以看到梯度下降算法在线性回归模型中的应用,它帮助我们找到了最优的模型参数。因此,通过根据偏导数的正负来调整参数的值,我们可以朝着损失函数的最小值点移动,从而实现优化目标。
2024-02-26 09:54:51
956
原创 软件价值16-敲钉子
4. 用户连续点击锤子,依次触发 hammer2()、hammer3()、hammer4() 函数,每次都有类似的动作,只是钉子被敲进木板的程度不同,直到最后钉子被完全敲进木板,完成敲钉子的过程。1. 页面加载后,显示了一个标题 "Hammer the nail into the wood" 和两个元素,一个是代表钉子的。3. 当用户再次点击锤子时,会触发 hammer1() 函数。这段程序通过一系列的点击事件和样式修改,实现了一个简单的敲钉子动画。这段程序实现了一个简单的动画效果,模拟了敲钉子的过程。
2024-02-23 08:36:13
454
原创 软件价值15-碰撞弹球2.0
gravity() 方法是 Projectile 类中的一个重要方法,用于模拟球体受到重力的影响。碰撞弹球2.0,小球点击后四处迸射,因为球更小,没有设置为消失,模拟得更真实,观察得可以更全面。gravity() 方法模拟了球体在重力作用下的运动,包括向下加速、碰撞检测以及反弹效果。
2024-02-22 09:38:42
471
原创 软件价值14-碰撞弹球
2. 如果球的位置超出了画布的底部边界 y + radius > canvas.height,即球触底,会将球的位置调整到底部边界,并且垂直速度乘以一个负数以实现向上弹起的效果。3. 如果球的位置超出了画布的左侧或右侧边界 x + radius > canvas.width 或 x - radius < 0,即球触到了左侧或右侧的墙壁,会将球的水平速度 velocityX 乘以 -1,实现水平方向的反弹。这样,在每一帧的动画循环中,球与边界的碰撞会根据上述逻辑进行处理,从而实现了球在碰撞后的弹起效果。
2024-02-21 10:10:14
913
原创 安卓价值2-Macrodroid在其它app下执行两步就停
这些命令将授予 MacroDroid 写入某些受限设备设置的权限,这些设置通常只能由系统应用程序(或使用 root hack)完成。它允许用户创建个性化的自动化工作流程,以简化日常任务并增强手机的功能。下它执行了两步任务就停止了,但切换回macrodroid就又继续执行了,这就像是程序进程被挂起了一样。百思不得其解,后来经过不断研究才发现,是vivo手机系统的电池策略暂停了它的执行。3. 在列表中找到MacroDroid,并启用允许后台高耗电。但使用下来会发现一些奇怪的问题,比如在其它app处于。
2024-02-15 10:44:59
1389
原创 安卓价值1-如何在电脑上运行ADB
(Android Debug Bridge)是Android平台的调试工具,它是一个命令行工具,用于与连接到计算机的Android设备进行通信和控制。ADB在Android开发中被广泛使用,可以帮助开发人员调试和测试应用程序,以及进行设备管理和性能分析。同时,ADB也为自动化测试和设备管理提供了便利。,将USB模式更改为“文件传输(MTP)”模式。2. 解压缩后将文件夹(比如C:\platform-tools)加入到环境变量的Path里。6. 获取设备的系统信息和日志。3. 启动和停止应用程序。
2024-02-14 20:33:15
1987
原创 软件价值13-水族箱
每一条鱼儿都是如此美丽、灵动,它们的存在让整个空间充满了生命的力量,让人心情愉悦,仿佛身临其境般感受到了大自然的美妙。在这里,你可以忘却烦恼,感受到内心的平静和安宁。闭上眼睛,想象一下,透过清澈的玻璃,你仿佛看到了一个小小的海洋世界,那里栖息着各色各样的鱼儿。在这个水族箱里,水清澈见底,微光透过水面洒下,投射出斑斓的光影。在这柔和的光线下,鱼儿们如梦幻般地穿梭来回,它们的身影时隐时现,仿佛在跳着优美的舞蹈。打开你的心扉,让这个水族箱带给你一份宁静和美好,让那些灵动的鱼儿在你的心灵深处留下美好的印记。
2024-02-13 20:11:21
558
原创 机器学习12-基本感知器
这一行代码是一个外部循环,它控制训练的迭代次数,即训练的轮数。`self.epochs` 表示训练的总轮数,_ 是用作循环中临时变量的一个惯例,表示在循环体中不需要使用的值。这一行代码调用了 predict 方法,对当前输入样本 X[i] 进行预测,得到感知器的输出结果 y。这一行代码计算了当前样本的预测误差 e,即期望输出 d[i] 与感知器预测输出 y 的差值。每个输入节点都与输出节点连接,并且具有一个对应的权重参数,用来调节输入的。3. 激活函数根据加权求和的结果输出一个二进制值,作为感知器的输出。
2024-02-13 12:19:48
1578
原创 知识价值2-什么是IDE?新手用哪个IDE比较好?
IntelliJ IDEA是一款针对Java开发的IDE,Community Edition是免费开源的版本,提供了丰富的功能和智能代码编辑器,适合Java初学者和专业开发人员。VS Code是一款轻量级、免费开源的代码编辑器,支持多种编程语言和平台,具有丰富的扩展生态系统,可以根据需要安装不同的插件进行功能扩展。以上是一些常用的适合新手的IDE,选择合适的IDE取决于个人的需求和偏好,可以根据自己的情况进行选择。的缩写,是一种软件应用程序,旨在提供集成的工具集,以方便开发人员进行软件开发。
2024-02-11 09:33:32
1544
原创 软件价值11-简单计算器
可以把计算器做得复杂,把各种高级数学运算都加进去。用python的tkinter做的。计算的核心部分是用了eval函数。
2024-02-10 19:04:51
459
原创 机器学习11-前馈神经网络识别手写数字1.0
在这里,我们有一个包含 128 个神经元的隐藏层,以及一个包含 10 个神经元的输出层。输出层产生神经网络的输出,这里是一个包含 10 个元素的向量,每个元素表示对应类别的概率。前两张画笔比较细,第三张时minst的5,第四张是用了粗笔自己写的5,最终结果是就minst预测对了。,它在输入层和输出层之间包含一个或多个隐藏层,通过学习逐步提取和组合特征来进行分类或回归任务。输入层接收输入数据,这里是一个 28x28 的灰度图像,每个像素值表示图像中的亮度值。在这个示例中,使用的神经网络是一个简单的。
2024-02-09 11:48:16
1966
1
原创 机器学习10-特征缩放
通过除以特征的标准差,可以将特征的尺度统一为相似的范围。这是因为不同特征可能具有不同的数值范围,如果某个特征的值较大,它可能会在模型中占据主导地位,而忽略其他特征。在实际应用中,特征缩放是机器学习中的一项常见预处理步骤,有助于确保不同特征之间的尺度不同不会影响模型的性能。通过减去均值并除以标准差的方式,将数据的分布调整为均值为 0,标准差为 1。其中, x 是原始数据中的每个数据点, mean 是均值, std 是标准差。方法完成的,该方法计算数据的均值和标准差,并将数据进行相应的缩放。
2024-02-09 08:28:07
2091
原创 机器学习9-随机森林
这意味着每个决策树的训练数据都是从原始数据集中随机选择的,并且每个样本有可能在一个树中被多次选择,而在另一个树中可能一次都没有被选择。(Random Forest)是一种集成学习方法,用于改善单一决策树的性能,通过在数据集上构建多个决策树并组合它们的预测结果。4. 投票机制:随机森林中的每个决策树都对新样本进行分类,最终的分类结果是通过投票机制确定的。即,每个树投票给某一类别,最终选择得票最多的类别作为随机森林的最终预测结果。每个决策树都是一种分类器,通过对输入数据进行一系列的决策来进行分类。
2024-02-09 08:23:50
1867
原创 机器学习8-决策树
3. 终止条件:在每个节点处,都会检查是否满足某个终止条件,例如节点中的样本数量小于阈值,或者树的深度达到预定的最大深度。1. 可解释性:决策树的规则易于理解,可视化呈现直观的分裂过程,使决策过程变得透明。3. 非参数性:不对数据的分布做出具体假设,因此对于不同类型的数据集都具有灵活性。4. 特征重要性:决策树可以提供每个特征的重要性,帮助识别影响预测的关键因素。1. 选择特征:从所有特征中选择一个最佳的分裂标准,以将数据集分成两个子集。2. 适应性:能够适应不同类型的数据,包括离散型和连续型特征。
2024-02-09 08:21:42
2386
3
原创 软件价值10-数字时钟
这个函数用于获取当前系统时间并将其格式化为小时:分钟:秒 AM/PM 的字符串格式。然后将这个字符串设置为 Label 控件 lbl 的文本内容,并使用 after 方法每隔一秒钟调用一次 time 函数,实现实时更新时间。这个程序是一个使用 Python 的 Tkinter 模块创建的简单时钟应用。这个程序通过不断更新 Label 控件的文本内容,实现了一个简单的时钟应用。这段代码创建了一个名为 "Clock" 的 Tkinter 窗口对象。进入 Tkinter 的事件循环,等待用户交互事件的发生。
2024-02-08 09:58:53
417
原创 设计模式3-责任链模式
责任链模式可以用于按照日志级别(如 Debug、Info、Warning、Error)的顺序处理日志消息,每个处理者负责记录特定级别的日志,如果某个处理者无法处理某个级别的日志,则将日志传递给下一个处理者。责任链模式可以用于将订单处理流程分解为多个处理者,每个处理者负责处理特定阶段的订单处理,如果一个处理者无法处理订单,则将订单传递给下一个处理者。每个处理者可以检查用户的权限,并决定是否允许执行特定操作,如果一个处理者无法确定用户的权限,则将请求传递给下一个处理者。否则,将请求传递给下一个处理者。
2024-02-08 09:26:25
1775
原创 设计模式2-对象池模式
它通过预先创建一组对象并将它们保存在池中,以便在需要时重复使用,从而避免了频繁的创建和销毁操作,提高了性能和资源利用率,换言之,用。但是,Object Pool 也可能存在一些缺点,比如可能会增加代码的复杂性,特别是在处理对象状态和资源管理方面。此外,如果对象的创建和销毁开销相对较小,使用对象池可能会产生额外的开销。如果池中有可用对象,则获取一个并标记为“已使用”,如果池为空,则可能会等待直到有可用对象。当池中没有可用对象时,工厂可能会创建新的对象,但通常是预先创建一组对象并初始化它们。
2024-02-07 13:50:32
1494
原创 设计模式1-访问者模式
当使用访问者模式时,定义新的操作就是创建新的实现了访问者接口的具体访问者类。每个具体访问者类负责实现一组特定的操作,而这些操作可以是全新的、与原有操作不相关的,或者是对现有操作的扩展。这样,通过不同的访问者,我们可以执行不同的操作,而不需要修改元素的类。访问者模式的主要优势在于当需要在一组对象上执行一些复杂的操作时,你可以通过添加新的访问者而不是修改每个元素的类来扩展系统。定义了在对象结构中访问元素时的新操作接口。定义了接受访问者的接口,通常会有多个不同的元素,每个元素实现了接口并提供了接受访问者的方法。
2024-02-04 19:19:59
802
原创 软件价值6-扫雷游戏
一旦揭开,格子会显示相应的数字,表示周围有多少颗地雷。如果揭开的格子下埋有地雷,游戏结束。游戏窗口的大小为400x400,每个格子的大小为20x20。玩家的目标是揭开所有安全格子,而不触发任何地雷。揭开格子的同时,会得到相应的信息,比如周围有多少颗地雷。其中,一些格子下埋有地雷,而其他格子是安全的。玩家可以右键点击矩形区域内的格子,将其标记为可能有地雷。在游戏循环中,通过监测鼠标点击事件,实现了左键点击揭开格子的功能。的经典游戏,它要求玩家在不揭开地雷的情况下,通过已知信息推断哪些格子是安全的。
2024-02-04 14:22:44
520
原创 机器学习7-K-近邻算法(K-NN)
(K-近邻算法,简称KNN)是一种基本的监督学习算法,用于解决分类和回归问题。KNN的核心思想是基于距离度量,在特征空间中找到最近的K个样本,然后使用它们的标签进行决策。
2024-02-04 10:03:30
679
原创 软件价值5-Tic Tac Toe
目标是先在水平、垂直或对角线上连续放置三个自己的标记(通常是"X"或"O"),即可获胜。方法处理每次点击按钮的事件,如果当前点击的位置为空格,则将当前玩家的标记('X'或'O')放置在该位置,并检查游戏是否结束。1. 这行代码是为Tic Tac Toe游戏初始化一个个按钮,设置按钮的点击事件,当按钮被点击时,调用。方法检查是否有玩家赢得了游戏,返回赢家的标记('X'或'O'),如果没有赢家则返回 None。2. 两名玩家轮流下棋,一个是"X",另一个是"O"。方法重置游戏状态,清空棋盘,准备新的游戏。
2024-02-03 19:54:13
495
原创 算法价值4-动态规划
动态规划的基本思想是将原问题划分为若干个子问题,先求解子问题,然后保存子问题的解,最后通过组合子问题的解来得到原问题的解。是动态规划问题的一个重要性质,指的是问题的最优解可以通过子问题的最优解来构造。具体来说,如果一个问题的最优解包含了其子问题的最优解,那么该问题就具有最优子结构性质。在动态规划中,我们利用这一性质,将大问题划分为小问题,并通过解决小问题得到大问题的解。根据子问题之间的关系,建立状态转移方程,描述问题的状态之间的演变过程。性质的问题,可以显著减少问题的重复计算,提高算法的效率。
2024-02-03 18:21:20
1029
原创 机器学习6-逻辑回归
逻辑回归也可以扩展到处理多分类问题,这时通常使用一对多(One-vs-Rest)或一对一(One-vs-One)的方法。对于逻辑回归,常用的损失函数是交叉熵损失函数(Cross-Entropy Loss),也称为对数损失函数。逻辑回归模型假设输出是二进制的,通常表示为0或1。3. 市场营销:预测客户是否购买某个产品或服务,基于客户的购物历史、在线行为等特征。训练完成后,可以使用学到的参数确定决策边界,即在特征空间中将两个类别分开的边界。因为没有画出原始数据,无法直观比较,不过对测试数据的预测还是比较准的。
2024-02-03 13:03:30
1877
原创 机器学习5-线性回归之损失函数
这个过程是通过迭代优化算法来找到最优参数,使得模型的预测值与实际值之间的均方误差最小。我们通过最小化损失函数来找到最优的参数。这就是对于线性回归的均方误差损失函数的偏导数计算过程。线性回归的目标是找到一条直线,使得预测值与实际值的平方差最小化。会根据这些偏导数的信息,迭代更新参数,直至损失函数收敛到最小值。求解损失函数的过程就是找到能够使损失函数最小化的模型参数。3. 更新参数:使用梯度信息来更新参数,减小损失函数值。2. 计算梯度:计算损失函数对每个参数的偏导数。是学习率,控制每次参数更新的步长。
2024-02-03 12:32:22
1343
原创 算法价值3-贪心算法
(Greedy Algorithm)是一种优化问题的算法范式,它通过每一步的局部最优选择来达到全局最优解。在每一步上做出当前情况下的最佳选择,而不考虑全局未来的影响。贪心算法通常比较简单、高效,并且适用于一些特定类型的问题。1. 选择当前状态下的最优解。2. 不考虑之前选择对未来的影响。找零钱问题给定一些面额不同的硬币,要求用最少的硬币凑出某个金额。1. 对于每一个硬币,都选择尽量多的使用,直到超过目标金额。2. 重复这个过程,直到凑出了目标金额。
2024-02-01 18:41:28
890
原创 软件价值4-俄罗斯方块
表示当前方块左上角单元格在游戏区域中的横坐标,x是当前正在遍历的方块的一行中的相对横坐标。通过相加,可以得到方块中每个单元格在游戏区域中的绝对坐标。方法中,其作用是将当前正在下落的方块 "冻结" 到游戏区域中。具体来说,它将方块的颜色信息赋值给游戏区域中对应位置的格子,从而将方块的形状固定在游戏区域中。检查当前单元格是否包含方块的一部分,即是否为非零值。如果是,表示这个单元格是方块的一部分。函数遍历当前正在下落的方块的每一行,其中。表示方块在游戏区域中的纵坐标,表示方块在游戏区域中的横坐标。
2024-02-01 10:39:35
462
原创 机器学习4-多元线性回归
(Multiple Linear Regression)是线性回归的一种扩展形式,用于建立因变量与多个自变量之间的关系。在简单线性回归中,我们考虑一个因变量和一个自变量之间的线性关系,而多元线性回归允许我们考虑多个自变量对因变量的影响。多元线性回归在实际应用中非常常见,例如在经济学中预测商品销售额,医学中预测疾病发生率,工程学中预测产品性能等。与模型预测值之间的误差,通常使用最小二乘法进行优化。 时,通过带入这些值,就可以预测相应的因变量值。多元线性回归的目标是找到合适的回归系数。
2024-01-31 09:40:00
881
1
原创 知识价值1-github站点域名
GitHub 使用 Fastly 提供的 CDN(Content Distribution Network 内容分发网络),加速用户对 GitHub 网站和资源的访问。github的global(全球)的使用了ssl(Security Socket Layer 加密套接字协议层)与fastly服务的net(网络)。GitHub 的资源 CDN,用于加速加载页面所需的静态资源,如图像、样式表、JavaScript文件等。这些域名极其映射的IP都是 GitHub 的服务器和 CDN 节点,它们提供了一个。
2024-01-31 09:01:00
653
原创 软件价值3-A*算法寻路
在A*算法中,曼哈顿距离作为启发式函数 h(n) 的一部分,用于估计从当前节点到目标节点的最短可能路径的长度。曼哈顿距离的选择通常能够提高A*算法的搜索效率,特别是在图或网络结构中的路径搜索问题中。算法在每一步选择开放列表中代价最小的节点进行拓展,同时更新与该节点相邻的节点的代价估计和路径信息。2. h(n):表示从节点n到目标节点的启发式估计代价,即当前节点到目标节点的最短可能路径的估计长度(启发式函数)。的广度优先搜索和贪婪最优优先搜索的特点,通过估算从起始节点到目标节点的代价来指导搜索方向。
2024-01-30 13:02:29
636
原创 机器学习1-种类及应用
半监督学习结合了监督学习和无监督学习的元素,使用有标签和无标签的数据进行训练。在监督学习中,模型通过使用已标记的训练数据(包括输入和对应的输出)来学习预测目标变量。自监督学习是一种无监督学习的变体,其中模型从输入数据中生成辅助目标,然后使用这些目标进行学习。无监督学习中,模型处理未标记的数据,试图从中发现隐藏的结构或模式。迁移学习利用在一个任务上学到的知识,应用到与之相关的另一个任务上,从而加速学习过程。元学习着重于模型能够在面对新任务时快速学习的能力,它关注的是模型在学习过程中的学习。
2024-01-29 17:42:14
553
原创 软件价值2-贪吃蛇游戏
用PyInstaller可以将 Python 脚本打包成 Windows、Linux 和 macOS 上的可执行文件。贪吃蛇游戏虽然很多,不过它可以作为软件创作的开端,用python来实现,然后dist成windows系统可执行文件。文件夹中生成一个单一的可执行文件。
2024-01-29 13:30:11
583
swing hacks
2010-08-16
After Hours: 10 Projects You'll Never Do at Work
2007-06-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人