Idefics2 Raven Finetuned
レイヴン推理行列問題を解くために特別に設計されたマルチモーダルモデルで、ビジュアル - 言語基礎モデルに基づいて構築され、検証セットの正解率は91%に達します。
ダウンロード数 235
リリース時間 : 3/10/2024
モデル概要
このモデルはSigLIPとMistral - 7Bに基づいて構築され、特定のデータセットで訓練され、レイヴン推理行列問題を解くために特別に設計されており、検証セットで優れた性能を発揮します。
モデル特徴
高い正解率
レイヴン推理行列の検証セットで91%の正解率を達成します。
マルチモーダル基礎
ビジュアル - 言語基礎モデルの初期チェックポイントに基づいて構築されています。
特別な最適化
レイヴン推理行列問題に対して特別に訓練され、最適化されています。
モデル能力
レイヴン推理行列問題の解決
マルチモーダル画像理解
論理推論
使用事例
認知能力テスト
レイヴン推理テスト
標準的なレイヴン推理行列問題を解くために使用されます。
91%の検証正解率
教育評価
認知能力評価
教育シーンにおける認知能力テストに使用できます。
🚀 モデルAI Raven
このモデルは、レイヴンの漸進マトリックスを解くために訓練されたものです。視覚言語基礎モデルの早期チェックポイントをベースに構築されています。
デモを試してみましょう!
🚀 クイックスタート
このモデルは、レイヴンの漸進マトリックスを解くために訓練されています。手続き的に生成されたレイヴンパズルのRAVENデータセットを使用して訓練され、検証セットでは91%の精度を達成します。
✨ 主な機能
- レイヴンの漸進マトリックスを解くことができます。
- バッチ推論が可能です。
📦 インストール
インストールに関する具体的な手順は元文書に記載されていないため、このセクションをスキップします。
💻 使用例
基本的な使用法
import torch
import requests
from io import BytesIO
from PIL import Image
from transformers import AutoModelForCausalLM, AutoProcessor
from transformers.image_utils import to_numpy_array, PILImageResampling, ChannelDimension
from transformers.image_transforms import resize, to_channel_dimension_format
DEVICE = torch.device("cuda")
PROCESSOR = AutoProcessor.from_pretrained(
"HuggingFaceM4/tr_272_bis_opt_step_15000_merge",
token=API_TOKEN,
)
MODEL = AutoModelForCausalLM.from_pretrained(
"HuggingFaceM4/tr_272_bis_opt_step_15000_merge",
token=API_TOKEN,
trust_remote_code=True,
torch_dtype=torch.bfloat16,
).to(DEVICE)
image_seq_len = MODEL.config.perceiver_config.resampler_n_latents
BOS_TOKEN = PROCESSOR.tokenizer.bos_token
BAD_WORDS_IDS = PROCESSOR.tokenizer(["<image>", "<fake_token_around_image>"], add_special_tokens=False).input_ids
def convert_to_rgb(image):
# `image.convert("RGB")` would only work for .jpg images, as it creates a wrong background
# for transparent images. The call to `alpha_composite` handles this case
if image.mode == "RGB":
return image
image_rgba = image.convert("RGBA")
background = Image.new("RGBA", image_rgba.size, (255, 255, 255))
alpha_composite = Image.alpha_composite(background, image_rgba)
alpha_composite = alpha_composite.convert("RGB")
return alpha_composite
# The processor is the same as the Idefics processor except for the BILINEAR interpolation,
# so this is a hack in order to redefine ONLY the transform method
def custom_transform(x):
x = convert_to_rgb(x)
x = to_numpy_array(x)
height, width = x.shape[:2]
aspect_ratio = width / height
if width >= height and width > 980:
width = 980
height = int(width / aspect_ratio)
elif height > width and height > 980:
height = 980
width = int(height * aspect_ratio)
width = max(width, 378)
height = max(height, 378)
x = resize(x, (height, width), resample=PILImageResampling.BILINEAR)
x = PROCESSOR.image_processor.rescale(x, scale=1 / 255)
x = PROCESSOR.image_processor.normalize(
x,
mean=PROCESSOR.image_processor.image_mean,
std=PROCESSOR.image_processor.image_std
)
x = to_channel_dimension_format(x, ChannelDimension.FIRST)
x = torch.tensor(x)
return x
# Create text token inputs
image_seq = '<image>' * image_seq_len
inputs = PROCESSOR.tokenizer(
[
f"{BOS_TOKEN}User:<fake_token_around_image>{image_seq}<fake_token_around_image>Which figure should complete the logical sequence?<end_of_utterance>\nAssistant:",
f"{BOS_TOKEN}User:<fake_token_around_image>{image_seq}<fake_token_around_image>Which figure should complete the logical sequence?<end_of_utterance>\nAssistant:",
],
return_tensors="pt",
add_special_tokens=False,
padding=True,
)
# Create pixel inputs
raw_images = [
[your_raven_puzzle_as_a_pil_image1],
[your_raven_puzzle_as_a_pil_image2],
]
output_images = [
[PROCESSOR.image_processor(img, transform=custom_transform) for img in img_list]
for img_list in raw_images
]
total_batch_size = len(output_images)
max_num_images = max([len(img_l) for img_l in output_images])
max_height = max([i.size(2) for img_l in output_images for i in img_l])
max_width = max([i.size(3) for img_l in output_images for i in img_l])
padded_image_tensor = torch.zeros(total_batch_size, max_num_images, 3, max_height, max_width)
padded_pixel_attention_masks = torch.zeros(
total_batch_size, max_num_images, max_height, max_width, dtype=torch.bool
)
for batch_idx, img_l in enumerate(output_images):
for img_idx, img in enumerate(img_l):
im_height, im_width = img.size()[2:]
padded_image_tensor[batch_idx, img_idx, :, :im_height, :im_width] = img
padded_pixel_attention_masks[batch_idx, img_idx, :im_height, :im_width] = True
inputs["pixel_values"] = padded_image_tensor
inputs["pixel_attention_mask"] = padded_pixel_attention_masks
inputs = {k: v.to(DEVICE) for k, v in inputs.items()}
generated_ids = MODEL.generate(**inputs, bad_words_ids=BAD_WORDS_IDS, max_new_tokens=10)
generated_texts = PROCESSOR.batch_decode(generated_ids, skip_special_tokens=True)
print(generated_texts)
高度な使用法
高度な使用法に関する具体的な説明は元文書に記載されていないため、このセクションをスキップします。
📚 ドキュメント
モデルの詳細
属性 | 详情 |
---|---|
開発者 | Hugging Face |
モデルタイプ | マルチモーダルモデル |
言語 | en |
ライセンス | ライセンスセクションを参照 |
親モデル | SigLIP と mistralai/Mistral-7B-v0.1 |
詳細情報のリソース | RAVENデータセット: データセットカード |
注意事項
⚠️ 重要提示
このモデルはレイヴンパズルを解くために特化して微調整されており、適切な適応なしにこの使用ケース以外で正確に動作することは保証できません。
📄 ライセンス
このモデルは、SigLIP と mistralai/Mistral-7B-v0.1 という2つの事前学習モデルをベースに構築されています。これらのモデルはApache-2.0ライセンスの下で提供されています。したがって、ユーザーはこれらのモデルのライセンスに準拠する必要があります。
2つの事前学習モデルは、新しく初期化されたパラメータで接続され、訓練されています。これらは、複合モデルを形成する2つのベースの凍結モデルのいずれにも基づいていません。私たちは、訓練した追加の重みをApache-2.0ライセンスの下で公開しています。
Codebert Base
CodeBERTはプログラミング言語と自然言語向けの事前学習モデルで、RoBERTaアーキテクチャに基づいており、コード検索やコードからドキュメント生成などの機能をサポートします。
マルチモーダル融合
C
microsoft
1.6M
248
Llama 4 Scout 17B 16E Instruct
その他
Llama 4 ScoutはMetaが開発したマルチモーダルAIモデルで、混合専門家アーキテクチャを採用し、12言語のテキストと画像インタラクションをサポート、17Bの活性化パラメータと109Bの総パラメータを有します。
マルチモーダル融合
Transformers 複数言語対応

