> 기술 주변기기 > 일체 포함 > 재무 감정 분석을위한 미세 조정 GPT-4O MINI

재무 감정 분석을위한 미세 조정 GPT-4O MINI

William Shakespeare
풀어 주다: 2025-03-18 11:35:21
원래의
635명이 탐색했습니다.

금융의 감정 분석은 시장 동향과 투자자 행동을 이해하기위한 강력한 도구입니다. 그러나 일반적인 감정 분석 모델은 복잡성과 미묘한 특성으로 인해 재무 텍스트에 적용될 때 종종 부족합니다. 이 프로젝트는 가벼운 언어 모델 인 GPT-4O Mini를 미세 조정하여 솔루션을 제안합니다. 전문가 모델 Finbert의 감정 클래스로 표시된 로이터 금융 뉴스 기사 모음 인 TRC2 데이터 세트를 사용하여 GPT-4O 미니의 재무 감정 뉘앙스를 캡처하는 능력을 향상시키는 것을 목표로합니다.

이 프로젝트는 금융 감정 분석에 효율적이고 확장 가능한 접근 방식을 제공하여 금융에서보다 미묘한 감정 기반 분석을위한 문을 열어줍니다. 결국, 우리는 도메인 별 데이터로 미세 조정할 때 GPT-4O MINI가 재무 상황에서 Finbert와 같은보다 복잡한 모델에 대한 실행 가능한 대안으로 작용할 수 있음을 보여줍니다.

학습 결과

  • 도메인 별 데이터를 사용하여 금융 감정 분석을위한 GPT-4O MINI를 미세 조정하는 프로세스를 이해하십시오.
  • 체계적이고 확장 가능한 방식으로 모델 교육을위한 금융 텍스트 데이터를 전제 및 포맷하는 방법을 알아보십시오.
  • 재무 텍스트에 대한 감정 분석의 적용에 대한 통찰력과 시장 동향에 미치는 영향을 얻습니다.
  • Finbert와 같은 전문가로 표지 된 데이터 세트를 활용하여 금융 감정 분석에서 모델 성능을 향상시키는 방법을 알아보십시오.
  • 시장 분석 및 자동화 된 뉴스 감정 추적과 같은 실제 금융 응용 프로그램에서 미세 조정 된 GPT-4O 미니 모델의 실제 배치를 살펴보십시오.

이 기사는 Data Science Blogathon 의 일부로 출판되었습니다 .

목차

  • 데이터 세트 탐색 : 감정 분석을위한 필수 데이터
  • 연구 방법론 : 재무 감정을 분석하는 단계
  • 재무 감정 분석을위한 미세 조정 GPT-4O MINI
  • 결론
  • 자주 묻는 질문

데이터 세트 탐색 : 감정 분석을위한 필수 데이터

이 프로젝트를 위해, 우리는 로이터가 큐레이터하고 NIST (National Institute of Standards and Technology)를 통해 제공되는 금융 뉴스 기사 모음 인 TRC2 (Trec Reuters Corpus, Volume 2) DataSet을 사용합니다. TRC2 데이터 세트에는 광범위한 범위와 금융 이벤트와의 관련성으로 인해 금융 언어 모델에 종종 사용되는 포괄적 인 로이터 금융 뉴스 기사가 포함되어 있습니다.

TRC2 데이터 세트 액세스

TRC2 데이터 세트를 얻으려면 연구원과 조직은 NIST를 통해 액세스를 요청해야합니다. 이 데이터 세트는 NIST TREC Reuters Corpus에서 제공되며 라이센스 및 사용 계약에 대한 세부 정보를 제공합니다. 당신은 다음을 필요로합니다.

  • nisttrecreuterscorpus를 방문하십시오.
  • 웹 사이트에 지정된 데이터 세트 요청 프로세스를 따르십시오.
  • 라이센스 요구 사항을 준수하여 연구 또는 상업 프로젝트에서 데이터 세트를 사용하십시오.

