-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Premaster #61
Conversation
topnum/model_constructor.py
Outdated
@@ -154,6 +154,13 @@ def init_lda( | |||
dataset, modalities_to_use, main_modality, num_topics | |||
) | |||
|
|||
# found in doi.org/10.1007/s10664-015-9379-3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ок, только не понятно, к чему этот коммент)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
А, ок. Ну, стоит тогда хотя бы туду сделать в духе: implement this LDA also.
Ну, внезапно нашёлся ещё один способ строить "дефолтный" ЛДА
…On Sat, May 23, 2020 at 8:36 PM Vasiliy ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In topnum/model_constructor.py
<#61 (comment)>
:
> @@ -154,6 +154,13 @@ def init_lda(
dataset, modalities_to_use, main_modality, num_topics
)
+ # found in doi.org/10.1007/s10664-015-9379-3
Ок, только не понятно, к чему этот коммент)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#61 (review)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AA6GL4DF5U6JW5J6ISACWP3RTACRVANCNFSM4NIGAYYQ>
.
|
@bt2901 Виктор, предлагаю сделать небольшую перестановку. Сейчас в ветке в репозитории такой распорядок
Давай сделаем так?
Просто utils.py и configs — это имхо не должно лежать в основной библиотеке (уж utils.py 100% не должен быть в корне: там есть функции типа "построить график", у которых очень локальное применение; configs... наверно, тоже надо убрать из topnum). Это, по-моему, опять в тему разговора про библиотеку для использования vs. библиотека aka код экспериментов для статьи, и сейчас это немного смешивается. Папку demos тоже надо бы потом причесать: изначально там планировалось складывать небольшие простые примеры, как чем пользоваться, а мы в неё и большие эксперименты теперь кладём. Кажется неплохим решением создать папку experiments на самом верхнем уровне и перенести туда часть .py кода, который только для экспериментов, и большие ноутбуки с экспериментами. |
def search_for_optimum(self, text_collection: VowpalWabbitTextCollection) -> None: | ||
_logger.info('Starting to search for optimum...') | ||
|
||
dataset = text_collection._to_dataset() | ||
|
||
# seed == None is too similar to seed == 0 | ||
seeds = [None] + list(range(1, self._num_restarts)) | ||
seeds = [None] + [abs(RandomState(i).tomaxint()) for i in range(1, self._num_restarts)] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Здесь не хватает коммента, почему такая жесть. Плюс, если это не даёт эффекта, мб это стоит убрать?
test_dataset = Dataset(f'{dn}_test.csv', batch_vectorizer_path=f'{dn}_test_internals') | ||
|
||
# quick hack, i'm not sure what for | ||
test_dataset._to_dataset = lambda: test_dataset |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Мне кажется, это можно убрать (и при этом не должно ничего сломаться)
|
||
assert len(train_documents) + len(test_documents) == len(documents) | ||
|
||
train_data = dataset._data.loc[train_documents] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Вроде норм, но с keep_in_memory=False
я бы тут проверил на всякий случай.
P.S.
Вообще, более глобальная проблема: _data
может вести себя по-разному в зависимости от keep_in_memory
. То есть либо надо стараться всегда дёргать только публичные методы датасета (или добавлять такие, если их нет, но что-то нужно), либо надо _data
сделать свойством, которое будет кое-какую логику содержать, чтобы не было отличий между dask
и pandas
. Со вторым не понятно, но про публичные методы вроде как раз ничего вариант :)
Прикольно, что ты ещё датасет добавил (StackOverflow). Надо только мне будет и на нём тоже ренормализацию и стабильность прогнать |
word: "@word" | ||
|
||
min_num_topics: 10 | ||
max_num_topics: 30 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Если для каждого датасета делать свой max_num_topics
, то кмк надо с большим запасом, например x2 или x3 или больше (то есть для 20 NG это будет 40 или 60). И если range топиков разный для разных датасетов, то на графики может быть сложнее смотреть, если их объединять в один figure в ТеХ-е
style = ':' | ||
else: | ||
style = '-' | ||
my_ax.plot(data.T.mean(axis=0), linestyle=style, label=mfv) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Маркер добавь!) точки не видны. И сетку стоит сделать
Мысли про эксперимент
В целом неплохо! Единственное, надо
|
No description provided.