L
meta-llama
817.62k
844
Unixcoder Base
Apache-2.0
UniXcoderは統一されたマルチモーダル事前学習モデルで、コードコメントや抽象構文木などのマルチモーダルデータを使用してコード表現を事前学習します。
マルチモーダル融合
Transformers 英語

U
microsoft
347.45k
51
TITAN
TITANは、病理学画像分析のための視覚的自己教師あり学習と視覚-言語アライメントによるマルチモーダル全スライド基礎モデルです。
マルチモーダル融合
Safetensors 英語
T
MahmoodLab
213.39k
37
Qwen2.5 Omni 7B
その他
Qwen2.5-Omniはエンドツーエンドのマルチモーダルモデルで、テキスト、画像、音声、ビデオなど様々なモダリティを認識し、ストリーミング方式でテキストや自然な音声レスポンスを生成できます。
マルチモーダル融合
Transformers 英語

Q
Qwen
206.20k
1,522
Minicpm O 2 6
MiniCPM-o 2.6はスマートフォンで動作するGPT-4oレベルのマルチモーダル大規模モデルで、視覚、音声、ライブストリーム処理をサポート
マルチモーダル融合
Transformers その他

M
openbmb
178.38k
1,117
Llama 4 Scout 17B 16E Instruct
その他
Llama 4 ScoutはMetaが開発した17Bパラメータ/16エキスパート混合のマルチモーダルAIモデルで、12言語と画像理解をサポートし、業界をリードする性能を有しています。
マルチモーダル融合
Transformers 複数言語対応

