Вы можете оценить свою модель по обучающим данным, добавив аргументы --eval_training_data=True --sample_1_of_n_eval_on_train_examples=10
к аргументам из model_main
. Тем самым вы даете ему указание выполнить оценку данных обучения и выбрать, насколько сильно разбавить данные обучения, отправленные на оценку, поскольку обычно объем данных обучения очень велик. Дело в том, что я не думаю, что в настоящее время можно оценить как обучение на данных валидации, но я не думаю, что это слишком плохо, поскольку обычно оценка данных тренинга проводится только для проверки работоспособности, а не для фактической непрерывной оценки. модель.
Я рекомендовал бы книгу В COM.
Это не была самая актуальная ссылка даже во время расцвета COM, но это, объясняют основы вполне хорошо, включая всю липкую вещь реестра. Плюс, я держал пари, что можно получить используемую копию, реальную дешевый.
Я знаю, что это не ответ, но помнящий, на что глава о реестре была похожа - неопределенное, "как делает это работает" вопрос, потребует действительно, действительно длинный ответ...
Первая вещь понять, то, что COM dlls регистрируют себя. Они поместят все необходимые записи в корректные места в реестре.
Я думаю ответ на Ваш центральный вопрос, о котором биты являются дополнительными, вероятно, что они являются все дополнительными для различных типов объектов. Объекты автоматизации требуют Prog/AppIDs, если они публично creatable, но не можете, если они только создаются внутренне, так же не - публично creatable COM-класс может быть перечислен.
Много COM-объектов, которые не имеют интерфейсов автоматизации (таких как многие COM-классы использование Microsoft внутренне в окнах не будет иметь никакого ProgId, но будет просто иметь запись под их CLSID в HKCR\CLSID.
Если я понимаю Вас правильно, Вы интересуетесь этим с точки зрения установщика. Я предположил бы, что все, что Вы должны сделать, просит пользователь указывать, какие dlls саморегистрируются и затем звонят
regsvr32 dllname.dll
или
exename.exe/Regserver
для из сервера процессов. Если что-то идет не так, как надо, просто необходимо назвать противоположности.
regsvr32/u dllname.dll
или
exename.exe/Unregserver
Я надеюсь, что это отвечает на Ваш вопрос.
Я использовал ответ, потому что комментарии кажутся настолько ограниченными. Не уверенный, как ТАК интерпретирует это (возможно, меня будут считать безумным для того, чтобы говорить сам с собой?)
"как это работает" вопрос, потребует действительно, действительно длинный ответ
Спасибо - чего я пытаюсь достигнуть, является пониманием этого, на самом деле не будучи разработчиком - это из-за способа, которым поставщики программного блока пытаются сгруппировать ключи реестра COM с .dll (в том же компоненте) так, чтобы упругость приложения работала.
Это означает 'захватывать' COM от регистрации .dll и связывать его в корректных рекламных таблицах (CLSID, AppID... реклама nauseum) к компоненту, который содержит .dll. Иногда это не легко видеть и иногда (мне говорят), это может повредить приложение от функционирования. Мне говорят, что COM не должен быть завершен (самосправочный).
Я все еще пытаюсь получить голову вокруг всего этого. Конечно, если поставщик программного блока получает всю информацию, но не связывает информацию COM к .dll, regkeys все еще записаны во время установки, просто MSI не нянчит приложение, если вещи идут не так, как надо (который почти никогда не является),