dotnet / dotnet/machinelearning-modelbuilder

Invalid call to 'GetValue' when Training Named Entity Recognition Data

Aperta
#2,888 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Dockerfile
Stelle
285
Fork
66
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

**System Information (please complete the following information):**
- Model Builder Version (available in Manage Extensions dialog): **17.18.2.2415501**
- Visual Studio Version : **17.9.4**

**Describe the bug**
- On which step of the process did you run into an issue: **Train**
- Clear description of the problem: **When training data, the system processes the data, then throws an error "Invalid call to 'GetValue'"**

**To Reproduce**
Steps to reproduce the behavior:
1. Select scenario
2. Select Environment (both CPU and GPU have error)
3. Add data
4. Train

**Expected behavior**
Training complete and moved to Evaluate section

**Screenshots**
![image](https://github.com/dotnet/machinelearning-modelbuilder/assets/6610438/0d542a7a-65d4-4b5f-9217-d53ab58ea494)

**Additional context**
Error log:
at Microsoft.ML.DataViewSchema.Annotations.GetValue[TValue](String kind, TValue& value)
at Microsoft.ML.Data.SchemaAnnotationsExtensions.GetKeyValues[TValue](Column column, VBuffer`1& keyValues)
at Microsoft.ML.TorchSharp.NasBert.NerTrainer.Trainer.GetRowCountAndSetLabelCount(IDataView input)
at Microsoft.ML.TorchSharp.TorchSharpBaseTrainer`2.TrainerBase..ctor(TorchSharpBaseTrainer`2 parent, IChannel ch, IDataView input, String modelUrl)
at Microsoft.ML.TorchSharp.NasBert.NasBertTrainer`2.NasBertTrainerBase..ctor(TorchSharpBaseTrainer`2 parent, IChannel ch, IDataView input, String modelUrl)
at Microsoft.ML.TorchSharp.NasBert.NerTrainer.CreateTrainer(TorchSharpBaseTrainer`2 parent, IChannel ch, IDataView input)
at Microsoft.ML.TorchSharp.TorchSharpBaseTrainer`2.Fit(IDataView input)
at Microsoft.ML.Data.EstimatorChain`1.Fit(IDataView input)
at Microsoft.ML.AutoML.SweepablePipelineRunner.Run(TrialSettings settings)
at Microsoft.ML.AutoML.SweepablePipelineRunner.RunAsync(TrialSettings settings, CancellationToken ct)
at Microsoft.ML.AutoML.AutoMLExperiment.d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ML.ModelBuilder.AutoMLService.Experiments.NamedEntityRecognitionExperiment.d__13.MoveNext() in /_/src/Microsoft.ML.ModelBuilder.AutoMLService/Experiments/NamedEntityRecognitionExperiment.cs:line 133
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.ML.ModelBuilder.AutoMLEngine.d__21.MoveNext() in /_/src/Microsoft.ML.ModelBuilder.AutoMLService/AutoMLEngineService/AutoMLEngine.cs:line 199

Files:
[NERKeyMap.txt](https://github.com/dotnet/machinelearning-modelbuilder/files/14664199/NERKeyMap.txt)
[NER_Data.txt](https://github.com/dotnet/machinelearning-modelbuilder/files/14664170/NER_Data.txt)

**Note:** Data shortened to 1 training item for example, training data has 2000+ items over all, issue occurs on any number of items.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia riproducendo il fallimento dell'addestramento con i file allegati NER_Data.txt e NERKeyMap.txt, quindi esamina NamedEntityRecognitionExperiment.cs alla riga 133 e AutoMLEngine.cs alla riga 199. Segui l'input fino a NerTrainer.GetRowCountAndSetLabelCount e identifica perché GetValue non riesce; il lavoro è completato quando l'addestramento NER raggiunge Evaluate senza l'eccezione.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
csharp
Ambito
machine-learning
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.