데이터 세트를 얻으면 전처리 및 감정 분석을 위해 문장으로 분류하여 Finbert를 적용하여 전문가 라벨 정서 클래스를 생성 할 수 있습니다.

연구 방법론 : 재무 감정을 분석하는 단계

Finbert에서 파생 된 감정 라벨이있는 GPT-4O MINI를 미세 조정하는 방법론은 다음과 같은 주요 단계로 구성됩니다.

1 단계 : 핀버트 라벨링

미세 조정 데이터 세트를 만들려면 금융 영역에서 미리 훈련 된 금융 언어 모델 인 Finbert를 활용합니다. 우리는 TRC2 데이터 세트의 각 문장에 Finbert를 적용하여 긍정적, 부정적 및 중립의 세 가지 클래스에서 전문가 감정 레이블을 생성합니다. 이 프로세스는 TRC2의 각 문장이 감정과 관련된 레이블이 붙은 데이터 세트를 생성하므로 신뢰할 수있는 레이블로 GPT-4O MINI를 훈련하기위한 토대를 제공합니다.

2 단계 : 데이터 전처리 및 JSONL 형식

이어서, 라벨링 된 데이터는 사전 처리되고 OpenAI의 미세 조정 API에 적합한 JSONL 구조로 포맷된다. 우리는 각 데이터 포인트를 다음 구조로 포맷합니다.

  • 재무 전문가로서의 보조 역할을 지정하는 시스템 메시지.
  • 재무 문장이 포함 된 사용자 메시지.
  • Finbert의 예측 된 감정 레이블을 명시하는 보조 응답.

라벨링 후, 우리는 일관성을 위해 라벨을 소문자로 변환하고 균형 잡힌 레이블 표현을 보장하기 위해 데이터를 계층화하는 것과 같은 추가 전처리 단계를 수행합니다. 또한 데이터 세트를 교육 및 검증 세트로 나누어 교육 데이터의 80%, 검증에 대한 20%를 예약하여 모델의 일반화 능력을 평가하는 데 도움이됩니다.

3 단계 : 미세 조정 GPT-4O 미니

OpenAi의 미세 조정 API를 사용하여 사전 표지 된 데이터 세트와 함께 GPT-4O Mini를 미세 조정합니다. 학습 속도, 배치 크기 및 에포크 수와 같은 미세 조정 설정은 모델 정확도와 일반화 사이의 균형을 달성하도록 최적화됩니다. 이 프로세스를 통해 GPT-4O MINI는 도메인 별 데이터에서 학습하고 재무 감정 분석 작업에 대한 성능을 향상시킬 수 있습니다.

4 단계 : 평가 및 벤치마킹

교육 후 모델의 성능은 정확도 및 F1- 점수와 같은 일반적인 감정 분석 메트릭을 사용하여 평가되므로 동일한 데이터에서 Finbert의 성능과 직접 비교할 수 있습니다. 이 벤치마킹은 GPT-4O Mini가 금융 영역 내에서 감정 분류를 얼마나 잘 일반화하는지를 보여주고 Finbert가 지속적으로 정확도를 능가 할 수 있는지 확인합니다.

5 단계 : 배포 및 실제 응용 프로그램

우수한 성능을 확인하면 GPT-4O MINI는 시장 분석, 투자 자문 및 자동 뉴스 감정 추적과 같은 실제 금융 응용 프로그램에 배치 할 준비가되었습니다. 이 미세 조정 된 모델은보다 복잡한 재무 모델에 대한 효율적인 대안을 제공하여 금융 시스템에 통합에 적합한 강력하고 확장 가능한 감정 분석 기능을 제공합니다.

감정 분석의 기본 사항을 배우려면 Python을 사용하여 감정 분석에 대한 기사를 확인하십시오!

재무 감정 분석을위한 미세 조정 GPT-4O MINI

