Yang's Blog

Yang's Blog

线性回归
发表于2026-04-18|Python机器学习
线性回归线性回归介绍学习目标: 1.理解线性回归是什么? 2.知道一元线性回归和多元线性回归的区别 3.知道线性回归的应用场景 【理解】举个栗子假若有了身高和体重数据,来了播仔的身高,你能预测播仔体重吗? 这是一个回归问题,该如何求解呢? 思路:先从已知身高X和体重Y中找规律,再预测 •数学问题:用一条线来拟合身高和体重之间的关系,再对新数据进行预测 方程 Y = kX + b k160 + b = 56.3 – (1) k166 + b = 60.6 –- (2) 。。。。 k: 斜率 b:截距 若:y = 0.9 x + (-93) ​ 0.9*176 +(-93)= ? 【理解】线性回归线性回归(Linear regression)是利用 回归方程(函数) 对 一个或多个自变量(特征值)和因变量(目标值)之间 关系进行建模的一种分析方式。 注意事项: 1 为什么叫线性模型?因为求解的w,都是w的零次幂(常数项)所以叫成线性模型 2 在线性回归中,从数据中获取的规律其实就是学习权重系数w 3 某...
KNN算法
发表于2026-04-15|Python机器学习
KNN算法KNN算法简介【理解】KNN算法思想K-近邻算法(K Nearest Neighbor,简称KNN)。比如:根据你的“邻居”来推断出你的类别 KNN算法思想:如果一个样本在特征空间中的 k 个最相似的样本中的大多数属于某一个类别,则该样本也属于这个类别 思考:如何确定样本的相似性? 样本相似性:样本都是属于一个任务数据集的。样本距离越近则越相似。 利用K近邻算法预测电影类型 【知道】K值的选择 【知道】KNN的应用方式 解决问题:分类问题、回归问题 算法思想:若一个样本在特征空间中的 k 个最相似的样本大多数属于某一个类别,则该样本也属于这个类别 相似性:欧氏距离 分类问题的处理流程: 1.计算未知样本到每一个训练样本的距离 2.将训练样本根据距离大小升序排列 3.取出距离最近的 K 个训练样本 4.进行多数表决,统计 K 个样本中哪个类别的样本个数最多 5.将未知的样本归属到出现次数最多的类别 回归问题的处理流程: 1.计算未知样本到每一个训练样本的距离 2.将训练样本根据距离大小升序排列 3.取出距离最近的 K 个训练样本 ...
机器学习概述
发表于2026-04-15|Python机器学习
机器学习概述人工智能三大概念【知道】人工智能 Artificial Intelligence 人工智能 释义 - 仿智; 像人一样机器智能的综合与分析;机器模拟人类 【知道】机器学习 Machine Learning 释义:机器学习 Field of study that gives computers the ability to learn without being explicitly programmed 释义:让机器自动学习,而不是基于规则的编程(不依赖特定规则编程) 人类识别车:根据车的特征归纳出车的规律;来了一个新的图片,判断预测是否是车 机器学习识别车: 从数据中获取规律;来了一个新的数据,产生一个新的预测 【知道】深度学习深度学习(DL, Deep Learning) : ,也叫深度神经网络,大脑仿生,设计一层一层的神经元模拟万事万物 【知道】三者之间的关系 机器学习是实现人工智能的一种途径 深度学习是机器学习的一种方法 【了解】学习方式【了解】基于规则的学习•基于规则的预测 : 程序员根据经验利用手工的if-else方式进行...
Matplotlib
发表于2026-04-12
一、Matplotlib简介1.1 什么是MatplotlibMatplotlib是Python中最常用的数据分析可视化库,可快速绘制各类静态、高质量的图表(如折线图、柱状图、散点图、直方图等),支持自定义图表样式、标签、颜色等细节,是数据分析中“数据呈现”的核心工具。 Matplotlib与NumPy、Pandas的关系: Matplotlib可直接接收NumPy数组和Pandas的Series、DataFrame数据,无需额外数据格式转换; Pandas的绘图功能(如df.plot())底层就是基于Matplotlib实现的,可快速生成基础图表; 三者协同使用,可完成“数据读取(Pandas)→ 数据处理(NumPy+Pandas)→ 数据可视化(Matplotlib)”的完整数据分析流程。 核心模块:matplotlib.pyplot(通常简写为plt),是绘制图表的主要接口,提供了简洁的函数式绘图方法。 1.2 安装Matplotlib使用pip命令安装,与NumPy、Pandas兼容,建议安装最新稳定版: 12345# 安装最新版本Matplotlibpi...
Pandas
发表于2026-04-11
一、Pandas简介1.1 什么是PandasPandas(Python Data Analysis Library)是基于NumPy开发的Python数据分析库,专门用于处理结构化数据(如表格数据、CSV文件、Excel文件等),提供了直观、高效的数据读取、清洗、筛选、分组、聚合等功能,是数据分析、数据挖掘的核心工具。 Pandas与NumPy的关系: Pandas基于NumPy实现,底层使用ndarray存储数据,继承了NumPy的高效运算能力; NumPy专注于多维数组运算,而Pandas专注于结构化数据处理,提供了更贴近实际业务的API; 两者协同使用,可高效完成从数据读取到分析的全流程。 核心数据结构:Series(一维结构化数据)、DataFrame(二维结构化数据,类似Excel表格)。 1.2 安装Pandas使用pip命令安装,建议同时安装openpyxl(用于读取Excel文件): 12345# 安装最新版本Pandas和openpyxlpip install pandas openpyxl# 安装指定版本(适配NumPy 1.24.3,避免版本...
Numpy
发表于2026-04-10
一、NumPy简介1.1 什么是NumPyNumPy(Numerical Python)是Python中用于科学计算的核心库,主要用于处理高维数组(ndarray),并提供了大量的数学函数、线性代数、傅里叶变换、随机数生成等功能,是Pandas、Matplotlib等数据分析工具的基础。 核心优势: 高效的数组运算:基于C语言实现,运算速度远快于Python原生列表 简洁的API:提供直观的函数,简化数据处理流程 多维度支持:轻松处理1维、2维及更高维度的数组 与其他库无缝衔接:是数据分析、机器学习的必备工具 1.2 安装NumPy使用pip命令安装(最常用): 12345# 安装最新版本pip install numpy# 安装指定版本(如1.24.3,适配多数数据分析环境)pip install numpy==1.24.3 验证安装是否成功: 12import numpy as npprint(np.__version__) # 输出版本号,如1.24.3即安装成功 二、NumPy核心:ndarray数组2.1 什么是ndarrayndarray(N-d...
LangChain4j之RAG
发表于2026-01-07|JavaLangChain4J
RAG (检索增强生成)LLM 的知识仅限于它已经训练过的数据。 如果你想让 LLM 了解特定领域的知识或专有数据,你可以: 使用 RAG,我们将在本节中介绍 用你的数据微调 LLM 结合 RAG 和微调 什么是 RAG?简单来说,RAG 是一种在发送给 LLM 之前,从你的数据中找到并注入相关信息片段到提示中的方法。 这样 LLM 将获得(希望是)相关信息,并能够使用这些信息回复, 这应该会降低产生幻觉的概率。 相关信息片段可以使用各种信息检索方法找到。 最流行的方法有: 全文(关键词)搜索。这种方法使用 TF-IDF 和 BM25 等技术, 通过匹配查询(例如,用户提问的内容)中的关键词与文档数据库进行搜索。 它根据每个文档中这些关键词的频率和相关性对结果进行排名。 向量搜索,也称为”语义搜索”。 文本文档使用嵌入模型转换为数字向量。 然后根据查询向量和文档向量之间的余弦相似度 或其他相似度/距离度量找到并排序文档, 从而捕捉更深层次的语义含义。 混合搜索。结合多种搜索方法(例如,全文 + 向量)通常可以提高搜索的有效性。 目前,本页主要关注向量搜索...
LangChain4j之函数调用
发表于2026-01-06|JavaLangChain4J
工具(函数调用)一些 LLM 除了生成文本外,还可以触发操作。 有一个被称为”工具”或”函数调用”的概念。 它允许 LLM 在必要时调用一个或多个可用的工具,通常由开发者定义。 工具可以是任何东西:网络搜索、调用外部 API 或执行特定代码片段等。 LLM 实际上不能自己调用工具;相反,它们在响应中表达调用特定工具的意图(而不是以纯文本形式响应)。 作为开发者,我们应该使用提供的参数执行这个工具,并将工具执行的结果反馈回来。 例如,我们知道 LLM 本身在数学计算方面并不擅长。 如果您的用例涉及偶尔的数学计算,您可能希望为 LLM 提供一个”数学工具”。 通过在请求中向 LLM 声明一个或多个工具, 如果它认为合适,它可以决定调用其中一个工具。 给定一个数学问题和一组数学工具,LLM 可能会决定为了正确回答问题, 它应该首先调用提供的数学工具之一。 让我们看看这在实践中是如何工作的(有工具和没有工具的情况): 没有工具的消息交换示例: 12345678请求:- 消息: - UserMessage: - 文本:475695037565 的平方根是多少?响应:...
LangChain4j之高阶api
发表于2026-01-05|JavaLangChain4J
AI Services到目前为止,我们一直在介绍底层组件,如 ChatLanguageModel、ChatMessage、ChatMemory 等。 在这个层面上工作非常灵活,给予您完全的自由,但也迫使您编写大量的样板代码。 由于 LLM 驱动的应用程序通常不仅需要单个组件,还需要多个组件协同工作 (例如,提示模板、聊天记忆、LLM、输出解析器、RAG 组件:嵌入模型和存储) 并且经常涉及多次交互,协调所有这些组件变得更加繁琐。 我们希望您专注于业务逻辑,而不是低级实现细节。 因此,LangChain4j 中目前有两个高级概念可以帮助您:AI 服务和链。 Chains (legacy)链的概念源自 Python 的 LangChain(在引入 LCEL 之前)。 其思想是为每个常见用例(如聊天机器人、RAG 等)提供一个 Chain。 链组合多个低级组件并协调它们之间的交互。 它们的主要问题是,如果您需要自定义某些内容,它们过于僵化。 LangChain4j 只实现了两个链(ConversationalChain 和 ConversationalRetrievalChain)...
LangChain4j之会话记忆
发表于2026-01-05|JavaLangChain4J
聊天记忆手动维护和管理ChatMessage是很麻烦的。 因此,LangChain4j提供了ChatMemory抽象以及多种开箱即用的实现。 ChatMemory可以作为独立的低级组件使用, 或者作为高级组件(如AI服务)的一部分。 ChatMemory作为ChatMessage的容器(由List支持),具有以下额外功能: 淘汰策略 持久化 对SystemMessage的特殊处理 对工具消息的特殊处理 记忆与历史请注意,”记忆”和”历史”是不同的概念。 历史保持用户和AI之间的所有消息完整无缺。历史是用户在UI中看到的内容。它代表实际对话内容。 记忆保存一些信息,这些信息呈现给LLM,使其表现得好像”记住”了对话。 记忆与历史有很大不同。根据使用的记忆算法,它可以以各种方式修改历史: 淘汰一些消息,总结多条消息,总结单独的消息,从消息中删除不重要的细节, 向消息中注入额外信息(例如,用于RAG)或指令(例如,用于结构化输出)等等。 LangChain4j目前只提供”记忆”,而不是”历史”。如果您需要保存完整的历史记录,请手动进行。 淘汰策略淘汰策略是必要的,原因如...
12…9
avatar
Yang
萌新打怪升级中......
文章
81
标签
185
分类
15
Follow Me
公告
This is my Blog
最新文章
线性回归2026-04-18
KNN算法2026-04-15
机器学习概述2026-04-15
Matplotlib2026-04-12
Pandas2026-04-11
分类
  • Git1
  • Java72
    • ES3
    • JavaSE17
    • LangChain4J5
    • Linux1
    • Mybatis3
    • Nginx4
标签
打印流 RESTful Series 高阶API KNN ThreadPool 享元模式 API Date embedding 延迟消息 全量同步 Direct Component HyperLogLog PromptTemplate 异步调用 死信 Dict 生产者确认 多模态 强化学习 File 动态代理 转换流 特征工程 bean生命周期 键值设计 缓存穿透 AOP RDB Reader 幂等性 流式输出 文档 Validation 倒排索引 FunctionCall SkipList BeanFactory
归档
  • 四月 2026 6
  • 一月 2026 5
  • 十月 2025 2
  • 九月 2025 2
  • 六月 2025 1
  • 二月 2025 3
  • 十二月 2024 2
  • 十一月 2024 1
网站信息
文章数目 :
81
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By Yang框架 Hexo 7.3.0|主题 Butterfly 5.5.5-b1