Laat de recensent eerst de wijzigingen zien: Hoe maak je een vertaalverschiltabel die niet misleidend is?
Een Engels vertalingsmanuscript is tien keer herzien, en het is voor de recensent niet efficiënt om het elke keer vanaf het begin te lezen. De verschilvisie kan de aandacht vestigen op de veranderingen, maar er is een uitgangspunt: het vergelijkt twee herziene versies van dezelfde taal, in plaats van de originele Chinese tekst en de Engelse vertaling karakter voor karakter van elkaar te onderscheiden, en vervolgens de rode en groene gebieden te gebruiken om de vertaalkwaliteit te beoordelen.
Wanneer de vertaling de tiende editie bereikt en de recensent deze elke keer vanaf het begin leest, is de meest tijdrovende taak vaak om erachter te komen 'wat er is veranderd'. De verschilvisie vestigt de aandacht direct op de veranderingen, wat de waarde ervan is.
Maar de verschilvisie heeft een uitgangspunt: het zou twee herzieningen van dezelfde taal moeten vergelijken. Als u de originele Chinese tekst en de Engelse vertaling karakter voor karakter van elkaar onderscheidt, en vervolgens het rode en groene gebied gebruikt om de vertaalkwaliteit te beoordelen, zal de conclusie vertekend zijn. In dit artikel wordt uitgelegd hoe u difflib kunt gebruiken om controleerbare vertaalverschillen te genereren, en wordt uitgelegd wat het wel en niet kan doen.
Hoe vergelijk je de verschillen in vertalingen? Conclusie in één zin
Alleen herziene versies in dezelfde taal worden vergeleken, en verschillen worden gebruikt om reviewers te helpen wijzigingen op te sporen. Het kwaliteitsoordeel wordt nog steeds aan de mens overgelaten.
| jouw situatie | Aanbevolen praktijken | reden |
|---|---|---|
| Er zijn meerdere Engelse herzieningen van hetzelfde vertaalmanuscript | Vergelijk de verschillen tussen twee Engelse revisies | Verschillen weerspiegelen alleen de locatie van de wijzigingen, waardoor het voor reviewers gemakkelijker wordt om zich op te concentreren |
| Wilt u de vertaalkwaliteit evalueren | Het is niet nodig om rode en groene gebieden te scoren | difflib wijst alleen op tekstuele wijzigingen en bepaalt niet of de terminologie en semantiek correct zijn. |
| Alinea-terugloop is instabiel bij het exporteren | Corrigeer eerst de paragraaf-ID en de vertaalregel | Voorkom dat typografische ruis echte veranderingen overstemt |
| Noodzaak om de betekenis van de vertaling te bevestigen | Keer terug naar de originele tekst voor tweetalige verificatie | Revisieverschillen zijn geen vervanging voor inspectie van de bronbetekenis |
| Het rapport wil de gelijkenis aantonen | Noem het geen"vertaalnauwkeurigheid" | Gelijkenis hangt af van segmentatie en matchingregels |
Het verschil is een wijzigingsaanwijzing, geen kwaliteitsscore
difflib kan verschillen op regelniveau genereren, die u vertellen welke tekst is gewijzigd, maar beoordeelt niet of de terminologiekeuze correct is, noch begrijpt het de zakelijke of technische gevolgen van een zin.
- Verwijder een negatief woord, het verschil is misschien klein, maar de impact is enorm.
- Herschik een alinea, het verschil kan enorm zijn, maar de betekenis blijft in principe hetzelfde.
Stabiliseer eerst de vergelijkingseenheid
Begin door de revisor een stabiele eenheid te geven, zoals een paragraaf-ID en een vertaalregel. Als het exportproces elke keer willekeurig regels doorloopt, worden de verschillen overstemd door zetgeluiden.
Wijzigingen in de structuur van het brondocument en wijzigingen in de vertaling moeten afzonderlijk worden vastgelegd en kunnen niet in één "tekstupdate" worden gemengd.
Een voorbeeld van een synthetische revisie met semantische risico's
In dit artikel worden synthetische monsters gebruikt om de verwerkingsmethode aan te tonen. De code is gecontroleerd met voorbeelden in een geïsoleerde omgeving en is geen garantie voor alle echte bestanden of productprestaties. Voordat u belangrijke documenten verwerkt, dient u de originelen te bewaren en deze te controleren op basis van de grenzen en acceptatie-items in de tekst.
import difflib
import html
before = ["Do not disconnect the cable.\n", "Wait for the green light.\n"]
after = ["Disconnect the cable.\n", "Wait for the green light.\n"]
delta = "".join(difflib.unified_diff(before, after,
fromfile="revision-A", tofile="revision-B"))
assert "-Do not disconnect" in delta
assert "+Disconnect" in delta
assert list(difflib.unified_diff(before, before)) == []
# 差异如需显示在网页中,按普通文本转义。
unsafe_line = "<script>alert(1)</script>"
assert "<script>" not in html.escape(unsafe_line)
print(delta)
Er worden hier geen apparaatbewerkingen uitgevoerd, er worden slechts twee zinnen met synthetische tekst gebruikt om het uit te leggen: Een zeer korte bewerking kan een gerichte beoordeling vereisen. De voorbeelduitvoer is een tekstverschil voor controledoeleinden en vormt niet de basis voor automatische goedkeuring van wijzigingen door de machine.
Hoe betekenisloze rode en groene blokken te verminderen
Regeleinden kunnen uniform worden gemaakt, stabiele alinea-ID's kunnen worden behouden en geëxporteerde ruis die duidelijk geen invloed heeft op de betekenis kan afzonderlijk worden verwerkt.
Maar verwijder niet alle leestekens, cijfers of spaties alleen maar om het verschil er goed uit te laten zien. Witruimte in code, formules, tabellen en sommige vormen van taal heeft op zichzelf betekenis, en overnormalisatie kan echte verandering maskeren.
| Wijzigingstype | Hoe verschillende opvattingen kunnen helpen | Wat moet er nog handmatig beoordeeld worden |
|---|---|---|
| termijn vervanging | Vind alle gewijzigde locaties | Past het in de huidige context? |
| Nummerwijzigingen | Leg oude en nieuwe waarden bloot | Controleer of de wijziging een brongrondslag heeft |
| Negatieve woordveranderingen | Lezers worden eraan herinnerd dit te controleren | Of de betekenis van de opdracht moet worden gewijzigd |
| Paragraafbeweging | Toon grote stukken verwijderd en toegevoegd | Is het slechts een positieaanpassing? |
Verpak gelijkenis niet in nauwkeurigheid
SequenceMatcher Een klasse vergelijkingshulpmiddelen waarvan de resultaten afhankelijk zijn van invoersegmentatie en matchingregels. Een hoge snaarovereenkomst kan een kleine verandering zijn of de meest kritische woorden worden gemist; een lage gelijkenis kan slechts een reorganisatie van de uitdrukking zijn.
Het eenvoudigweg 'Vertaalnauwkeurigheid' noemen zou misleidend zijn voor mensen die het rapport gebruiken.
Difference review zou ook moeten kunnen terugkeren naar de overeenkomstige originele tekst. Vooral bij het herzien van een vertaling kun je niet zomaar de ‘soepelere’ zin tussen de twee versies van de vertaling kiezen en vergeten of deze nog steeds de betekenis van het brondocument weergeeft.
Gebruik gereedschap op de juiste plaats
U kunt eerst een vertaalmanuscript genereren dat u wilt laten beoordelen in het documentvertaalportaal van OmniDoc (productportaal), en vervolgens de wijzigingen voor en na de beoordeling vergelijken in uw eigen versiebeheerproces.
De tweetalige controle lost de bronbetekenis op, en de revisie-diff lost op wat er is gewijzigd. Het is duidelijker om beide samen te gebruiken, zonder dat de een zich voordoet als de ander.
Bronnen: Python difflib.
📊 Kernvergelijking
| Contrasterende afmetingen | Revisieverschillen | tweetalige cheque |
|---|---|---|
| Vergelijkingsobject | Twee herzieningen van dezelfde taal | Originele Chinese tekst en Engelse vertaling |
| Beantwoorde vragen | Wat is er veranderd | Of de vertaling nog steeds de betekenis van de brontekst weergeeft |
| gemakkelijk te vinden | Verander de positie van termen, getallen, negatieve woorden, enz. | Betekenis afwijking en weglating |
| Belangrijkste beperkingen | Beoordeel niet goed of fout, gelijkenis is niet gelijk aan nauwkeurigheid | Vereist handmatig lezen en oordeelsvermogen |
🎯 Welke methode is geschikt voor jou?
Als u de reviewer nodig heeft om snel wijzigingen te lokaliseren
Genereer verschillen met revisies in dezelfde taal en zet de paragraaf-ID's vast, zodat reviewers alleen de wijzigingen zien.
Als u de vertaalkwaliteit evalueert
Gebruik het rode en groene gebied niet om te scoren. Gebruik eerst tweetalige verificatie om de betekenis te bevestigen, en gebruik vervolgens verschil om te controleren of de wijzigingen gegrond zijn.
Als u de voortgang aan anderen wilt melden
Noem de gelijkenis de "mate van tekstverandering", niet de "vertaalnauwkeurigheid".
❓ Veelgestelde vragen (FAQ)
1. Waarom vergelijken we de originele Chinese tekst niet rechtstreeks met de Engelse vertaling?
De twee talen zijn verschillend. De rode en groene blokken in de verschillen per teken weerspiegelen het verschil in tekstvorm, en de vertaalkwaliteit kan op basis hiervan niet worden beoordeeld.
2. Kun je alle spaties en leestekens verwijderen om rode en groene blokken te verminderen?
Niet aanbevolen. Witruimte in code, formules, tabellen en sommige vormen van taal heeft op zichzelf betekenis, en overnormalisatie kan echte verandering maskeren.
3. De gelijkenis is zeer groot. Betekent dit dat de vertaling accuraat is?
kan niet. Grote gelijkenis kan slechts een kleine verandering zijn, of de meest kritische woorden kunnen worden gemist.
📝 Samenvatting
De verschilweergave is geschikt om reviewers te helpen snel de wijzigingen in de vertaling te vinden, terwijl tweetalige verificatie wordt gebruikt om te bevestigen of de vertaling nog steeds de betekenis van de brontekst weergeeft. De twee hebben een duidelijke taakverdeling en zijn betrouwbaarder wanneer ze samen worden gebruikt.


