- 博客(467)
- 收藏
- 关注
原创 鲍勃大叔整洁系列三件套
鲍勃大叔整洁系列三件套(附在线阅读链接),有兴趣的同学可以拿走:架构整洁之道这本书是鲍勃大叔在架构领域的经典之作,系统地剖析了“架构整洁”的缘起、内涵及应用场景,并涵盖了软件研发的完整过程及所有核心架构模式。书中分为六个部分:第一部分提出软件架构设计的终极目标和重点模式。第二至四部分从三个基础编程范式(结构化编程、面向对象编程和函数式编程)出发,描述函数、组件、服务的设计与实现定律。第五部分详细阐...
2024-10-30 09:06:20 96
原创 Spring中的CacheResolver:动态缓存管理的艺术
引言在现代应用程序中,缓存是提高性能和响应速度的关键技术之一。Spring框架通过其缓存抽象提供了一种灵活的方式来集成缓存机制。CacheResolver接口是Spring缓存机制中一个重要的组件,它允许开发者动态地决定使用哪个CacheManager来处理缓存请求。CacheResolver的作用CacheResolver接口定义了如何根据缓存请求的上下文来解析CacheManager。Spri...
2024-07-06 10:19:14 397
转载 架构之道——人人都是架构师
阿里妹导读本文的探讨和编写主要围绕三个方面:架构是什么?架构师要解决的问题有哪些?解决这些问题的方法论是什么?最后作者希望人人都能具备架构师思维。一、前言对于架构师的职责,最近感慨颇深;很认同Martin Fowler说的:Improving the development team’s ability gives an architect much greater leverage than b...
2024-07-05 08:51:39 80
原创 Junit+Spock+PowerMockito
前言框架用途和特点缺点JUnitJUnit 是 Java 的单元测试框架,用于编写和执行测试用例不直接支持模拟对象(Mocking),需要结合 Mockito 或其他 Mock 框架使用MockitoMockito 是一个 Java Mock 框架,用于在单元测试中创建模拟对象简单易用,API 设计直观。功能强大,可以模拟大多数对象。语法优美,提高了代码的可读性。不支持模拟静态方法、私有方法和 f...
2024-06-28 11:26:44 542
转载 Junit+PowerMockito 使用指南
简介JUnit 是 Java 应用程序中使用最广泛的测试框架之一。PowerMockito 是 Mockito 的一个扩展,它提供了对 Mockito 无法处理的类的模拟,比如静态方法、私有方法、构造函数和 final 类。环境准备1. 首先,确保在项目中添加了 JUnit 和 PowerMockito 的依赖。以下是 Maven 依赖配置示例:<dependency> <g...
2024-06-22 21:29:26 307
原创 【招聘】资深后端开发工程师-飞书IM(杭州、北京)
职位描述团队介绍:飞书是字节跳动旗下先进企业协作与管理平台,围绕目标、信息与人三个维度全方位助力组织升级。一站式整合即时沟通、日历、音视频会议、文档、云盘、邮箱等办公协作套件,让组织和个人工作更高效更愉悦。飞书目前已服务包括互联网、信息技术、制造、建筑地产、教育、媒体在内等众多领域的先进企业。1、负责飞书IM业务系统的研发工作,包括但不限于:群组系统、消息系统、用户资料系统等业务系统;2、负责飞书...
2024-02-19 09:59:14 619
原创 使用Maven Archetype插件制作项目脚手架(一)
Archetype是一个Maven项目模板工具包。通过Archetype我们可以快速搭建Maven项目。比如我们在ide里面创建项目时,可以选择很多maven内置的Archetype,我们最常用的可能是maven-archetype-quickstart当然maven提供了能力,让我们自定义项目结构,比如下图如果我们想要基于Archetype来自动生成下面多模块结构的脚手架,我们可以先手动建立下面...
2023-12-24 16:13:43 697
转载 AIGC时代的算力基石,未来的数据平台将如何演进?
阿里妹导读智能化是数字化的延伸,数据是AI的基石,AI需要借助数据更好地为社会、商业以及每一个人提供服务。基于AI的数据库将逐步演化为一站式的数据平台,这其中蕴含着巨大的商业价值。本文根据TEDx系列演讲「AIGC时代下的客户价值」中,阿里云研究员张为题为《一站式智能数据平台的演进》主旨演讲的内容整理。我叫张为,是阿里云数据库的一名研究员,从事AI与数据库相结合的产品研发工作。我过去的经历和人工智...
2023-09-26 09:18:31 213
原创 举例说明基于线性回归的单层神经网络网络(以梯度下降算法来求解权重的过程)...
我们将通过一个简单的例子来说明基于线性回归的单层神经网络,以及如何使用梯度下降算法来求解权重。假设我们有以下数据集,表示学生的学习时间(小时)与他们的考试分数:学习时间(X):1, 2, 3, 4, 5考试分数(Y):2, 4, 6, 8, 10这是一个线性关系,我们可以使用线性回归来预测给定学习时间的考试分数。在这个例子中,单层神经网络只有一个输入节点(学习时间)和一个输出节点(考试分数)。我们...
2023-07-14 06:00:14 2499
原创 举例说明基于线性回归的单层神经网络网络(以梯度下降算法来求解权重的过程)...
我们将通过一个简单的例子来说明基于线性回归的单层神经网络,以及如何使用梯度下降算法来求解权重。假设我们有以下数据集,表示学生的学习时间(小时)与他们的考试分数:学习时间(X):1, 2, 3, 4, 5考试分数(Y):2, 4, 6, 8, 10这是一个线性关系,我们可以使用线性回归来预测给定学习时间的考试分数。在这个例子中,单层神经网络只有一个输入节点(学习时间)和一个输出节点(考试分数)。我们...
2023-07-14 06:00:14 57
原创 举例说明基于线性回归的单层神经网络网络(以梯度下降算法来求解权重的过程)...
我们将通过一个简单的例子来说明基于线性回归的单层神经网络,以及如何使用梯度下降算法来求解权重。假设我们有以下数据集,表示学生的学习时间(小时)与他们的考试分数:学习时间(X):1, 2, 3, 4, 5考试分数(Y):2, 4, 6, 8, 10这是一个线性关系,我们可以使用线性回归来预测给定学习时间的考试分数。在这个例子中,单层神经网络只有一个输入节点(学习时间)和一个输出节点(考试分数)。我们...
2023-07-14 06:00:14 72
原创 举例说明什么是基于线性回归的单层神经网络
基于线性回归的单层神经网络是一种简单的神经网络,通常用于解决回归问题。这种神经网络只包含一个输入层和一个输出层,没有隐藏层。我们可以通过求解权重和偏置项来拟合输入和输出之间的线性关系。例如,给定一个数据集,其中包含了房屋面积(输入)和房价(输出)的数据。我们的目标是通过这些数据建立一个模型,来预测给定面积的房屋的价格。假设我们的数据集如下:| 房屋面积(输入,x) | 房价(输出,y) || -...
2023-07-13 06:00:42 807
原创 举例说明单层神经网络的工作原理
假设我们有一个简单的单层神经网络,用于解决一个简单的问题:根据一个人的年龄(x)来预测其收入(y)。在这个例子中,输入数据只有一个特征(年龄),因此我们可以用一个一维输入向量x来表示。输出结果y也是一个一维向量。单层神经网络的结构如下:1. 输入层:只有一个神经元,负责接收输入数据(年龄)。2. 输出层:只有一个神经元,负责生成预测结果(收入)。3. 连接:输入层与输出层之间的连接有一个权重w和一...
2023-07-11 09:38:55 703
原创 举例讲解什么是强化学习
强化学习是一种机器学习方法,通过智能体在环境中的互动,通过试错的方式来学习如何实现目标。智能体在环境中采取行动,环境会给予智能体奖励或惩罚信号,智能体通过学习这些信号,来调整其行为策略,以达到最大化累积奖励的目标。下面我们用一个具体的案例来详细讲解强化学习的过程:走迷宫。假设我们有一个机器人智能体,它的任务是在一个迷宫中从起点到达终点。迷宫中有障碍物、陷阱等不同的环境元素。机器人每走一步会获得一个...
2023-07-10 06:00:57 164
原创 举例说明什么是ε-greedy策略
ε-greedy策略是一种用于解决多臂赌博机问题或者强化学习中探索-利用权衡的策略。在这个策略中,有一个参数ε (0 <= ε <= 1) 用来控制探索和利用的比例。ε的值越大,代表更多的探索;ε的值越小,代表更多的利用。具体来说,ε-greedy策略如下:1. 以ε的概率选择一个随机动作进行探索,这个动作可能不是当前最优的。2. 以1-ε的概率选择当前最优动作(具有最高的累积奖励或价...
2023-07-10 06:00:57 1488
原创 举例说明什么是Q-learning算法
Q-learning算法是一种强化学习算法,通过学习一个名为Q值的函数来选择最优的行动。Q值表示在某个状态下采取某个行动的预期回报。Q-learning算法的目标是找到一个策略,使得每个状态下采取的行动都能最大化长期回报。假设有一个机器人在一个迷宫中,机器人需要从起点到达终点,而迷宫中有一些障碍物和陷阱。在这个例子中,机器人的目标是找到一条从起点到终点的最短路径,同时避开障碍物和陷阱。在Q-lea...
2023-07-10 06:00:57 760
原创 阐述说明NLP发展历史,以及 NLP与chatgpt的关系
自然语言处理(Natural Language Processing,NLP)是人工智能(AI)领域的一个重要分支,关注计算机与人类(自然)语言之间的交互。NLP的目标是使计算机能够理解、生成和解释自然语言,从而实现人机交流、信息提取、自动文摘等功能。NLP的发展历史可以分为几个阶段:1. 1950-1960年代:早期尝试在这个阶段,NLP的研究基于规则和模式匹配。其中,最著名的项目是ELIZA(...
2023-07-09 11:50:57 1389
转载 举例说明自注意力机制深度学习模型的原理
自注意力机制是一种在深度学习模型中捕捉输入序列内部依赖关系的方法。它可以帮助模型学习输入序列中各个元素之间的相互关系,从而更好地理解和处理输入数据。自注意力机制已广泛应用于自然语言处理、图像识别等领域。具体案例:假设我们有一个智能对话机器人,用户可以与其进行日常问题的文本聊天。当用户输入一个长句子时,如:“我今天上午去了商场购物,吃了一顿美味的午餐,然后下午去了电影院看了一部电影,今晚我打算去参加...
2023-07-08 06:00:16 223
原创 结合具体场景举例说明chatgpt预训练模型中Tokenization的原理
假设我们有一个场景,Alice想向Chatbot询问一部电影的推荐。她发送了一条消息:“你好,能给我推荐一部好看的电影吗?”在这个场景中,Chatbot使用了ChatGPT预训练模型。首先,Chatbot需要对Alice的消息进行Tokenization,也就是将文本转换为标记(tokens)序列。以下是Tokenization的具体过程:1. 分词:首先将文本拆分成更小的单元。在英文中,这通常是...
2023-07-07 07:00:07 1412
原创 举例说明chatgpt中生成式预训练模式中的预训练过程以及生成结果过程
生成式预训练模式(GPT)在自然语言处理任务中具有重要地位,它通过大量文本数据进行预训练,学习到一个通用的语言模型。然后通过微调,让模型适应特定任务。在这个过程中,GPT模型首先进行预训练,接着根据任务需求进行生成结果。以下是关于Chatbot GPT的详细说明。一、预训练过程:1. 数据收集:从大量语料库中收集文本数据,如维基百科、网页、新闻、书籍等。2. 数据预处理:清理并标注数据,如去除非文...
2023-07-06 07:00:03 912
原创 举例说明ChatGPT模型是怎么进行无监督学习的
ChatGPT,也称为生成式预训练Transformer(GPT),是一种基于Transformer架构的自然语言处理模型。虽然在实际应用中,它主要用于有监督学习任务,但在训练初期,它会经历无监督学习阶段。以下是一个简化的例子,说明了ChatGPT是如何进行无监督学习的:1. 预训练阶段:首先,在大规模的文本数据集(例如互联网上收集的文本)上进行预训练。这些数据没有标签,因此这个阶段属于无监督学习...
2023-07-05 07:00:11 1459
原创 举例说明什么是无监督学习
无监督学习是指在没有给定答案(即无标签数据)的情况下,让算法自动从输入数据中找到规律或结构的机器学习方法。算法需要自动地探索、分析和推断数据集中的潜在规律。以一个商场顾客分类的例子来说明无监督学习。假设商场想了解他们的顾客群体并进行分类,以便更好地调整营销策略。但商场没有关于顾客分类的先验知识。他们收集了大量的顾客数据,包括年龄、性别、购买频率、消费金额等特征,但没有关于顾客所属类别的信息。在这种...
2023-07-04 19:38:06 424
转载 举例说明Transformer模型原理
Transformer模型是一种基于自注意力机制的深度学习模型,它在自然语言处理(NLP)任务中取得了显著的成功。Transformer模型的主要原理是通过自注意力机制来捕捉输入序列中的全局依赖关系,从而充分利用输入序列的信息。与传统的循环神经网络(RNN)和卷积神经网络(CNN)相比,Transformer模型在处理长距离依赖关系和并行计算方面具有显著优势。Transformer模型的核心组件是...
2023-07-03 11:50:11 1126
原创 举例说明什么是循环神经网络
循环神经网络(Recurrent Neural Network, RNN)是一种处理时间序列数据和自然语言等具有顺序信息的数据的神经网络模型。与普通的前馈神经网络(Feedforward Neural Network)不同,RNN具有循环连接,使得网络能够在处理当前输入信息的同时保留之前输入的信息。举一个简单的例子:我们要构建一个模型来预测一句话中的下一个单词。假设我们有这样一个句子:“我爱吃苹果...
2023-07-02 09:13:19 479
原创 举例说明什么是前馈神经网络
前馈神经网络(Feedforward Neural Network)是一种最基本的人工神经网络结构,它由多个层次的神经元组成,这些神经元间具有相互连接的权重。数据从输入层进入,然后逐层传播,最后到达输出层。在这个过程中,信息只在一个方向上流动,从输入层到输出层,没有反馈回路。下面是一个具体的例子:假设我们要使用前馈神经网络来识别手写数字(0-9)。在这个任务中,输入是手写数字的图像像素值,输出是一...
2023-07-01 07:43:32 251
原创 举例说明Chatgpt模型训练的过程
Chatbot GPT模型训练过程详解在人工智能领域,聊天机器人是一种模拟人类对话行为的计算机程序。近年来,随着深度学习和自然语言处理技术的飞速发展,聊天机器人越来越流行。本文将详细阐述GPT(Generative Pre-trained Transformer)模型在聊天机器人的训练过程。1. GPT模型的基础:TransformerGPT模型的基础是Transformer模型,它是一种基于自注...
2023-06-30 09:07:59 1695
原创 详细讲述,人工智能、机器学习、深度学习、神经网络、自然语言处理、AIGC之间的关系...
人工智能(Artificial Intelligence,AI)是计算机科学中一个庞大的研究领域,旨在为计算机创造类似人类智能的功能,例如学习、推理、解决问题、识别模式、理解自然语言等。AI的核心目标是使计算机能够执行那些通常需要人类智能才能完成的任务。机器学习(Machine Learning,ML)是人工智能的一个子领域,它关注的是研究如何使计算机能够通过数据自动学习和改进。机器学习算法使用大...
2023-06-29 09:25:01 1548
原创 举例说明什么是卷积神经网络
卷积神经网络(Convolutional Neural Network, CNN)是一种深度学习模型,主要应用于计算机视觉任务,如图像分类、物体检测等。它通过卷积层、池化层和全连接层等组件来实现对图像的特征提取和分类。现在我们以一个简单的图像分类任务为例来说明什么是卷积神经网络。假设我们有一个数据集,包含了猫和狗的图像,目标是训练一个模型,能够对输入的图像进行正确分类。一个简单的卷积神经网络结构可...
2023-06-28 07:02:09 1953
原创 举例解释下什么是交叉熵损失函数
交叉熵损失函数(Cross-Entropy Loss Function)是一种在机器学习和深度学习中常用的损失函数,主要用于评估分类问题中模型的预测概率分布与真实概率分布之间的巟异程度。交叉熵损失函数的值越小,表示模型的预测结果越接近真实结果。它在许多场景下,如图像分类、文本分类等任务中都有广泛应用。以一个简单的二分类问题为例:假设我们有一个模型,它需要预测一个样本是属于类别 A(正类)还是类别 ...
2023-06-27 09:29:31 354
原创 举例说明什么是卷积计算
卷积计算是一种数学运算,主要用于信号处理、图像处理等领域。它涉及到两个函数(通常称为信号和核)的互相关运算。在图像处理中,卷积计算通常用于实现图像的平滑、锐化、边缘检测等操作。以图像处理为例,我们可以用一个简单的例子来说明卷积计算:假设我们有一个 3x3 的灰度图像(每个像素的值在 0-255 之间):1 2 34 5 67 8 9我们希望对这个图像进行平滑处理,可以使用一个 3x3 的卷积核(也...
2023-06-26 07:00:14 905
原创 举例说明什么是最大化似然估计
最大似然估计(Maximum Likelihood Estimation, MLE)是一种统计学方法,用于根据观测数据估计模型参数。简单来说,就是在给定数据下,寻找使得模型产生这些数据的概率最大的参数取值。我们来看一个简单的例子:假设我们有一个硬币,想知道它正面朝上的概率p。为了得到这个概率,我们进行了10次抛硬币实验,结果如下:H, T, H, H, T, H, H, T, H, H (H表示正...
2023-06-25 08:22:12 156
原创 举例说明梯度下降算法与最小二乘法的区别
梯度下降算法和最小二乘法都是用于求解线性回归问题中参数的优化方法。我们可以通过一个简单的例子来说明它们之间的区别。假设我们有以下数据点:(1, 2),(2, 3),(3, 4),(4, 5),我们希望找到一条最佳拟合线 y = wx + b,使得预测值与真实值之间的误差最小。首先定义一个损失函数(均方误差):L(w, b) = 1/n * Σ(yi - (wxi + b))^2我们的目标是找到 w...
2023-06-24 07:00:48 416
原创 举例说明小批量随机梯度下降的原理
小批量随机梯度下降(Mini-batch Stochastic Gradient Descent,简称 Mini-batch SGD 或 MB-SGD)是一种在深度学习中常用的优化算法。它结合了批量梯度下降(Batch Gradient Descent,BGD)和随机梯度下降(Stochastic Gradient Descent,SGD)的优点,既能较快地收敛,又能有效地利用计算资源。下面举例说...
2023-06-23 07:00:27 713
原创 举例说明什么是批量梯度下降算法
批量梯度下降算法(Batch Gradient Descent)是一种求解机器学习模型参数的优化算法,主要应用于线性回归、逻辑回归等模型的训练过程中。它的主要思想是在每次迭代过程中,计算整个数据集的梯度来更新模型参数,以最小化损失函数,进而得到模型的最优解。以线性回归为例,我们使用批量梯度下降算法来求解模型参数:1. 假设我们有一个简单的线性回归问题:预测房价与房子面积的关系。已知训练数据集D={...
2023-06-22 06:00:19 1138
原创 举例说明什么是随机梯度下降算法
随机梯度下降算法(Stochastic Gradient Descent, SGD)是一种优化算法,用于求解机器学习和深度学习中的目标函数的最小值。它是标准梯度下降算法的一个变种,主要区别在于每一次更新权重时只使用一个训练样本,而不是整个训练集。这样做的优点是计算速度更快,因为每次迭代计算量更小,同时还能在某种程度上增加算法的鲁棒性,因为算法更不容易陷入局部最优解。以线性回归问题为例。给定一个训练...
2023-06-21 07:04:38 242
原创 梯度下降算法
梯度下降是一种用于优化目标函数的迭代方法,主要用于求解机器学习和深度学习中的模型参数。简单来说,它的原理是通过不断地沿着梯度的负方向更新参数,最终找到目标函数的最小值。以线性回归为例来解释梯度下降的原理。线性回归模型可以表示为:y = wx + b,其中w和b是模型的参数,我们的目标是找到一组参数w和b,使得模型预测的y值与实际的y值之间的误差最小。假设我们使用均方误差作为目标函数,即:L(w, ...
2023-06-20 08:00:20 127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人