模型简介
模型特点
模型能力
使用案例
🚀 精明的Llama - Phishsense - 1B:革新网络钓鱼防护!
网络钓鱼攻击不断演变,对企业和个人都构成了威胁。要是你能部署一个高效且有效的、由人工智能驱动的防御系统,主动识别这些威胁并保护你的收件箱,那该多好?
Llama - Phishsense - 1B
就是这样的解决方案,它是基于微调后的 Llama - Guard - 3 - 1B
的最先进模型,经过训练能够敏锐感知网络钓鱼威胁。它体积小巧,可在任何地方使用,是专门为网络钓鱼检测而训练的模型。
🚀 快速开始
使用 Llama - Phishsense - 1B
就像运行几行 Python 代码一样简单。你只需加载基础模型和 LoRA 适配器,就能在几秒钟内对电子邮件进行分类!
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
# Function to load the model and tokenizer
def load_model():
tokenizer = AutoTokenizer.from_pretrained("AcuteShrewdSecurity/Llama-Phishsense-1B")
base_model = AutoModelForCausalLM.from_pretrained("AcuteShrewdSecurity/Llama-Phishsense-1B")
model_with_lora = PeftModel.from_pretrained(base_model, "AcuteShrewdSecurity/Llama-Phishsense-1B")
# Move model to GPU if available
if torch.cuda.is_available():
model_with_lora = model_with_lora.to('cuda')
return model_with_lora, tokenizer
# Function to make a single prediction
def predict_email(model, tokenizer, email_text):
prompt = f"Classify the following text as phishing or not. Respond with 'TRUE' or 'FALSE':\n\n{email_text}\nAnswer:"
inputs = tokenizer(prompt, return_tensors="pt")
# Move inputs to GPU if available
if torch.cuda.is_available():
inputs = {key: value.to('cuda') for key, value in inputs.items()}
with torch.no_grad():
output = model.generate(**inputs, max_new_tokens=5, temperature=0.01, do_sample=False)
response = tokenizer.decode(output[0], skip_special_tokens=True).split("Answer:")[1].strip()
return response
# Load model and tokenizer
model, tokenizer = load_model()
# Example email text
email_text = "Urgent: Your account has been flagged for suspicious activity. Please log in immediately."
prediction = predict_email(model, tokenizer, email_text)
print(f"Model Prediction for the email: {prediction}")
✨ 主要特性
抵御企业级网络钓鱼攻击
在企业环境中,网络钓鱼邮件可能看起来很正规,容易绕过传统过滤器。攻击者会专门定制邮件来针对特定人员,尤其是财务、人力资源或 IT 部门的人员。AcuteShrewdSecurity/Llama - Phishsense - 1B
可以集成到企业电子邮件系统中,作为额外的保护层:
- 降低针对性网络钓鱼攻击的风险:有效识别针对企业人员的钓鱼邮件,减少数据泄露的可能性。
- 防止敏感信息被非法访问:保护企业的核心数据,避免因钓鱼攻击导致的信息泄露。
- 减少恢复成功钓鱼攻击造成的停机时间:及时发现并阻止钓鱼邮件,降低对企业业务的影响。
个人使用场景
对于个人来说,管理个人信息比以往任何时候都更加重要。看起来来自合法服务(如网上银行或社交网络)的网络钓鱼邮件很容易通过基本的电子邮件过滤器。该模型:
- 在你打开邮件之前识别钓鱼企图:提前拦截钓鱼邮件,保护个人信息安全。
- 提供明确的“TRUE”或“FALSE”预测:清晰告知邮件是否安全,让你一目了然。
- 让你放心,知道你的私人数据是安全的:为个人用户提供可靠的安全保障。
提供网络钓鱼防护即服务
对于安全专业人员和 IT 提供商来说,将 Llama - Phishsense - 1B
集成到安全服务中,可以为客户提供额外的、可靠的、由人工智能驱动的保护层:
- 将此模型添加到现有的网络安全堆栈中:增强现有安全系统的功能,提升整体防护能力。
- 通过提供经过验证的网络钓鱼检测系统提高客户满意度:为客户提供更优质的安全服务,增强客户信任。
- 帮助客户避免高昂的违规成本并保持运营效率:减少因钓鱼攻击导致的损失,保障客户业务的正常运行。
📦 安装指南
文档未提及安装步骤,故跳过此章节。
💻 使用示例
基础用法
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
# Function to load the model and tokenizer
def load_model():
tokenizer = AutoTokenizer.from_pretrained("AcuteShrewdSecurity/Llama-Phishsense-1B")
base_model = AutoModelForCausalLM.from_pretrained("AcuteShrewdSecurity/Llama-Phishsense-1B")
model_with_lora = PeftModel.from_pretrained(base_model, "AcuteShrewdSecurity/Llama-Phishsense-1B")
# Move model to GPU if available
if torch.cuda.is_available():
model_with_lora = model_with_lora.to('cuda')
return model_with_lora, tokenizer
# Function to make a single prediction
def predict_email(model, tokenizer, email_text):
prompt = f"Classify the following text as phishing or not. Respond with 'TRUE' or 'FALSE':\n\n{email_text}\nAnswer:"
inputs = tokenizer(prompt, return_tensors="pt")
# Move inputs to GPU if available
if torch.cuda.is_available():
inputs = {key: value.to('cuda') for key, value in inputs.items()}
with torch.no_grad():
output = model.generate(**inputs, max_new_tokens=5, temperature=0.01, do_sample=False)
response = tokenizer.decode(output[0], skip_special_tokens=True).split("Answer:")[1].strip()
return response
# Load model and tokenizer
model, tokenizer = load_model()
# Example email text
email_text = "Urgent: Your account has been flagged for suspicious activity. Please log in immediately."
prediction = predict_email(model, tokenizer, email_text)
print(f"Model Prediction for the email: {prediction}")
高级用法
文档未提及高级用法相关代码,故跳过此部分。
📚 详细文档
为何网络钓鱼是日益严重的威胁
网络钓鱼不再仅仅是个人的担忧,它已经成为企业级的威胁。许多网络攻击都是从针对有价值数据的网络钓鱼邮件开始的。恶意行为者会编写越来越具有欺骗性的邮件,即使是最警惕的人也很难区分真实邮件和欺诈邮件。
其后果包括:数十亿的财务损失、个人和专业账户被盗用以及声誉受损。
解决方案:人工智能驱动的网络钓鱼检测
传统安全系统难以跟上现代网络钓鱼策略的步伐。这就是人工智能发挥作用的地方。Llama - Phishsense - 1B
旨在:
- 实时自动检测网络钓鱼模式:及时发现并拦截钓鱼邮件,保护用户安全。
- 保护你的组织免受代价高昂的违规行为:减少因钓鱼攻击导致的经济损失和数据泄露。
- 让人们有信心地管理收件箱,知道自己受到保护:为用户提供可靠的安全保障。
加入提升网络安全的行动
我们的计划不仅仅是另一个人工智能工具,它是迈向全球网络弹性的一步。通过利用最新的低秩自适应(LoRA) 技术,AcuteShrewdSecurity/Llama - Phishsense - 1B
模型旨在以最少的资源识别网络钓鱼企图,在不牺牲准确性的前提下实现快速高效的检测。
模型描述
Llama - Phishsense - 1B
是 meta - llama/Llama - Guard - 3 - 1B
的微调版本,专门针对企业电子邮件环境中的网络钓鱼检测进行了优化。通过先进的基于 LoRA 的微调,它将电子邮件分类为“TRUE”(钓鱼)或“FALSE”(非钓鱼),为日益增长的电子邮件诈骗威胁提供轻量级但强大的保护。
关键特性
属性 | 详情 |
---|---|
基础模型 | meta - llama/Llama - Guard - 3 - 1B 和 meta - llama/Llama - 3.2 - 1B |
LoRA 微调 | 使用低秩自适应进行高效调整,实现快速、资源友好的部署 |
任务 | 二进制电子邮件分类 - 钓鱼(TRUE)或非钓鱼(FALSE) |
数据集 | 定制的网络钓鱼电子邮件数据集,包含真实世界的钓鱼和正常电子邮件 |
模型大小 | 10 亿参数,确保在不增加过多资源负担的情况下实现强大的性能 |
架构 | 具有 LoRA 自适应层的因果语言模型,实现速度和效率的平衡 |
为何选择此模型
如今,网络钓鱼是大多数安全漏洞的罪魁祸首。Llama - Phishsense - 1B
模型是解决这一问题的答案:
- 高度准确:该模型在实际评估中取得了出色的成绩,在平衡数据集上的 F1 分数达到 0.99。
- 快速高效:利用 LoRA 微调,它运行速度更快,同时需要的计算资源更少,意味着你可以在不降低系统速度的情况下获得一流的保护。
- 人人可用:无论你是 IT 团队还是单个电子邮件用户,这个工具都易于集成和使用。
训练和微调
LoRA 配置
- 秩:
r = 16
- Alpha:
lora_alpha = 32
- Dropout:
lora_dropout = 0.1
- 在 q_proj 和 v_proj 变压器层上进行自适应调整,以实现高效微调。
训练数据
该模型在一个平衡数据集上进行了微调,该数据集包含 30,000 封钓鱼邮件和 30,000 封非钓鱼邮件,这些邮件选自 ealvaradob/phishing - dataset
,以确保在现实世界中的适用性。
优化器
- AdamW 优化器:权重衰减为
0.01
,学习率为1e - 3
。
训练配置
- 混合精度(FP16):在不牺牲准确性的前提下实现更快的训练。
- 梯度累积步数:10。
- 批量大小:每个设备 10。
- 训练轮数:10。
性能(微调前后)
我们的模型在多个数据集上证明了其有效性(评估来自 zefang - liu/phishing - email - dataset
以及自定义创建的数据集):
指标 | 基础模型(meta - llama/Llama - Guard - 3 - 1B) | 微调后模型(AcuteShrewdSecurity/Llama - Phishsense - 1B) | 性能提升(微调后 vs 基础) |
---|---|---|---|
准确率 | 0.52 | 0.97 | 0.45 |
精确率 | 0.52 | 0.96 | 0.44 |
召回率 | 0.53 | 0.98 | 0.45 |
在验证数据集(包括自定义专家设计的钓鱼案例)上,该模型仍然表现出色:
指标 | 基础模型(meta - llama/Llama - Guard - 3 - 1B) | 微调后模型(AcuteShrewdSecurity/Llama - Phishsense - 1B) | 性能提升(微调后 vs 基础) |
---|---|---|---|
准确率 | 0.31 | 0.98 | 0.67 |
精确率 | 0.99 | 1.00 | 0.01 |
召回率 | 0.31 | 0.98 | 0.67 |
与一些相关模型的比较如下:
点击查看相关论文 。如有反馈,请发送邮件至 b1oo@shrewdsecurity.com 。
🔧 技术细节
LoRA 配置
- 秩:
r = 16
,确定了低秩矩阵的维度,影响模型的表达能力和计算效率。 - Alpha:
lora_alpha = 32
,用于缩放低秩矩阵的更新,调整微调过程中的学习步长。 - Dropout:
lora_dropout = 0.1
,在训练过程中随机丢弃部分神经元,防止过拟合。 - 模型在 q_proj 和 v_proj 变压器层上进行自适应调整,这些层在注意力机制中起着关键作用,通过微调这些层可以更有效地捕捉文本特征,提高模型的性能。
训练数据
模型在一个平衡的数据集上进行微调,该数据集包含 30,000 封钓鱼邮件和 30,000 封非钓鱼邮件,选自 ealvaradob/phishing - dataset
。这种平衡的数据集有助于模型学习到钓鱼邮件和非钓鱼邮件的特征,提高分类的准确性。同时,使用真实世界的邮件数据可以确保模型在实际应用中的有效性。
优化器
使用 AdamW 优化器,它结合了 Adam 优化器的自适应学习率和权重衰减的优点。权重衰减设置为 0.01
,可以防止模型过拟合,提高泛化能力。学习率设置为 1e - 3
,控制模型在训练过程中的更新步长,确保模型能够稳定收敛。
训练配置
- 混合精度(FP16):采用混合精度训练可以在不牺牲太多准确性的前提下,显著提高训练速度。通过使用半精度浮点数(FP16)进行计算,可以减少内存占用,提高 GPU 的利用率。
- 梯度累积步数:设置为 10,意味着在每 10 个批次的训练后才进行一次参数更新。这可以模拟更大的批次大小,在有限的内存资源下实现更稳定的训练。
- 批量大小:每个设备的批量大小为 10,确定了每次训练时输入模型的样本数量。合适的批量大小可以平衡训练速度和模型性能。
- 训练轮数:设置为 10,即模型对整个数据集进行 10 次完整的训练。足够的训练轮数可以让模型充分学习数据的特征,但过多的轮数可能会导致过拟合。
📄 许可证
本模型的许可证为 llama3.2
。








