<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Riccca的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Riccca</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Riccca]]></copyright><item><title><![CDATA[LLaMA-Factory训练记录]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/149019818</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/149019818</guid><author>Riccca</author><pubDate>Mon, 30 Jun 2025 12:33:53 +0800</pubDate><description><![CDATA[记录使用LLaMA-Factory训练和部署Qwen3-0.6B模型的全流程]]></description><category></category></item><item><title><![CDATA[程序的机器级表示]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/122045163</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/122045163</guid><author>Riccca</author><pubDate>Sun, 26 Dec 2021 18:39:06 +0800</pubDate><description><![CDATA[程序的机器级表示1生成汇编语言两种保存器汇编拆解寄存器发展史操作数指示符
生成汇编语言

使用以下命令生成汇编文件mstore.s并用vim打开：
linux &gt; gcc -Og -S mstore.c

· 开头的行可以忽略
pushq 这条指令是将寄存器的值压入程序栈进行保存
两种保存器

A称为调用者，B称为被调用者。由于调用了函数B,寄存器rbx在函数b中被修改，逻辑上寄存器rbx的内容在用函数b的前后应该保持一致。有两种解决方法

函数A在调用B之前，先保存rbx的内容，执行完函数b之后，再]]></description><category></category></item><item><title><![CDATA[计算机系统漫游task02]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/122003189</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/122003189</guid><author>Riccca</author><pubDate>Sat, 18 Dec 2021 00:36:44 +0800</pubDate><description><![CDATA[信息的表示和处理虚拟地址空间字数据大小寻址和字节顺序寻址和字节顺序布尔运算数值信息的表示相互转化截断加法溢出两种乘法两种除法二进制小数规格化的值非规格化的值特殊值
虚拟地址空间
·内存的地址的集合称为虚拟地址空间
1 byte = 8bit
字数据大小
对于一个字长为位的机器，虚拟地址的范围是0到2^w - 1

寻址和字节顺序

寻址和字节顺序

我们需要知道数据的地址和数据所占内存
字节顺序有大端法和小端法
布尔运算
注意异或运算

C语言中的一个特性就是支持按位进行布尔运算
数值信息的表示
二进制数也]]></description><category></category></item><item><title><![CDATA[【学习篇】计算机系统漫游task01]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/121937851</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/121937851</guid><author>Riccca</author><pubDate>Tue, 14 Dec 2021 21:15:55 +0800</pubDate><description><![CDATA[编译系统学习]]></description><category></category></item><item><title><![CDATA[task5 DIN]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/115274519</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/115274519</guid><author>Riccca</author><pubDate>Sun, 28 Mar 2021 01:13:15 +0800</pubDate><description><![CDATA[之前的模型局限
在个性化广告点击预测任务中存在的问题就是无法表达用户广泛的兴趣，因为这些模型在得到各个特征的embedding之后，就蛮力拼接了，然后就各种交叉等。这时候根本没有考虑之前用户历史行为商品具体是什么，究竟用户历史行为中的哪个会对当前的点击预测带来积极的作用。
DIN模型结构及原理
DIN模型的创新点或者解决的问题是使用了注意力机制来对用户的兴趣动态模拟, 模拟过程存在的前提是用户之前有大量的历史行为。

特征表示
经过编码后的特征数据，没有任何交互组合，没有做特征交叉。

基线模型
Embed]]></description><category></category></item><item><title><![CDATA[Task4 NFM]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/115192092</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/115192092</guid><author>Riccca</author><pubDate>Thu, 25 Mar 2021 01:36:59 +0800</pubDate><description><![CDATA[NFM
模型局限
传统的FM模型仅局限于线性表达和二阶交互，作者提出一种将FM融合进DNN的策略，组合了FM的建模低阶特征交互能力和DNN学习高阶特征交互和非线性的能力，形成了深度学习时代的神经FM模型(NFM)
y^NFM(x)=w0+∑i=1nwixi+f(x) \hat{y}{N F M}(\mathbf{x})=w{0}+\sum_{i=1}^{n} w_{i} x_{i}+f(\mathbf{x}) y^​NFM(x)=w0+i=1∑n​wi​xi​+f(x)
改进的思路就是用一个表达能力更强的函]]></description><category></category></item><item><title><![CDATA[DeepRecommendationModel task3]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/115059921</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/115059921</guid><author>Riccca</author><pubDate>Mon, 22 Mar 2021 01:50:55 +0800</pubDate><description><![CDATA[对于CTR问题，最有效的提升任务表现的策略是特征组合(Feature Interaction)
其他方法的局限：

DNN ：

由于离散特征需要使用one-hot编码处理，会导致维度猛增，可以将OneHot特征转换为Dense Vector。
通过增加全连接层可以实现高阶的特征组合，但是仍然缺少低阶的特征组合

FNN 和PNN

结合FM和DNN两种模型，得到FNN
在FNN中加入一个product（做内积或外积）模块，得到PNN

Wide &amp; Deep

FNN和PNN仍然对于低阶组合特征学]]></description><category></category></item><item><title><![CDATA[DeepRecommendationModel task1 and task2]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/114910434</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/114910434</guid><author>Riccca</author><pubDate>Wed, 17 Mar 2021 01:19:23 +0800</pubDate><description><![CDATA[task 1 DeepCrossing
把深度学习的框架应用于推荐系统中
输入：特征向量
输出：0/1分类
deepcrossing分为四层 ： embedding layer ，stacking layer， Multiple Residual Units Layer，Scoring Layer

Embedding Layer

将稀疏的类别型特征转成稠密的Embedding向量，即对one-hot向量做embedding

Stacking Layer

将embedding特征和数值型特征拼接在一起]]></description><category></category></item><item><title><![CDATA[解决了电脑外放杂音，耳机有声音的问题]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/114785650</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/114785650</guid><author>Riccca</author><pubDate>Sun, 14 Mar 2021 13:51:23 +0800</pubDate><description><![CDATA[今天打开电脑突然外放声音变成了杂音，但是插耳机又正常。
查了一堆资料，最多的是教重装驱动啥的，还好我没有一冲动就卸载驱动重装，哎
我这个电脑买两年了，已经过了保修期，没办法，于是我搜索了惠普的官方客服，就是这个惠普官方客服，然后智能客服让我自己测试一下，就是右键小喇叭的图标，然后选择声音问题疑难解答，然后跟着点，直到跳出来这个框

然后选择我选择了否，不打开音频增强功能，结果，他就好了！！
希望能给一些小伙伴启发，说不定就像我这样莫名其妙的就解决了。

...]]></description><category></category></item><item><title><![CDATA[Jupyter 启动问题（没有javascipt)]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/114117881</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/114117881</guid><author>Riccca</author><pubDate>Fri, 26 Feb 2021 10:42:11 +0800</pubDate><description><![CDATA[启动jupyter 的时候突然跳出这样的提示：

我搜索了很久，没有查到有用的信息。
然后我试着换别的浏览器打开了一下，（复制网址就可以），居然是可以正常启动的。于是我回想起来，应该是我把chrome设置的一个地方关了。

打开就这个地方，就解决了，jupyter可以正常启动啦。

...]]></description><category></category></item><item><title><![CDATA[布匹疵点智能检测【task1】]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113926923</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113926923</guid><author>Riccca</author><pubDate>Mon, 22 Feb 2021 01:17:11 +0800</pubDate><description><![CDATA[布匹疵点智能检测【task1】
1、装docker
win10系统docker练习场满分
注意几个指令
docker login --username=username registry.cn-shenzhen.aliyuncs.com
docker build -t registry.cn-shenzhen.aliyuncs.com/test_for_ricca/test_for_ricca_submit:2.0 .
docker push registry.cn-shenzhen.aliyuncs.co]]></description><category></category></item><item><title><![CDATA[leetcode 344\557]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113370106</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113370106</guid><author>Riccca</author><pubDate>Fri, 29 Jan 2021 10:31:22 +0800</pubDate><description><![CDATA[文章目录344 反转字符串557 反转字符串中的单词Ⅲ
344 反转字符串
class Solution:
    def reverseString(self, s: List[str]) -&gt; None:
        """
        Do not return anything, modify s in-place instead.
        """
# method
        left = 0
        right = len(s) - 1
        whil]]></description><category></category></item><item><title><![CDATA[leetcode 237\238\292]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113284262</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113284262</guid><author>Riccca</author><pubDate>Thu, 28 Jan 2021 00:14:34 +0800</pubDate><description><![CDATA[目录237 删除链表中的节点238 除自身以外数组的乘积292 Nim 游戏
237 删除链表中的节点
# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

class Solution:
    def deleteNode(self, node):
        """
        :]]></description><category></category></item><item><title><![CDATA[leetcode 231\235\236]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113243531</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113243531</guid><author>Riccca</author><pubDate>Wed, 27 Jan 2021 11:30:21 +0800</pubDate><description><![CDATA[目录231 2的幂235 二叉搜索树的最近公共祖先236 二叉树的最近公共祖先
231 2的幂
# method 1
 class Solution:
     def isPowerOfTwo(self, n: int) -&gt; bool:
         if n == 0:
             return False
         while n%2 == 0:
             n /= 2
         return n==1


# method 2 位运算
# 若]]></description><category></category></item><item><title><![CDATA[leetcode 215\217\230]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113177111</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113177111</guid><author>Riccca</author><pubDate>Tue, 26 Jan 2021 12:05:55 +0800</pubDate><description><![CDATA[目录215 数组中的第k个最大元素217 存在重复元素230 二叉搜索树中第k小的元素
215 数组中的第k个最大元素
# 快排思想
class Solution:
    def findKthLargest(self, nums, k) -&gt; int:
        k = len(nums) - k

        low = 0
        high = len(nums) - 1
        while low &lt;= high:
            p = self.p]]></description><category></category></item><item><title><![CDATA[leetcode 160\169\206]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113074027</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113074027</guid><author>Riccca</author><pubDate>Sun, 24 Jan 2021 11:44:33 +0800</pubDate><description><![CDATA[目录160 相交链表169 多数元素206 反转链表
160 相交链表
双指针法
class Solution:
    def getIntersectionNode(self, headA: ListNode, headB: ListNode) -&gt; ListNode:
        pA = headA
        pB = headB
        while headA != headB:
            if headA:
                headA = h]]></description><category></category></item><item><title><![CDATA[leetcode 146\148\155]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/113061297</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/113061297</guid><author>Riccca</author><pubDate>Sun, 24 Jan 2021 00:22:46 +0800</pubDate><description><![CDATA[目录146  LRU缓存机制148 排序链表155  最小栈
146  LRU缓存机制
# 双向链表，每个节点要存储key和value
class ListNode:
    def __init__(self, key = None, value=None):
        self.key = key
        self.value = value
        self.next = None
        self.prev = None


class LRUCache:

    d]]></description><category></category></item><item><title><![CDATA[leetcode 136\141\142]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/112977942</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/112977942</guid><author>Riccca</author><pubDate>Fri, 22 Jan 2021 11:18:12 +0800</pubDate><description><![CDATA[目录136 只出现一次的数字141 环形链表142 环形链表Ⅱ （返回环形入口节点）
136 只出现一次的数字
注意异或操作满足交换率
x^0 = x
x^x = 0
# reduce
# 用传给 reduce 中的函数 function（有两个参数）先对集合中的第 1、2 个元素进行操作，得到的结果再与第三个数据用 function 函数运算，最后得到一个结果。

# ^异或操作
# x ^ 0 = x
# x ^ x = 0
# 所以当重复的元素进行异或操作以后，都变为0，只剩下一个不重复的元素。
cl]]></description><category></category></item><item><title><![CDATA[leetcode 121\122\124]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/112919803</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/112919803</guid><author>Riccca</author><pubDate>Thu, 21 Jan 2021 12:21:34 +0800</pubDate><description><![CDATA[目录121 买卖股票的最佳时机122 买卖股票的最佳时机(可以交易多次）124 二叉树中的最大路径和
121 买卖股票的最佳时机
class Solution:
    def maxProfit(self, prices: List[int]) -&gt; int:
        if not prices: return 0
        n = len(prices)
        # dp[i][0] : 表示第i天的状态是没有股票, 获得的收益
        # dp[i][1] : 表示]]></description><category></category></item><item><title><![CDATA[leetcode 88\89\104]]></title><link>https://blog.youkuaiyun.com/Riccca/article/details/112860092</link><guid>https://blog.youkuaiyun.com/Riccca/article/details/112860092</guid><author>Riccca</author><pubDate>Wed, 20 Jan 2021 11:41:34 +0800</pubDate><description><![CDATA[目录88 合并两个有序数组89 格雷编码104 二叉树的最大深度
88 合并两个有序数组
class Solution:
    def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -&gt; None:
        """
        Do not return anything, modify nums1 in-place instead.
        """
        if m == 0: 
    ]]></description><category></category></item></channel></rss>