이 구조화 된 단계별 접근 방식을 따라 프로세스의 각 단계를 완벽하게 탐색하십시오. 초보자이든 경험이든,이 가이드는 처음부터 끝까지 명확하고 성공적인 구현을 보장합니다.

1 단계 : 초기 설정

필요한 라이브러리를로드하고 환경을 구성합니다.

 변압기에서 Autotokenizer, AutomodElforeceenceColassification에서
토치 수입
팬더를 PD로 가져옵니다
TQDM에서 TQDM에서

Tokenizer = autotokenizer.from_pretraind ( "prosusai/finbert")
model = automodelforedeceenceclassification.from_pretrained ( "prosusai/finbert")

device = torch.device ( 'cuda'인 경우 torch.cuda.is_available () else 'cpu')
model.to (장치)
로그인 후 복사

2 단계 : Finbert로 감정 레이블을 생성하는 함수 정의

  • 이 함수는 텍스트 입력을 수용하고, 토큰을 토큰 화하고, Finbert를 사용하여 감정 레이블을 예측합니다.
  • 레이블 매핑 : Finbert는 양성, 음수 및 중립의 세 가지 클래스를 출력합니다.
 def get_sentiment (텍스트) :
    inputs = tokenizer (text, return_tensors = "pt", truncation = true, max_length = 512).
    Torch.no_grad ()로 :
        출력 = 모델 (** 입력)
    logits = outputs.logits
    sentiment = torch.argmax (logits, dim = 1) .item ()
    sentiment_label = [ "positive", "negative", "neutral"] [sentiment]
    Sentiment_Label을 반환합니다
로그인 후 복사

3 단계 : 데이터 전처리 및 TRC2 데이터 세트 샘플링

미세 조정을위한 관련 문장 만 유지하려면 TRC2 데이터 세트를 신중하게 전처리해야합니다. 다음 단계는 TRC2 데이터 세트에서 데이터를 읽고, 청소하고, 분할하고, 필터링하는 방법을 설명합니다.

비공개의 제약 조건을 고려할 때,이 섹션은 데이터 전처리 워크 플로우와 함께 높은 수준의 개요를 제공합니다.

  • 로드 및 추출 데이터 : 압축 형식으로 제공된 데이터 세트를 표준 텍스트 처리 방법을 사용하여로드하고 추출했습니다. 주요 텍스트 내용에 중점을두기 위해 각 문서의 관련 섹션을 분리했습니다.
  • 텍스트 청소 및 문장 세분화 : 컨텐츠 섹션을 분리 한 후 각 문서를 정리하여 외부 문자를 제거하고 서식의 일관성을 보장했습니다. 이것은 문장 또는 작은 텍스트 단위로 분할하기위한 내용을 준비했으며, 이는 감정 분석을위한 관리 가능한 세그먼트를 제공하여 모델 성능을 향상시킵니다.
  • 구조화 된 데이터 저장 : 간소화 된 처리를 용이하게하기 위해 데이터는 각 행이 개별 문장 또는 텍스트 세그먼트를 나타내는 구조 형식으로 구성되었습니다. 이 설정을 통해 효율적인 처리, 필터링 및 라벨링이 가능하여 미세 조정 언어 모델에 적합합니다.
  • 관련 텍스트 세그먼트의 필터 및 화면 : 높은 데이터 품질을 유지하기 위해 다양한 기준을 적용하여 관련이 없거나 시끄러운 텍스트 세그먼트를 필터링했습니다. 이러한 기준에는 지나치게 짧은 세그먼트를 제거하고, 비 중지 부유 컨텐츠를 나타내는 특정 패턴을 가진 세그먼트를 제거하고, 과도한 특수 문자 또는 특정 서식 특성을 가진 세그먼트를 제외했습니다.
  • 최종 전처리 : 사전 정의 된 품질 표준을 충족 한 세그먼트 만 모델 교육을 위해 유지되었습니다. 필터링 된 데이터는 미세 조정 워크 플로에서 쉽게 참조 할 수 있도록 구조화 된 파일로 저장되었습니다.
 # 파일에서 압축 데이터 세트를로드하십시오
