收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
dif=np.asarray(dif_li),
)
![在这里插入图片描述](https://img-blog.csdnimg.cn/2e84ac9216de48d499786fc98a8d772b.png)
public static Map<String, double[]> thresholding_algo(double[] y, int lag, double threshold) {
double[] signals = new double[y.length];
double[] avgFilter = new double[y.length];
Arrays.fill(avgFilter, 0.0);
avgFilter[lag - 1] = mean(Arrays.copyOfRange(y, 0, lag));
double[] dif_li = new double[y.length];
Arrays.fill(dif_li, 0.0);
for (int i = lag; i < y.length; i++) {
int j;
if (i < y.length - lag - 30) {
for (j = i + 11; j < y.length; j++) {
if (y[j] >= y[i - 1]) {
break;
}
}
double back;
if (j >= y.length - 30) {
back = y[i - 1];
} else {
back = mean(Arrays.copyOfRange(y, j + 11, j + 20 + lag));
}
} else {
back = y[i - 1];
}
double tmp = Math.abs(back - avgFilter[i - 1]);
double dif = tmp > 1 ? tmp : 1;
if (Math.abs(y[i] - avgFilter[i - 1]) > dif \* threshold) {
signals[i] = y[i] > avgFilter[i - 1] ? 1 : -1;
avgFilter[i] = mean(Arrays.copyOfRange(y, i - lag, i));
y[i] = avgFilter[i - 1];
} else {
signals[i] = 0;
avgFilter[i] = mean(Arrays.copyOfRange(y, i - lag, i));
}
dif_li[i] = dif;
}
Map<String, double[]> result = new HashMap<>();
result.put("signals", signals);
result.put("avgFilter", avgFilter);
result.put("y", y);
result.put("dif", dif_li);
return result;
}
private static double mean(double[] array) {
double sum = 0.0;
for (double d : array) {
sum += d;
}
return sum / array.length;
}
## 四、代码解释-1
**用途**:当我们来到一家新的公司,发现前任工程师留下了一摊谁都看不懂的代码,这时候,如果有个人能帮我们解释一下这些代码是什么意思,那简直不要太开心。
![在这里插入图片描述](https://img-blog.csdnimg.cn/636ce2a6894b4118b76da7173a0d1e7d.png)
def Fusion_algorithm(y_list):
“”"
最终的融合算法
1、第一次遍历列表: 处理掉小于上一个值的点,使其等于上一个值。
2、第二次使用z-score来处理异常点:一种基于统计方法的时序异常检测算法借鉴了一些经典的统计方法,比如Z-score和移动平均线
该算法将时间序列中的每个数据点都看作是来自一个正态分布,通过计算每个数据点与其临接数据点的平均值和标准差,可以获得Z-score
并将其用于检测异常值,将z-score大于3的数据点视为异常值,缺点:如果异常点太多,则该算法的准确性较差。
3、
:param y_list: 传入需要处理的时间序列
:return:
“”"
# 第一次处理
for i in range(1, len(y_list)):
difference = y_list[i] - y_list[i - 1]
if difference <= 0:
y_list[i] = y_list[i - 1]
# 基于突变检测的方法:如果一个数据点的值与前一个数据点的值之间的差异超过某个阈值,
# 则该数据点可能是一个突变的异常点。这种方法需要使用一些突变检测算法,如Z-score突变检测、CUSUM(Cumulative Sum)
# else:
# if abs(difference) > 2 * np.mean(y_list[:i]):
# y_list[i] = y_list[i - 1]
# 第二次处理
# 计算每个点的移动平均值和标准差
ma = np.mean(y_list)
# std = np.std(np.array(y\_list))
std = np.std(y_list)
# 计算Z-score
z_score = [(x - ma) / std for x in y_list]
# 检测异常值
for i in range(len(y_list)):
# 如果z-score大于3,则为异常点,去除
if z_score[i] > 3:
print(y_list[i])
y_list[i] = y_list[i - 1]
return y_list
![在这里插入图片描述](https://img-blog.csdnimg.cn/e9187d3fbdf143e1817a0518c436443c.png)
## 五、代码解释-2
**备注**:上一个代码解释,我们可以看到,答案或许受到了代码中注释的影响,我们删掉注释,再来一次。对于解释中一些不懂的点,我们可以连续追问!
![在这里插入图片描述](https://img-blog.csdnimg.cn/db174ed165b8474d95bd9a9fe9382820.png)
import numpy as np
from sklearn.ensemble import IsolationForest
import plotly.express as px
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
import json
def Fusion_algorithm(y_list):
for i in range(1, len(y_list)):
difference = y_list[i] - y_list[i - 1]
if difference <= 0:
y_list[i] = y_list[i - 1]
# else:
# if abs(difference) > 2 \* np.mean(y\_list[:i]):
# y\_list[i] = y\_list[i - 1]
ma = np.mean(y_list)
std = np.std(y_list)
z_score = [(x - ma) / std for x in y_list]
for i in range(len(y_list)):
if z_score[i] > 3:
print(y_list[i])
y_list[i] = y_list[i - 1]
return y_list
![在这里插入图片描述](https://img-blog.csdnimg.cn/2203c5e0208a4e52b1c8675dbd141918.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5a9c4645cbe343f9988a9fd6aa5ab026.png)
## 六、修复代码错误
**用途**:写完一段代码后发现有错误?让chatGPT来帮你!
![在这里插入图片描述](https://img-blog.csdnimg.cn/b40e2aa164864668bfc7bbd490bde00e.png)
Buggy Python
import Random
a = random.randint(1,12)
b = random.randint(1,12)
for i in range(10):
question = "What is “+a+” x “+b+”? "
answer = input(question)
if answer = a*b
print (Well done!)
else:
print(“No.”)
![在这里插入图片描述](https://img-blog.csdnimg.cn/92c3badcfedb4dc8b7b1ebabb9900473.png)
## 七、作为百科全书
**用途**:chatGPT可以解释你所有的问题!但是列出小说这个功能有些拉跨,经过测试只有科幻小说列的还可以,其他类型不太行,可能chatgpt训练工程师是个科幻迷!
![在这里插入图片描述](https://img-blog.csdnimg.cn/fcf88c0f03aa4736827d4ca8700807ea.png)
## 八、信息提取
**用途**:作为自然语言处理界的大模型,怎么能少得了信息提取呢?
![在这里插入图片描述](https://img-blog.csdnimg.cn/05ca43ec4b8b41eaa61cd99759af0e72.png)
## 九、好友聊天
**用途**:输入对方性格模拟聊天,这方面功能不太完善,可能有新鲜玩法我还没有挖掘出来。
![在这里插入图片描述](https://img-blog.csdnimg.cn/4e074dec9c2546e6a24d44fcc8f9c99a.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/04570b1b6a8042168caf1f97fb198d40.png)
## 十、创意生成器
**用途**:是不是常常会在创新上遇到思维瓶颈不知道怎么做?不要担心,让chatGPT帮你生成创意!
### 10-1、VR和密室结合
![在这里插入图片描述](https://img-blog.csdnimg.cn/e2ea980dc4fb41db91de0d3e9fc3dfde.png)
### 10-2、再结合AR
![在这里插入图片描述](https://img-blog.csdnimg.cn/4e783285ca7c47ce99add6db5e5240be.png)
## 十一、采访问题
**用途**: 可能您是一个媒体工作者,采访问题不知道怎么写?chatGPT可以帮您解决。
### 11-1、采访问题清单
![在这里插入图片描述](https://img-blog.csdnimg.cn/0beca959ec674437b44df651edfb58cf.png)
### 11-2、采访问题清单并给出相应答案
![在这里插入图片描述](https://img-blog.csdnimg.cn/c2360db06fbb4592b3ad421d5879ed25.png)
## 十二、论文大纲
**用途**: 这个功能对于研究生简直不要太爽了,一直在郁闷大纲怎么写,直接列出来大纲简直帮了我天大的忙!对于大纲中不理解的点,直接要求chatGPT给出进一步解释。代码也可以有!那一章的内容不太会写,直接让chatGPT安排,这样,一篇论文很快就写出来啦!
### 12-1、创建论文大纲
![在这里插入图片描述](https://img-blog.csdnimg.cn/ec3420bc5b9646839017785715adcb54.png)
### 12-2、解释大纲内容
![在这里插入图片描述](https://img-blog.csdnimg.cn/32e7e1c210c245c19bfbefc76895bb70.png)
class PBA(nn.Module):
def __init__(self, PerformanceThreshold, DistributionType, AttentionWeightRange):
super(PBA, self).__init__()
self.PerformanceThreshold = PerformanceThreshold
self.DistributionType = DistributionType
self.AttentionWeightRange = AttentionWeightRange
def forward(self, input, performance_scores):
# 计算注意力分数
attention_scores = []
for i in range(len(input)):
if performance_scores[i] > self.PerformanceThreshold:
attention_scores.append(performance_scores[i])
else:
attention_scores.append(0.0)
# 将性能分数映射到注意力权重
if self.DistributionType == "softmax":
attention_weights = F.softmax(torch.tensor(attention_scores), dim=0)
elif self.DistributionType == "sigmoid":
attention_weights = torch.sigmoid(torch.tensor(attention_scores))
else:
raise ValueError("Unknown distribution type: {}".format(self.DistributionType))
# 缩放注意力权重到指定范围
attention_weights = attention_weights \* (self.AttentionWeightRange[1] - self.AttentionWeightRange[0]) + self.AttentionWeightRange[0]
# 计算加权输入
weighted_input = torch.mul(input, attention_weights.unsqueeze(1).expand\_as(input))
output = torch.sum(weighted_input, dim=0)
return output
## 十三、故事创作
**用途**: 这个功能真的太太太棒了,以后我自己列提纲出来就可以写小说啦!
### 13-1、爱情故事
![在这里插入图片描述](https://img-blog.csdnimg.cn/5aa315833c264532a64e8af300fce0be.png)
### 13-2、恐怖故事
![在这里插入图片描述](https://img-blog.csdnimg.cn/f357c65e3c964f7b824b34b78e014af2.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/f17a73dab43d4498b136ca4ed68f2843.png)
## 十四、问题类比
**用途**: 当你想要做一个比喻时,这是一个很棒的功能。
![在这里插入图片描述](https://img-blog.csdnimg.cn/fa2cc08228034929a24604a26b17d975.png)
## 十五、创建SQL需求
**用途**: 写SQL有时候挺头疼的,想好久想不起来。
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b64e118029345beba6d70b8926513cb.png)
## 十六、情感分析
**用途**: 这个功能让我想起来在之前公司做的情感分析任务了。
![在这里插入图片描述](https://img-blog.csdnimg.cn/0cb454ce09d445fd9460a2b7a821ba98.png)
## 十七、将产品描述转变为广告
**用途**: 这个功能对于商家来说太棒了。
![在这里插入图片描述](https://img-blog.csdnimg.cn/31c5fe072db44a91a533d07b11bb5b26.png)
## 十八、关键字提取
**用途**: NLP任务的重要作用,关键字提取!
![在这里插入图片描述](https://img-blog.csdnimg.cn/682aa15b2dbd4795ad2e09ff43f8e6b1.png)
## 十九、闲聊机器人
**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/fa2c8a1eeedde0a7bf8ae3ca48c20bd5.png)
![img](https://img-blog.csdnimg.cn/img_convert/54a2aa76413e49382dcdfa7fd96f1449.png)
**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**
**需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**
**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
g)
## 十九、闲聊机器人
**收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。**
[外链图片转存中...(img-rDgEb0A8-1715765895606)]
[外链图片转存中...(img-bLpW3wfa-1715765895606)]
**[如果你需要这些资料,可以戳这里获取](https://bbs.csdn.net/topics/618679757)**
**需要这些体系化资料的朋友,可以加我V获取:vip1024c (备注嵌入式)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人**
**都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**