Прежде чем рассматривать эти биграммы как взаимозаменяемые, вы должны убедиться, что они действительно есть. Если это не так, это снизит качество вашего анализа. «foot_doctor» и «doctor_foot» могут не относиться к одному и тому же, особенно если вы предприняли другие шаги предварительной обработки, такие как стеммирование или лемматизация, то есть превращение «ступни доктора» в «ступню доктора».
Предполагая, что значение этих биграмм взаимозаменяемо: рассматривайте их как взаимозаменяемые - вы можете просто переписать одно в другое. Python предлагает множество встроенных строковых функций . В вашем примере, используя replace()
, мы можем заменить один биграмм другим.
oldfakedoc = 'my landlord gave me a lease extension'
newfakedoc = oldfakedoc.replace('lease extension', 'extension lease')
print (newfakedoc)
дает my landlord gave me a extension lease
. Обведите все биграммы, которые вы хотите заменить, и запустите вашу модель.
Вы также можете использовать этот подход, если вы не хотите останавливать или лемматизировать все свои документы, но есть темы, которые очень сильно загружают слова, которые тесно связаны, такие как «прыжок» и «прыжок». Кроме того, убедитесь, что вы не перезаписываете свои необработанные данные, чтобы вы могли вернуться и восстановить, где эти замены были сделаны, если вам нужно.