LLM-Leistung mithilfe von Feinabstimmung und Bewertung verbessern
In dieser Anleitung wird gezeigt, wie Sie ein BigQuery ML-Remote-Modell erstellen, das auf das Vertex AI text-bison
Foundation Model verweist.
Anschließend verwenden Sie
Überwachte Abstimmung um das Modell mit neuen Trainingsdaten zu optimieren, gefolgt von der Bewertung des Modells mit der ML.EVALUATE
Funktion “
Dies kann Ihnen bei der Behebung von Szenarien helfen, in denen Sie das gehostete Vertex AI-Modell anpassen müssen, z. B. wenn das erwartete Verhalten des Modells schwierig zu definieren ist in einem Prompt oder wenn Prompts nicht die erwarteten Ergebnisse generieren, d. h. Ergebnisse die konsistent genug sind. Die überwachte Abstimmung beeinflusst das Modell auch auf folgende Weise:
- Führt das Modell so, dass bestimmte Antwortstile zurückgegeben werden, z. B. prägnanter oder ausführlicher.
- Lernt dem Modell neue Verhaltensweisen, z. B. auf Aufforderungen als eine bestimmte Identität zu reagieren.
- Verlangt, dass das Modell sich mit neuen Informationen selbst aktualisiert.
Erforderliche Berechtigungen
Zum Erstellen einer Verbindung benötigen Sie die folgende IAM-Rolle (Identity and Access Management):
roles/bigquery.connectionAdmin
Zum Erteilen von Berechtigungen für das Dienstkonto der Verbindung benötigen Sie die folgende Berechtigung:
resourcemanager.projects.setIamPolicy
Zum Erstellen des Modells mit BigQuery ML benötigen Sie die folgenden IAM-Berechtigungen:
bigquery.jobs.create
bigquery.models.create
bigquery.models.getData
bigquery.models.updateData
bigquery.models.updateMetadata
Zum Ausführen von Inferenzen benötigen Sie die folgenden Berechtigungen:
bigquery.tables.getData
für die Tabellebigquery.models.getData
für das Modellbigquery.jobs.create
Hinweise
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
Enable the BigQuery, BigQuery Connection, Vertex AI, and Compute Engine APIs.
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
- BigQuery: Für die Abfragen, die Sie in BigQuery ausführen, fallen Kosten an.
- BigQuery ML: Für das von Ihnen erstellte Modell und die Inferenz in BigQuery ML fallen Kosten an.
- Vertex AI: Es fallen Kosten für Aufrufe und die überwachte Abstimmung des Modells
text-bison
an.
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Weitere Informationen finden Sie in den folgenden Ressourcen:
Dataset erstellen
Erstellen Sie ein BigQuery-Dataset, um Ihr ML-Modell zu speichern:
Rufen Sie in der Google Cloud Console die Seite „BigQuery“ auf.
Klicken Sie im Bereich Explorer auf den Namen Ihres Projekts.
Klicken Sie auf
Aktionen ansehen > Dataset erstellen.Führen Sie auf der Seite Dataset erstellen die folgenden Schritte aus:
Geben Sie unter Dataset-ID
bqml_tutorial
ein.Wählen Sie als Standorttyp die Option Mehrere Regionen und dann USA (mehrere Regionen in den USA) aus.
Die öffentlichen Datasets sind am multiregionalen Standort
US
gespeichert. Der Einfachheit halber sollten Sie Ihr Dataset am selben Standort speichern.Übernehmen Sie die verbleibenden Standardeinstellungen unverändert und klicken Sie auf Dataset erstellen.
Verbindung herstellen
Erstellen Sie eine Cloud-Ressourcenverbindung und rufen Sie die Dienstkonto-ID der Verbindung ab. Erstellen Sie die Verbindung am selben Standort wie das Dataset, das Sie im vorherigen Schritt erstellt haben.
Wählen Sie eine der folgenden Optionen aus:
Console
Rufen Sie die Seite BigQuery auf.
Klicken Sie auf
Hinzufügen und dann auf Verbindungen zu externen Datenquellen, um eine Verbindung zu erstellen.Wählen Sie in der Liste Verbindungstyp die Option Vertex AI-Remote-Modelle, Remote-Funktionen und BigLake (Cloud Resource) aus.
Geben Sie im Feld Verbindungs-ID einen Namen für die Verbindung ein.
Klicken Sie auf Verbindung erstellen.
Klicken Sie auf Zur Verbindung.
Kopieren Sie im Bereich Verbindungsinformationen die Dienstkonto-ID zur Verwendung in einem späteren Schritt.
bq
Erstellen Sie in einer Befehlszeilenumgebung eine Verbindung:
bq mk --connection --location=REGION --project_id=PROJECT_ID \ --connection_type=CLOUD_RESOURCE CONNECTION_ID
Der Parameter
--project_id
überschreibt das Standardprojekt.Ersetzen Sie Folgendes:
REGION
: Ihre VerbindungsregionPROJECT_ID
: Ihre Google Cloud-Projekt-IDCONNECTION_ID
: eine ID für Ihre Verbindung
Wenn Sie eine Verbindungsressource herstellen, erstellt BigQuery ein eindeutiges Systemdienstkonto und ordnet es der Verbindung zu.
Fehlerbehebung:Wird der folgende Verbindungsfehler angezeigt, aktualisieren Sie das Google Cloud SDK:
Flags parsing error: flag --connection_type=CLOUD_RESOURCE: value should be one of...
Rufen Sie die Dienstkonto-ID ab und kopieren Sie sie zur Verwendung in einem späteren Schritt:
bq show --connection PROJECT_ID.REGION.CONNECTION_ID
Die Ausgabe sieht in etwa so aus:
name properties 1234.REGION.CONNECTION_ID {"serviceAccountId": "connection-1234-9u56h9@gcp-sa-bigquery-condel.iam.gserviceaccount.com"}
Terraform
Hängen Sie folgenden Abschnitt an Ihre main.tf
-Datei an.
## This creates a cloud resource connection. ## Note: The cloud resource nested object has only one output only field - serviceAccountId. resource "google_bigquery_connection" "connection" { connection_id = "CONNECTION_ID" project = "PROJECT_ID" location = "REGION" cloud_resource {} }
CONNECTION_ID
: eine ID für Ihre VerbindungPROJECT_ID
: Ihre Google Cloud-Projekt-IDREGION
: Ihre Verbindungsregion
Dem Dienstkonto Zugriff gewähren
Gewähren Sie Ihrem Dienstkonto die Rolle des Vertex AI-Dienst-Agents, damit das Dienstkonto auf Vertex AI zugreifen kann. Wird diese Rolle nicht zugewiesen, tritt ein Fehler auf. Wählen Sie eine der folgenden Optionen aus:
Console
Zur Seite IAM & Verwaltung.
Klicken Sie auf
Zugriff erlauben.Das Dialogfeld Principals hinzufügen wird geöffnet.
Geben Sie im Feld Neue Hauptkonten die Dienstkonto-ID ein, die Sie zuvor kopiert haben.
Klicken Sie auf Rolle auswählen.
Geben Sie unter Filter
Vertex AI Service Agent
ein und wählen Sie dann diese Rolle aus.Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl gcloud projects add-iam-policy-binding
aus:
gcloud projects add-iam-policy-binding 'PROJECT_NUMBER' --member='serviceAccount:MEMBER' --role='roles/aiplatform.serviceAgent' --condition=None
Ersetzen Sie Folgendes:
PROJECT_NUMBER
: Ihre ProjektnummerMEMBER
: Die Dienstkonto-ID, die Sie zuvor kopiert haben
Das mit Ihrer Verbindung verknüpfte Dienstkonto ist eine Instanz des BigQuery Connection Delegation Service-Agents. Daher kann eine Dienst-Agent-Rolle zugewiesen werden.
Dem Compute Engine-Standarddienstkonto Zugriff gewähren
Wenn Sie die Compute Engine API aktivieren, wird dem Compute Engine-Standarddienstkonto automatisch die Bearbeiterrolle für das Projekt zugewiesen, es sei denn, Sie haben dieses Verhalten für Ihr Projekt deaktiviert. In diesem Fall müssen Sie dem Compute Engine-Standarddienstkonto die Bearbeiterrolle wieder zuweisen, damit es über ausreichende Berechtigungen zum Erstellen und Optimieren eines Remote-Modells verfügt.
Console
Zur Seite IAM & Verwaltung.
Klicken Sie auf
Zugriff gewähren.Geben Sie unter Neue Hauptkonten die Dienstkonto-ID
PROJECT_NUMBER-compute@developer.gserviceaccount.com
ein.Klicken Sie auf Rolle auswählen.
Wählen Sie unter Rolle auswählen die Option Einfach und dann Bearbeiter aus.
Klicken Sie auf Speichern.
gcloud
Führen Sie den Befehl gcloud projects add-iam-policy-binding
aus:
gcloud projects add-iam-policy-binding 'PROJECT_NUMBER' --member='serviceAccount:MEMBER' --role='roles/editor' --condition=None
Ersetzen Sie Folgendes:
PROJECT_NUMBER
: Ihre Projektnummer.MEMBER
: die Dienstkonto-ID (PROJECT_NUMBER-compute@developer.gserviceaccount.com
).
Testtabellen erstellen
Erstellen Sie Tabellen mit Trainings- und Evaluationsdaten anhand des öffentlichen MTSamples-Datasets transkribierter medizinischer Berichte.
Dieses Dataset hat eine input_text
-Spalte, die das medizinische Transkript enthält und eine output_text
-Spalte mit dem Label, das die Kategorie des Transkripts am besten beschreibt, z. B. Allergy/Immunology
, Dentistry
oder Cardiovascular/Pulmonary
. Erstellen Sie außerdem eine Tabelle mit den Prompt-Daten für die Klassifizierung von medizinischen Transkripten.
Sie importieren die medizinischen Transkriptionsdaten aus einem öffentlichen Cloud Storage-Bucket.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor die folgende Anweisung aus, um eine Tabelle mit Bewertungsdaten zu erstellen:
LOAD DATA INTO `bqml_tutorial.medical_transcript_eval` FROM FILES(format='NEWLINE_DELIMITED_JSON', uris = ['gs://cloud-samples-data/vertex-ai/model-evaluation/peft_eval_sample.jsonl']);
Führen Sie im Abfrageeditor folgende Anweisung aus, um eine Tabelle mit Trainingsdaten zu erstellen:
LOAD DATA INTO `bqml_tutorial.medical_transcript_train` FROM FILES(format='NEWLINE_DELIMITED_JSON', uris = ['gs://cloud-samples-data/vertex-ai/model-evaluation/peft_train_sample.jsonl']);
Führen Sie im Abfrageeditor die folgende Anweisung aus, um eine Prompt-Tabelle zu erstellen:
CREATE OR REPLACE TABLE `bqml_tutorial.transcript_classification` AS (SELECT 'Please assign a label for the given medical transcript from among these labels [Allergy / Immunology, Autopsy, Bariatrics, Cardiovascular / Pulmonary, Chiropractic, Consult - History and Phy., Cosmetic / Plastic Surgery, Dentistry, Dermatology, Diets and Nutritions, Discharge Summary, ENT - Otolaryngology, Emergency Room Reports, Endocrinology, Gastroenterology, General Medicine, Hematology - Oncology, Hospice - Palliative Care, IME-QME-Work Comp etc., Lab Medicine - Pathology, Letters, Nephrology, Neurology, Neurosurgery, Obstetrics / Gynecology, Office Notes, Ophthalmology, Orthopedic, Pain Management, Pediatrics - Neonatal, Physical Medicine - Rehab, Podiatry, Psychiatry / Psychology, Radiology, Rheumatology, SOAP / Chart / Progress Notes, Sleep Medicine, Speech - Language, Surgery, Urology].' AS prompt);
Basismodell erstellen
Erstellen Sie ein Remote-Modell über dem Vertex AI-Modell text-bison
, mit dem Sie medizinische Transkripte klassifizieren können.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor die folgende Anweisung aus, um ein Remote-Modell zu erstellen:
CREATE OR REPLACE MODEL `bqml_tutorial.text_bison_001` REMOTE WITH CONNECTION `LOCATION.CONNECTION_ID` OPTIONS (ENDPOINT ='text-bison@001');
Ersetzen Sie Folgendes:
LOCATION
: Standort der VerbindungCONNECTION_ID
ist die ID Ihrer BigQuery-Verbindung.Wenn Sie sich Verbindungsdetails in der Google Cloud Console ansehen, ist die Verbindungs-ID der Wert
CONNECTION_ID
im letzten Abschnitt der voll qualifizierten Verbindungs-ID, der unter Verbindungs-ID angezeigt wird, z. B.projects/myproject/locations/connection_location/connections/myconnection
Die Abfrage dauert mehrere Sekunden. Anschließend wird das Modell
text_bison_001
imbqml_tutorial
-Dataset des Bereichs Explorer angezeigt. Da die Abfrage eineCREATE MODEL
-Anweisung zum Erstellen eines Modells verwendet, gibt es keine Abfrageergebnisse.
Leistung des Referenzmodells prüfen
Führen Sie die Funktion ML.GENERATE_TEXT
mit dem Remote-Modell aus, um zu sehen, wie es mit den Bewertungsdaten ohne Abstimmung funktioniert.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor folgende Abfrage aus:
SELECT * FROM ML.GENERATE_TEXT( MODEL `bqml_tutorial.text_bison_001`, ( SELECT CONCAT( (SELECT prompt from `bqml_tutorial.transcript_classification`), ' ', input_text) AS prompt, output_text AS label FROM `bqml_tutorial.medical_transcript_eval` ), STRUCT(TRUE AS flatten_json_output)) ORDER BY ml_generate_text_llm_result;
Wenn Sie die Ausgabedaten prüfen und die Werte
ml_generate_text_llm_result
undlabel
vergleichen, sehen Sie, dass das Basismodell zwar viele Transkriptklassifizierungen korrekt vorhersagt, aber einige Transkriptionen falsch klassifiziert. Das folgende Beispiel zeigt eine falsche Ausgabe. In diesem Beispiel ist die korrekte KlassifizierungCardiovascular / Pulmonary
und nichtRadiology
.+-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+ | ml_generate_text_llm_result | ml_generate_text_rai_result | ml_generate_text_status | prompt | label | +-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+ | Radiology | {"blocked":false,"categories": | | Please assign a label for the given medical | Cardiovascular / Pulmonary | | | ["Derogatory","Health", | | transcript from among these labels [Allergy / | | | | "Insult","Public Safety",... | | Immunology, Autopsy, Bariatrics, | | | | | | Cardiovascular / Pulmonary, Chiropractic, | | | | | | Consult - History and Phy., Cosmetic / | | | | | | Plastic Surgery, Dentistry, Dermatology, | | | | | | Diets and Nutritions, Discharge Summary, ENT | | | | | | - Otolaryngology, Emergency Room Reports, | | | | | | Endocrinology, Gastroenterology, General | | | | | | Medicine, Hematology - Oncology, Hospice - | | | | | | Palliative Care, IME-QME-Work Comp etc., | | | | | | Lab Medicine - Pathology, Letters, | | | | | | Nephrology, Neurology, Neurosurgery, | | | | | | Obstetrics / Gynecology, Office Notes, | | | | | | Ophthalmology, Orthopedic, Pain Management, | | | | | | Pediatrics - Neonatal, Physical Medicine - | | | | | | Rehab, Podiatry, Psychiatry / Psychology, | | | | | | Radiology, Rheumatology, SOAP / Chart / | | | | | | Progress Notes, Sleep Medicine, Speech - | | | | | | Language, Surgery, Urology]. | | | | | | TRANSCRIPT: | | | | | | INDICATIONS FOR PROCEDURE:, The patient has | | | | | | presented with atypical type right arm | | | | | | discomfort and neck discomfort. She had | | | | | | noninvasive vascular imaging demonstrating | | | | | | suspected right subclavian stenosis. Of note, | | | | | | there was bidirectional flow in the right | | | | | | vertebral artery, as well as 250 cm... | | +-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+
Basismodell bewerten
Verwenden Sie die Funktion ML.EVALUATE
, um eine detailliertere Bewertung der Modellleistung durchzuführen.
Diese Funktion berechnet Modellmesswerte wie Genauigkeit, Trefferquote und F1-Wert, um Folgendes zu sehen: wie die Antworten des Modells im Vergleich zu idealen Antworten sind.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor folgende Abfrage aus:
SELECT * FROM ML.EVALUATE( MODEL `bqml_tutorial.text_bison_001`, ( SELECT CONCAT( (SELECT prompt FROM `bqml_tutorial.transcript_classification`), ' ', input_text) AS input_text, output_text FROM `bqml_tutorial.medical_transcript_eval` ), STRUCT('classification' AS task_type)) ORDER BY label;
Die Ausgabe sieht dann ungefähr so aus:
+------------------------------+----------------------------------+-------------------------------------------------------------------------+ | precision | recall | f1_score | label | evaluation_status | +---------------------+---------------------+---------------------+----------------------------+--------------------------------------------+ | 1.0 | 0.66666666666666663 | 0.8 | Allergy / Immunology | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+ --------------------+----------------------------+--------------------------------------------+ | 1.0 | 1.0 | 1.0 | Autopsy | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+--------------- -----+----------------------------+--------------------------------------------+ | 1.0 | 0.66666666666666663 | 0.8 | Bariatrics | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+---------------------+----------------------------+--------------------------------------------+
Wenn Sie sich die Ergebnisse in der Spalte f1_score
ansehen, sehen Sie, dass die Modellleistung zwischen den Transkriptklassen variiert. Höhere F1-Wertwerte weisen auf eine bessere Leistung hin. Das Basismodell funktioniert bei den meisten Klassen gut, andere jedoch schlecht, z. B. die Klassen Cardiovascular / Pulmonary
und Chiropractic
. Daraus ergibt sich, dass sich die überwachte Abstimmung empfiehlt, um zu ermitteln, ob die Modellleistung in diesem Anwendungsfall verbessert werden kann.
Abgestimmtes Modell erstellen
Erstellen Sie ein Remote-Modell, das dem ähnelt, das Sie unter Modell erstellen erstellt haben, aber geben Sie dieses Mal die AS SELECT
-Klausel an, um die Trainingsdaten bereitzustellen, damit das Modell optimiert wird.
Diese Abfrage kann mehrere Stunden dauern.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor die folgende Anweisung aus, um ein Remote-Modell zu erstellen:
CREATE OR REPLACE MODEL `bqml_tutorial.text_bison_001_medical_transcript_tuned` REMOTE WITH CONNECTION `LOCATION.CONNECTION_ID` OPTIONS ( endpoint = 'text-bison@001', max_iterations = 300, data_split_method = 'no_split') AS SELECT CONCAT( (SELECT prompt FROM `bqml_tutorial.transcript_classification`), ' ', input_text) AS prompt, output_text AS label FROM `bqml_tutorial.medical_transcript_train`;
Ersetzen Sie Folgendes:
LOCATION
: Standort der VerbindungCONNECTION_ID
ist die ID Ihrer BigQuery-Verbindung.Wenn Sie sich Verbindungsdetails in der Google Cloud Console ansehen, ist die Verbindungs-ID der Wert
CONNECTION_ID
im letzten Abschnitt der voll qualifizierten Verbindungs-ID, der unter Verbindungs-ID angezeigt wird, z. B.projects/myproject/locations/connection_location/connections/myconnection
Die Abfrage kann mehrere Stunden dauern. Danach wird das Modell
text_bison_001_medical_transcript_tuned
im Datasetbqml_tutorial
im Bereich Explorer angezeigt. Da die Abfrage eineCREATE MODEL
-Anweisung zum Erstellen eines Modells verwendet, gibt es keine Abfrageergebnisse.
Leistung des feinabgestimmten Modells prüfen
Führen Sie die Funktion ML.GENERATE_TEXT
aus, um zu sehen, wie das abgestimmte Modell mit den Evaluationsdaten abschneidet.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor folgende Abfrage aus:
SELECT * FROM ML.GENERATE_TEXT( MODEL `bqml_tutorial.text_bison_001_medical_transcript_tuned`, ( SELECT CONCAT( (SELECT prompt from `bqml_tutorial.transcript_classification`), ' ', input_text) AS prompt, output_text AS label FROM `bqml_tutorial.medical_transcript_eval` ), STRUCT(TRUE AS flatten_json_output)) ORDER BY ml_generate_text_llm_result;
Bei der Überprüfung der Ausgabedaten sehen Sie, dass das abgestimmte Modell mehr Transkripte korrekt klassifiziert. Das zuvor angesehene Beispiel wird jetzt korrekt als
Cardiovascular/ Pulmonary
klassifiziert.+-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+ | ml_generate_text_llm_result | ml_generate_text_rai_result | ml_generate_text_status | prompt | label | +-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+ | Cardiovascular/Pulmonary | {"blocked":false,"categories": | | Please assign a label for the given medical | Cardiovascular / Pulmonary | | | ["Derogatory","Health", | | transcript from among these labels [Allergy / | | | | "Insult","Public Safety",... | | Immunology, Autopsy, Bariatrics, | | | | | | Cardiovascular / Pulmonary, Chiropractic, | | | | | | Consult - History and Phy., Cosmetic / | | | | | | Plastic Surgery, Dentistry, Dermatology, | | | | | | Diets and Nutritions, Discharge Summary, ENT | | | | | | - Otolaryngology, Emergency Room Reports, | | | | | | Endocrinology, Gastroenterology, General | | | | | | Medicine, Hematology - Oncology, Hospice - | | | | | | Palliative Care, IME-QME-Work Comp etc., | | | | | | Lab Medicine - Pathology, Letters, | | | | | | Nephrology, Neurology, Neurosurgery, | | | | | | Obstetrics / Gynecology, Office Notes, | | | | | | Ophthalmology, Orthopedic, Pain Management, | | | | | | Pediatrics - Neonatal, Physical Medicine - | | | | | | Rehab, Podiatry, Psychiatry / Psychology, | | | | | | Radiology, Rheumatology, SOAP / Chart / | | | | | | Progress Notes, Sleep Medicine, Speech - | | | | | | Language, Surgery, Urology]. | | | | | | TRANSCRIPT: | | | | | | INDICATIONS FOR PROCEDURE:, The patient has | | | | | | presented with atypical type right arm | | | | | | discomfort and neck discomfort. She had | | | | | | noninvasive vascular imaging demonstrating | | | | | | suspected right subclavian stenosis. Of note, | | | | | | there was bidirectional flow in the right | | | | | | vertebral artery, as well as 250 cm... | | +-----------------------------+---------------------------------+-------------------------------------------------------------------------+----------------------------+
Feinabgestimmtes Modell bewerten
Mit der Funktion ML.EVALUATE
können Sie sehen, wie die Antworten des feinabgestimmten Modells im Vergleich zu idealen Antworten abschneiden.
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Führen Sie im Abfrageeditor folgende Abfrage aus:
SELECT * FROM ML.EVALUATE( MODEL `bqml_tutorial.text_bison_001_medical_transcript_tuned`, ( SELECT CONCAT( (SELECT prompt from `bqml_tutorial.transcript_classification`), ' ', input_text) AS prompt, output_text AS label FROM `bqml_tutorial.medical_transcript_eval` ), STRUCT('classification' AS task_type)) ORDER BY label;
Die Ausgabe sieht dann ungefähr so aus:
+------------------------------+----------------------------------+-------------------------------------------------------------------------+ | precision | recall | f1_score | label | evaluation_status | +---------------------+---------------------+---------------------+----------------------------+--------------------------------------------+ | 0.8571428571428571 | 0.66666666666666663 | 0.75 | Dermatology | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+ --------------------+----------------------------+--------------------------------------------+ | 0.54545454545454541 | 0.4 | 0.46153846153846156 | Discharge Summary | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+--------------- -----+----------------------------+--------------------------------------------+ | 1.0 | 1.0 | 1.0 | Diets and Nutritions | { | | | | | | "num_successful_rows": 164, | | | | | | "num_total_rows": 164 | | | | | | } | +---------------------+---------------------+---------------------+----------------------------+--------------------------------------------+
Sie sehen, dass das Trainings-Dataset zwar nur 519 Beispiele verwendet hat, aber die Leistung deutlich verbessert wird. Die F1-Werte für die Labels, bei denen das Basismodell weniger gut funktioniert hat, haben sich verbessert. Der Durchschnitt der F1-Werte für alle Labels ist von 0,54 auf 0,63 angestiegen.
Bereinigen
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.