compressed_file을 파일로 엽니 다 :
    # 파일의 내용을 메모리로 읽습니다
    data = read_file (파일)

# 각 문서의 관련 섹션을 추출합니다
데이터의 각 문서에 대해 :
    Document_ID 추출
    추출 날짜
    main_text_content를 추출합니다

# 텍스트 컨텐츠를 정리하고 세그먼트 할 함수 정의
함수 clean_and_segment_text (텍스트) :
    # 원치 않는 문자와 공백을 제거하십시오
    cleaned_text = remove_special_characters (텍스트)
    cleaned_text = Standardize_whitespace (cleaned_text)
    
    # 정리 된 텍스트를 문장 또는 텍스트 세그먼트로 분할
    문장 = split_into_sentences (cleaned_text)
    
    반환 문장

# 각 문서의 내용에 청소 및 세분화 기능을 적용하십시오.
데이터의 각 문서에 대해 :
    sentences = clean_and_segment_text (document [ 'main_text_content']))
    문장을 구조화 된 형식으로 저장합니다
    
# 개별 문장에 대한 구조화 된 데이터 저장소를 만듭니다
구조화 된 _data의 빈 목록을 초기화하십시오

문장의 각 문장에 대해 :
    # 구조화 된 데이터에 문장을 추가하십시오
    구조화 된 _data.append (문장)

# 특정 기준에 따라 원치 않는 문장을 걸러내는 함수 정의
함수 filter_sentence (문장) :
    문장이 너무 짧은 경우 :
        거짓을 반환하십시오
    문장이 특정 패턴 (예 : 날짜 또는 과도한 기호)이 포함 된 경우 :
        거짓을 반환하십시오
    문장이 원치 않는 서식 특성과 일치하는 경우 :
        거짓을 반환하십시오
    
    진실을 반환하십시오

# 필터를 구조화 된 데이터에 적용하십시오
filterd_data = [filter_sentence (sentence) 인 경우 condratured_data의 문장 문장]]

# 최소 길이 또는 기타 기준에 따라 문장을 추가로 필터링합니다.
final_data = [meets_minimum_length (sentence) 인 경우 filtered_data 문장 문장]]]

# 모델 교육을위한 최종 데이터 구조를 저장합니다
final_data를 conductured_file로 저장하십시오
로그인 후 복사
  • 미세 조정을위한 관리 가능한 데이터 세트 크기를 보장하기 위해 데이터 세트를로드하고 1,000,000 문장을 무작위로 샘플링하십시오.
  • 샘플링 된 문장을 데이터 프레임에 저장하여 구조화 된 처리 및 쉬운 처리를 가능하게합니다.
 df_sampled = df.sample (n = 10000000, random_state = 42) .reset_index (drop = true)
로그인 후 복사

4 단계 : 라벨을 생성하고 미세 조정을 위해 JSONL 데이터를 준비하십시오

  • 샘플링 된 문장을 살펴보고 Finbert를 사용하여 각 문장을 레이블을 지정하고 GPT-4O 미니 미세 조정을위한 JSONL로 포맷하십시오.
  • JSONL의 구조 : 각 항목에는 시스템 메시지, 사용자 컨텐츠 및 조수의 감정 응답이 포함됩니다.
 JSON 수입

jsonl_data = []
_, tqdm의 행
    content = row [ 'sentence']
    감정 = get_sentiment (내용)
    
    jsonl_entry = {
        "메시지": [
            { "역할": "System", "Content": "보조원은 재무 전문가입니다."},
            { "역할": "사용자", "content": content},
            { "역할": "Assistant", "Content": Sentiment}
        ]]
    }
    jsonl_data.append (jsonl_entry)

jsonl_file로 Open ( 'finetuning_data.jsonl', 'w')을 사용하여 :
    JSONL_DATA 입력 :
        JSONL_FILE.WRITE (json.dumps (Entry) '\ n')
