博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机毕设项目实战10年之久,选择我们就是选择放心、选择安心毕业✌感兴趣的可以先收藏起来,点赞、关注不迷路✌
开发技术
-
服务器:vmvare Linux
-
爬虫: Python
-
组件:hadoop spark hive
-
数据库:mysql
-
可视化:Django echarts vue
-
情感分析:lstm snownlp
-
预测算法:cnn knn 线性回归
相关技术点详解
- 情感分析
- snownlp库
- snownlp 是一个用于处理中文文本的 Python 库,它提供了各种功能来帮助用户执行包括情感分析、词性标注、文本翻译、文本相似度计算、文本摘要、文本分词等多个自然语言处理任务。我们通过他对我们分词的情感进行评估。
- snownlp 提供了情感分析功能,通过 sentiment 方法可以对文本的情感倾向进行评估。它返回一个最大为1分为(负面情感)、(正面情感)之间的数值。
- snownlp库
- 词云图
- def get_img(数据库字段名,蒙版图片,结果图片)
- 连接数据库获取字段数据
-
- 通过jieba库获取词组
- 中文分词,通俗来说,就是将一句(段)话按一定的规则(算法)拆分成词语、成语、单个文字。 中文分词是很多应用技术的前置技术,如搜索引擎、机器翻译、词性标注、相似度分析等,都是先对文本信息分词处理,再用分词结果来搜索、翻译、对比等。
- 生成词云图
-
- Plt绘制词云图
-
- 连接数据库获取字段数据
- def get_img(数据库字段名,蒙版图片,结果图片)
- 机器学习
- 简介
- 机器学习是一门多领域交叉学科,涉及概率论、统计学等多门学科。它专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构,从而不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。
- 机器学习是一种能够赋予机器学习的能力以此让他们能够完成直接编程,无法完成的方法,从实践来说,就是一种利用数据,训练出模型,然后使用模型预测的一种方法。
- 线性回归算法
- 线性回归算法是一种用来预测连续数值的监督学习算法。
- 线性回归假设存在一个线性关系,即一条直线或者一条高维空间内的超平面,能够最好地拟合输入变量和输出变量之间的关系。换句话说,它试图找到一个最佳的线性方程来描述数据之间的关联。
- sklearn.linear_model.LinearRegression 是 Scikit-learn 库中用于实现线性回归算法的类,用于训练线性回归模型。
- 简介



















核心深度学习算法代码分享如下:
要实现一个基于深度学习的抖音短视频情感分析,我们首先需要有一个情感分析模型。这里我们可以使用预训练的BERT模型(或其他类似的模型如RoBERTa, ALBERT等),因为这些模型已经在大量的文本数据上进行了预训练,并可以很好地处理情感分析任务。
以下是一个使用PyTorch和Transformers库实现的简单例子。这个例子假设你已经有了短视频的文本描述或字幕数据,并将其用于情感分析。
首先,你需要安装必要的库:
pip install torch transformers
接下来是代码实现:
from transformers import BertTokenizer, BertForSequenceClassification
from torch.utils.data import DataLoader, Dataset
import torch
# 设定GPU
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
# 加载预训练的BERT模型和分词器
model = BertForSequenceClassification.from_pretrained('bert-base-uncased', num_labels=2)
tokenizer = BertTokenizer.from_pretrained('bert-base-uncased')
model.to(device)
# 示例数据
texts = ["I love this video!", "This is so boring!"]
labels = torch.tensor([1, 0]) # 1 表示积极,0 表示消极
# 数据集
class TextDataset(Dataset):
def __init__(self, texts, labels, tokenizer, max_len):
self.texts = texts
self.labels = labels
self.tokenizer = tokenizer
self.max_len = max_len
def __len__(self):
return len(self.texts)
def __getitem__(self, item):
text = str(self.texts[item])
target = self.labels[item]
encoding = self.tokenizer.encode_plus(
text,
add_special_tokens=True,
max_length=self.max_len,
return_token_type_ids=False,
padding='max_length',
truncation=True,
return_attention_mask=True,
return_tensors='pt',
)
return {
'text': text,
'input_ids': encoding['input_ids'].flatten(),
'attention_mask': encoding['attention_mask'].flatten(),
'targets': torch.tensor(target, dtype=torch.long)
}
# 数据加载
dataset = TextDataset(texts, labels, tokenizer, max_len=128)
data_loader = DataLoader(dataset, batch_size=2)
# 模型评估
model.eval()
with torch.no_grad():
for batch in data_loader:
input_ids = batch['input_ids'].to(device)
attention_mask = batch['attention_mask'].to(device)
targets = batch['targets'].to(device)
outputs = model(
input_ids=input_ids,
attention_mask=attention_mask
)
_, predicted = torch.max(outputs.logits, 1)
print("Predicted:", predicted.item(), "Actual:", targets.item())
这段代码首先加载了一个预训练的BERT模型和一个对应的分词器。然后,它定义了一个简单的数据集类,用于处理文本数据和标签。最后,它使用数据加载器来批量处理数据,并通过模型进行预测。
请注意,这只是一个示例,实际应用中你可能需要对模型进行训练,并使用真实的抖音视频字幕或文本描述。此外,还需要处理视频数据的提取和预处理。





被折叠的 条评论
为什么被折叠?



