{"id":18552015,"url":"https://github.com/bepb/kaggle_connectx","last_synced_at":"2025-04-09T22:31:47.667Z","repository":{"id":45218283,"uuid":"441668618","full_name":"BEPb/Kaggle_ConnectX","owner":"BEPb","description":null,"archived":false,"fork":false,"pushed_at":"2022-03-17T21:36:40.000Z","size":1884,"stargazers_count":20,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-24T13:05:02.138Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BEPb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-12-25T11:50:46.000Z","updated_at":"2025-01-04T12:40:11.000Z","dependencies_parsed_at":"2022-07-30T08:48:08.311Z","dependency_job_id":null,"html_url":"https://github.com/BEPb/Kaggle_ConnectX","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BEPb%2FKaggle_ConnectX","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BEPb%2FKaggle_ConnectX/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BEPb%2FKaggle_ConnectX/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BEPb%2FKaggle_ConnectX/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BEPb","download_url":"https://codeload.github.com/BEPb/Kaggle_ConnectX/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248123687,"owners_count":21051512,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-06T21:11:35.820Z","updated_at":"2025-04-09T22:31:46.387Z","avatar_url":"https://github.com/BEPb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"##  Модель машинного обучения для соревнования kaggle игры ConnectX\n\n- Мы используем возможности параллелизма [PARL] для выполнения самостоятельных игр между только что обученной \n  моделью и лучшей версией предыдущих версий обучения.\n- Мы также предоставляем сценарии для упаковки вашей хорошо обученной модели в файл для отправки в Kaggle [Connect X]\n  (https://www.kaggle.com/c/connectx/leaderboard) напрямую.\n\n### Необходимые пакеты для работы \n- python3\n- parl\n- torch\n- tqdm\n\n### Для начала работы\n\n```commandline\n\n# для создания списка установленных пакетов используйте команду\npip freeze \u003e requirements.txt\n\n\n# для установки всего списка необходимых пакетов\npip3 install -r requirements.txt\n```\n\n\n### Тренировка модели\n1. Для первоначального обучения мы используем 1000 игр между двумя произвольными агентами с оценкой результатов игры.\n   Вы также можете скачать этот датасет самостоятельно  по следующей ссылке - [1k connect4 validation \n   set](https://www.kaggle.com/petercnudde/1k-connect4-validation-set) \n\n2. Для начала работу необходимо запустить кластер xparl следующей командой в терминале:\n```bash\n# Вы можете изменить следующие `cpu_num` и` args.actor_nums` в main.py\n# в зависимости от количества ядер Центрального Процессора вашего компьютера.\n# у меня на ноутбуке их 8, для отображения прогресса тренировки запускаем веб-интерфейс, он в режиме реального \n# времени покажет нагрузку на процессор, а также отобразит работу каждого агента (ядра Вашего ЦП)\n\nxparl start --port 8010 --cpu_num 8\n\n#xparl start --port 8000 --debug --cpu_num 8 --monitor_port 8001 --log_server_port_range 8002-8010\n\n# для получения справочной информации введите\nxparl --help\n\n# или\nxparl connect --help\n#xparl connect --address 127.0.0.1 --cpu_num 8 --log_server_port_range 8011-8019\n```\n\n3. Далее в терминале запустите тренировочный скрипт main.py:\n```bash\n# это программа для запуска полного цикла тренировки Вашей модели (использует метод обучения с подкреплением)\npython /home/user/PycharmProjects/Kaggle_ConnectX/main.py\n```\n\n4. Для проверки статуса работы кластера xparl введите в терминале:\n```commandline\nxparl status\n```\n\n5. Для завершения работы кластера xparl введите в терминале:\n```commandline\nxparl stop\n```\n\n### Отправка результата Вашей работы\nЧтобы отправить хорошо обученную модель в Kaggle, вы можете использовать предоставленный скрипт для создания \nфайла submission.py, для этого введите в терминале:\n```bash\npython /home/user/PycharmProjects/Kaggle_ConnectX/gen_submission.py /home/user/PycharmProjects/Kaggle_ConnectX/saved_model/best.pth.tar\n```\n\n### запуск игры с обученной моделью и Вами\n```commandline\npython /home/user/PycharmProjects/Kaggle_ConnectX/connect4_aiplayer.py\n```\n\n### Полезные ссылки\nВводные блокноты\n- [ConnectX Getting Started](https://www.kaggle.com/andrej0marinchenko/connectx-getting-started)\n- [СonnectX second step](https://www.kaggle.com/andrej0marinchenko/onnectx-second-step)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbepb%2Fkaggle_connectx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbepb%2Fkaggle_connectx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbepb%2Fkaggle_connectx/lists"}