로그인 후 복사

5 단계 : 라벨을 소문자로 변환합니다

  • 정서 레이블을 소문자로 변환하여 OpenAI의 미세 조정 형식과 정렬되어 라벨 일관성을 보장하십시오.
 jsonl_file로 Open ( 'finetuning_data.jsonl', 'r')을 사용하여 :
    data = [JSONL_FILE의 라인에 대한 JSON.LOADS (라인)]]

데이터 입력 :
    Entry [ "메시지"] [2] [ "Content"] = entry [ "메시지"] [2] [ "Content"]. Lower ()

new_jsonl_file로 Open ( 'finetuning_data_lowercase.jsonl', 'w')을 사용하여 :
    데이터 입력 :
        new_jsonl_file.write (json.dumps (Entry) '\ n')
로그인 후 복사

STEP6 : 데이터 세트를 교육 및 검증 세트로 셔플하고 분할합니다.

  • 데이터 셔플 데이터 : 순서 바이어스를 제거하기 위해 항목 순서를 무작위 화하십시오.
  • 80% 교육 및 20% 검증 세트로 나뉩니다.
 무작위로 가져옵니다
Random.seed (42)

random.shuffle (데이터)

split_ratio = 0.8
split_index = int (len (data) * split_ratio)

training_data = data [: split_index]
validation_data = data [split_index :]

rain_file로 Open ( 'training_data.jsonl', 'w')을 사용하여 :
    Training_Data의 입력 :
        train_file.write (json.dumps (Entry) '\ n')

val_file로 Open ( 'validation_data.jsonl', 'w')으로 :
    validation_data의 항목 :
        val_file.write (json.dumps (Entry) '\ n')
로그인 후 복사

Step7 : 계층화 된 샘플링을 수행하고 감소 된 데이터 세트를 저장하십시오

  • 추가 최적화를 위해 라벨 비율을 유지하면서 줄어드는 샘플링을 수행하여 감소 된 데이터 세트를 생성하십시오.
  • 계층화 된 샘플링 사용 : 균형 잡힌 미세 조정을 위해 교육 및 검증 세트에서 라벨을 동일하게 분포하십시오.
 sklearn.model_selection import train_test_split

data_df = pd.dataframe ({
    'content': [entry [ "메시지"] [1] [ "Content"] 데이터 입력의 경우], 
    'label': [entry [ "메시지"] [2] [ "Content"] 데이터 입력의 경우]
})

DF_SAMPLED, _ = TRAIN_TEST_SPLIT (data_df, stratify = data_df [ 'label'], test_size = 0.9, random_state = 42)
train_df, val_df = train_test_split (df_sampled, stratify = df_sampled [ 'label'], test_size = 0.2, random_state = 42)

def df_to_jsonl (df, filename) :
    jsonl_data = []
    _, df.iterrows ()의 행 :
        jsonl_entry = {
            "메시지": [
                { "역할": "System", "Content": "보조원은 재무 전문가입니다."},
                { "역할": "사용자", "내용": row [ 'content']},
                { "역할": "Assistant", "Content": row [ 'label']}
            ]]
        }
        jsonl_data.append (jsonl_entry)
    
    jsonl_file로 Open (filename, 'w')을 사용하여 :
        JSONL_DATA 입력 :
            JSONL_FILE.WRITE (json.dumps (Entry) '\ n')

df_to_jsonl (train_df, 'reted_training_data.jsonl')
df_to_jsonl (val_df, 'reted_validation_data.jsonl')
로그인 후 복사

Step8 : OpenAI의 미세 조정 API를 사용한 GPT-4O 미니 미세 조정

  • 준비된 JSONL 파일을 사용하면 준비된 교육 및 검증 데이터 세트에 대한 GPT-4O MINI를 미세 조정하려면 OpenAI의 문서를 따르십시오.
  • 데이터를 업로드하고 미세 조정을 시작하십시오. JSONL 파일을 OpenAI의 플랫폼에 업로드하고 API 지침을 따라 미세 조정 프로세스를 시작하십시오.

