🚀 悪意URL検出モデル
リアルタイムでフィッシング、マルウェア、改ざんなどの悪意URLを検出するために微調整されたBERT-LoRAモデルです。
🚀 クイックスタート
このモデルは、リアルタイムで悪意URLを検出するために設計された、BERTベースの分類器です。低ランク適応(LoRA) を適用することで、計算コストを削減しながら高精度を維持した効率的な微調整が可能です。
✨ 主な機能
- 4つのカテゴリに分類:モデルはURLを「正常」「改ざん」「フィッシング」「マルウェア」の4つのカテゴリに分類します。
- 高い検出精度:検証精度が98% 、F1スコアが0.965 を達成し、堅牢な検出能力を備えています。
📦 インストール
このモデルは🤗 Transformers を使用して直接利用できます。以下のコードを参考にしてください。
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "your-huggingface-model-name"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
url = "http://example.com/login"
inputs = tokenizer(url, return_tensors="pt", truncation=True, padding=True, max_length=128)
with torch.no_grad():
outputs = model(**inputs)
prediction = torch.argmax(outputs.logits).item()
label_map = {0: "Benign", 1: "Defacement", 2: "Phishing", 3: "Malware"}
print(f"Prediction: {label_map[prediction]}")
💻 使用例
基本的な使用法
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch
model_name = "your-huggingface-model-name"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForSequenceClassification.from_pretrained(model_name)
url = "http://example.com/login"
inputs = tokenizer(url, return_tensors="pt", truncation=True, padding=True, max_length=128)
with torch.no_grad():
outputs = model(**inputs)
prediction = torch.argmax(outputs.logits).item()
label_map = {0: "Benign", 1: "Defacement", 2: "Phishing", 3: "Malware"}
print(f"Prediction: {label_map[prediction]}")
📚 ドキュメント
想定される用途
- サイバーセキュリティツールのリアルタイムURL分類
- オンラインセキュリティのためのフィッシングとマルウェアの検出
- 即時脅威アラートを提供するブラウザ拡張機能への統合
- SOC(セキュリティオペレーションセンター)のセキュリティ監視
モデルの詳細
属性 |
详情 |
モデルタイプ |
BERTベースのURL分類器 |
微調整方法 |
LoRA(低ランク適応) |
ベースモデル |
bert-base-uncased |
パラメータ数 |
110M |
データセット |
Kaggle Malicious URLs Dataset (~651,191 samples) |
最大シーケンス長 |
128 |
フレームワーク |
🤗 transformers , torch , peft |
学習の詳細
- バッチサイズ:
16
- エポック数:
5
- 学習率:
2e-5
- オプティマイザ:重み減衰を伴うAdamW
- 損失関数:重み付き交差エントロピー
- 評価戦略:エポックベース
- 微調整戦略:BERTレイヤーにLoRAを適用
評価結果
指標 |
値 |
正解率 |
98% |
適合率 |
0.96 |
再現率 |
0.97 |
F1スコア |
0.965 |
カテゴリ別の性能
カテゴリ |
適合率 |
再現率 |
F1スコア |
正常 |
0.98 |
0.99 |
0.985 |
改ざん |
0.98 |
0.99 |
0.985 |
フィッシング |
0.93 |
0.94 |
0.935 |
マルウェア |
0.95 |
0.96 |
0.955 |
デプロイメントオプション
Streamlit Webアプリ
- Streamlit Cloud、AWS、またはGoogle Cloud でデプロイされます。
- ユーザーフレンドリーなインターフェースでリアルタイムのURL分析を提供します。
ブラウザ拡張機能(予定)
- 訪問したウェブページのリアルタイムスキャン。
- 信頼度スコア付きの動的な脅威アラート。
API統合
- 大量のURL分析用のREST API。
- セキュリティオペレーションセンター(SOC) をサポートします。
制限事項とバイアス
- 正当なサイトを模倣した複雑なフィッシングURLを誤分類する可能性があります。
- 進化する脅威に対応するために定期的な更新が必要です。
- 学習データに将来の脅威が反映されていない場合、潜在的なバイアスが生じる可能性があります。
学習データと引用
データソース
データセットはKaggle Malicious URLs Dataset から取得されています。
📌 データセットリンク
BibTeX引用
@article{maliciousurl2025,
author = {Gleyzie Tongo, Dr. Farnaz Farid, Dr. Ala Al-Areqi, Dr. Farhad Ahamed},
title = {Fine-Tuned BERT for Malicious URL Detection},
year = {2025},
institution = {Western Sydney University}
}
連絡先
質問、協力依頼、またはフィードバックについては、LinkedInを通じてご連絡いただけます。
🔗 Gleyzie Tongo
📄 ライセンス
このモデルはapache-2.0
ライセンスの下で提供されています。