Попытка конвертировать Джейсон в просторный обучающий формат для NER, но не получаю никаких данных или ошибок - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь преобразовать файл NER Json данных turks в простую обучающую форму, используя следующий код, но после выполнения кода не предоставляя никакого ввода.

import plac
import logging
import argparse
import sys
import os
import json
import pickle
import spacy

dataturks_JSON_FilePath = Path("C:\\Users\\Desktop\\Project\\Spacy")

def convert_dataturks_to_spacy(dataturks_JSON_FilePath):
    try:
        training_data = []
        lines=[]
        with open(dataturks_JSON_FilePath, 'r') as f:
            lines = f.readlines()

        for line in lines:
            data = json.loads(line)
            text = data['content']
            entities = []

            for annotation in data['annotation']:

                point = annotation['points'][0]
                labels = annotation['label']

                if not isinstance(labels, list):
                    labels = [labels]

                for label in labels:
                    entities.append((point['start'], point['end'] + 1 ,label))


            training_data.append((text, {"entities" : entities}))
        return training_data
    except Exception as e:
        logging.exception("Unable to process "+dataturks_JSON_FilePath +"\n"+"error = "+str(e))
        return None

Нет ввода при выполнении скрипта.

1 Ответ

0 голосов
/ 10 февраля 2020

Вы определили функцию convert_dataturks_to_spacy , но никогда ее не вызывали. Таким образом, он не выполняется, и вы ничего не видите, когда запускаете его.

Если вы вызываете функцию, убедитесь, что вы включили json в качестве ввода. Кажется, что в приведенном выше коде есть случайная папка C: \ Users \ Desktop \ Project \ Spacy .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...