재무 감정 분석을위한 미세 조정 GPT-4O MINI

9 단계 : 모델 테스트 및 평가

미세 조정 된 GPT-4O Mini Model의 성능을 평가하기 위해 Kaggle에서 사용할 수있는 라벨이있는 재무 감정 데이터 세트에서 테스트했습니다. 이 데이터 세트에는 재무 상황에 5,843 개의 라벨이 붙은 문장이 포함되어있어 미세 조정 모델과 핀버트를 의미있는 비교할 수 있습니다.

Finbert는 75.81%의 정확도를 기록한 반면 미세 조정 된 GPT-4O 미니 모델은 76.46%를 달성하여 약간의 개선을 보여주었습니다.

테스트에 사용되는 코드는 다음과 같습니다.

 팬더를 PD로 가져옵니다
OS 가져 오기
OpenAi 가져 오기
dotenv import load_dotenv에서

# CSV 파일을로드하십시오
csv_file_path = 'data.csv' # 실제 파일 경로로 교체
df = pd.read_csv (csv_file_path)

# dataframe을 텍스트 형식으로 변환합니다
open ( 'sentences.txt', 'w', encoding = 'utf-8')로 f :
    인덱스의 경우 df.iterrows ()의 행 :
        sentence = row [ 'sentence']. strip () # clean sentence
        감정 = 행
        f.write (f "{sentence} @{sentiment} \ n")             

#로드 환경 변수
load_dotenv ()

# OpenAI API 키를 설정하십시오
Openai.api_key = os.getenv ( "OpenAi_api_key") # OpenAi_api_key가 환경 변수에 설정되었는지 확인

# 데이터 세트 텍스트 파일로가는 경로
file_path = 'sentences.txt' # 문장 및 레이블이 포함 된 텍스트 파일

# 데이터 세트에서 문장 및 실제 레이블을 읽습니다
문장 = []
true_labels = []

파일로 닫는 (file_path, 'r', encoding = 'utf-8')를 사용하여 :
    lines = file.readlines ()

# 문장 및 레이블 추출
라인으로 :
    line = line.strip ()
    '@'라인 인 경우 :
        문장, label = line.rsplit ( '@', 1)
        sentences.append (sentence.strip ())
        true_labels.append (label.strip ())

# 미세 조정 모델에서 예측을 얻는 기능
def get_openai_predictions (sentence, model = "your_finetuned_model_name") : # 모델 이름으로 바꾸십시오
    노력하다:
        응답 = openai.chatcompletion.create (
            모델 = 모델,
            메시지 = [
                { "역할": "System", "Content": "당신은 금융 감정 분석 전문가입니다."},
                { "역할": "사용자", "내용": sentence}
            ],,
            max_tokens = 50,
            온도 = 0.5
        ))
        반환 응답 [ '선택'] [0] [ 'message'] [ 'content']. strip ()
    E로 예외를 제외하고 :
        print (f "문장에 대한 예측을 생성하는 오류 : '{sentence}'. 오류 : {e}")
        "알 수없는"반환

# 데이터 세트에 대한 예측을 생성합니다
예측 된 _labels = []
문장 문장의 경우 :
    예측 = get_openai_predictions (문장)
    
    # 예측을 '긍정적', '중립', '부정'으로 정상화하십시오.
    prediction.lower ()에서 'positive'인 경우 :
        predited_labels.append ( 'positive')
    prediction.lower ()의 elif '중립':
        predited_labels.append ( '중립')
    elif prediction.lower ()의 '음수':
        predited_labels.append ( 'negative')
    또 다른:
        predited_labels.append ( '알 수없는')

# 모델의 정확도를 계산합니다
right_count = sum ([pred == pred의 경우 pred == true, true in zip (predicted_labels, true_labels)]))
정확도 = 정확한 _count / len (문장)

print (f'Accuracy : {정확도 : .4f} ') # 예상 출력 : 0.7646
로그인 후 복사

