Open Lerostre opened 12 months ago
Полотно это, конечно, прекрасно. Но у меня есть прекрасная новость! Если сохранять теги в датафрейм, например, токен-разбор1-разбор2, или можно в разные датафреймы, а потом смёрджить pd.merge(df1, df2, on="token")
, то ничего выкидывать руками то и не надо, пандас сделает всю грязную работу, оставит только общее. А потом аккураси по двум колонкам и всё шоколадно. Учите нампай и пандас, дети...
Чанкер можно было бы тоже одной функцией, там же меняются только теги, на которые ты смотришь, на лемму можно вообще всегда смотреть, почему бы и нет. Вот аккураси унифицирована, а чанкер нет, нпорядок ( Ну и у тебя два прохода получается по тексту, а можно в один - доставать униграммы из биграмм, чистить дубликаты
Насчёт качества - я думаю, что просто биграммы неудачные, обычно всё-таки всегда улучшает, если вообще игнорировать теги и набирать всех биграмм, да побольше. А метод не так уж и плох, это же буквально в шаге от тфидф, а это уже настоящая база
Но это вообще придирки, код прекрасный, продолжай в том же духе, мне очень нравится 10
Классно, когда датафрейм уже лежит в репозитории и его не надо заново парсить, очень ускоряет проверку, а ведь в коде есть... А в целом ноутбук хороший, люблю, когда люди пишут много букв словами, а не только кодом
Вот тут дублирование, можно избежать:
-->
А ещё лучше векторизовать, это быстрее на больших данных и красивее с точки зрения пепа.
apply
применяет функцию ко всем элементам в столбцеВ тетрадке ещё есть такие места, но я хочу спать Надеюсь, не накосячил, я не запускал код - долго парсить
Улучшения: 1. Tfidf - прекрасно, но я не могу не придраться, что фит надо делать только на трейне, а не на всех отзывах, иначе переобучимся, и очень не советую пользоваться нампаевским представлением тфидф матрицы - будет много весить, когда данных много. Можно всё сделать в разреженных матрицах, но надо попривыкать. 2. Я не люблю w2v, мне кажется, он перехайпнут. Я бы сказал, что tfidf лучше только потому что там гораздо больше фичей, там можно нграммы учесть, а w2v в принципе плохо обучается на маленьких корпусах, и фичей в нём всего 300, маловато. Можно попробовать предобученные векторы, можно символьные нграммы, можно пробовать составить вектор предложения - усреднить все эмбеддинги слов, но я считаю, что это трата времени. Предложение нормальное, описано подробно, придраться не к чему, разве что вот делюсь своим опытом
10