L
chutesai
173.52k
2
Qwen2.5 Omni 3B
その他
Qwen2.5-Omniはエンドツーエンドのマルチモーダルモデルで、テキスト、画像、音声、ビデオなど様々なモダリティ情報を認識し、ストリーミング方式でテキストと自然な音声応答を同期生成できます。
マルチモーダル融合
Transformers 英語

Q
Qwen
48.07k
219
One Align
MIT
Q-Alignはマルチタスク視覚評価モデルで、画像品質評価(IQA)、美的評価(IAA)、動画品質評価(VQA)に特化しており、ICML2024で発表されました。
マルチモーダル融合
Transformers

O
q-future
39.48k
25
Biomedvlp BioViL T
MIT
BioViL-Tは胸部X線画像と放射線レポートの分析に特化した視覚言語モデルで、時系列マルチモーダル事前学習により性能を向上させています。
マルチモーダル融合
Transformers 英語

B
microsoft
26.39k
35
おすすめAIモデル
Llama 3 Typhoon V1.5x 8b Instruct
タイ語専用に設計された80億パラメータの命令モデルで、GPT-3.5-turboに匹敵する性能を持ち、アプリケーションシナリオ、検索拡張生成、制限付き生成、推論タスクを最適化
大規模言語モデル
Transformers 複数言語対応

L
scb10x
3,269
16
Cadet Tiny
Openrail
Cadet-TinyはSODAデータセットでトレーニングされた超小型対話モデルで、エッジデバイス推論向けに設計されており、体積はCosmo-3Bモデルの約2%です。
対話システム
Transformers 英語

C
ToddGoldfarb
2,691
6
Roberta Base Chinese Extractive Qa
RoBERTaアーキテクチャに基づく中国語抽出型QAモデルで、与えられたテキストから回答を抽出するタスクに適しています。
質問応答システム 中国語
R
uer
2,694
98