결론

이 프로젝트는 Finbert의 재무 도메인 레이블의 전문 지식을 GPT-4O MINI의 유연성과 결합함으로써 Finbert를 정확하게 능가하는 고성능 재무 감정 모델을 달성합니다. 이 안내서와 방법론은 특히 금융 산업에 맞게 조정 된 복제 가능하고 확장 가능하며 해석 가능한 감정 분석의 길을 열어줍니다.

주요 테이크 아웃

  • 도메인 별 데이터를 갖춘 미세 조정 GPT-4O MINI는 미묘한 금융 감정을 캡처하는 능력을 향상시키고 Finbert와 같은 모델을 정확하게 수행하는 능력을 향상시킵니다.
  • 로이터가 큐 레이트 한 TRC2 데이터 세트는 효과적인 감정 분석 교육을위한 고품질 금융 뉴스 기사를 제공합니다.
  • Finbert와의 전처리 및 라벨링은 GPT-4O MINI를 가능하게합니다.
  • 이 접근법은 실제 금융 응용 프로그램을위한 GPT-4O MINI의 확장 성을 보여 주며 복잡한 모델에 대한 가벼운 대안을 제공합니다.
  • OpenAI의 미세 조정 API를 활용 하여이 방법은 효율적이고 효과적인 재무 감정 분석을 위해 GPT-4O MINI를 최적화합니다.

자주 묻는 질문

Q1. 금융 정서 분석을 위해 Finbert 대신 GPT-4O MINI를 사용하는 이유는 무엇입니까?

A. GPT-4O MINI는 가볍고 유연한 대안을 제공하며 미세 조정으로 특정 작업에 대해 Finbert를 능가 할 수 있습니다. 도메인 별 데이터로 미세 조정함으로써 GPT-4O MINI는 재무 텍스트에서 미묘한 감정 패턴을 캡처하면서보다 계산적으로 효율적이고 배포하기 쉽습니다.

Q2. TRC2 데이터 세트에 대한 액세스를 어떻게 요청합니까?

A. TRC2 데이터 세트에 액세스하려면이 링크에서 NIST (National Institute of Standards and Technology)를 통해 요청을 제출하십시오. 일반적으로 연구 및 상업용 사용에 필요한 라이센스 및 사용 계약을 완료하기위한 웹 사이트의 지침을 검토하십시오.

Q3. 재무 감정 분석을 위해 다른 데이터 세트를 사용할 수 있습니까?

A. 금융 문자 뱅크와 같은 다른 데이터 세트 또는 레이블이 지정된 재무 텍스트가 포함 된 사용자 정의 데이터 세트를 사용할 수도 있습니다. TRC2 데이터 세트는 재무 뉴스 컨텐츠를 포함하고 광범위한 재무 주제를 다루기 때문에 감정 모델 교육에 적합합니다.

Q4. Finbert는 감정 레이블을 어떻게 생성합니까?

A. Finbert는 재무 데이터에 대한 사전 훈련 및 감정 분석을위한 미세 조정을하는 금융 영역 별 언어 모델입니다. TRC2 문장에 적용될 때, 그것은 각 문장을 재무 텍스트의 언어 맥락에 따라 긍정적, 부정 또는 중립 정서로 분류합니다.

Q5. JSONL의 라벨을 소문자로 변환 해야하는 이유는 무엇입니까?

A. 라벨을 소문자로 변환하면 OpenAI의 미세 조정 요구 사항과 일관성이 유지되며, 이는 종종 라벨이 대소 문자에 민감 할 것으로 예상됩니다. 또한 평가 중 불일치를 방지하고 JSONL 데이터 세트에서 균일 한 구조를 유지합니다.

이 기사에 표시된 미디어는 분석 Vidhya가 소유하지 않으며 저자의 재량에 따라 사용됩니다.

위 내용은 재무 감정 분석을위한 미세 조정 GPT-4O MINI의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