Submit Search
Upload
Kstm lt 2021 12
•
0 likes
•
103 views
S
ssuser646a3e
Follow
2021年12月の弊大学の技術系サークル"kstm"のLT会での発表に利用した資料
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 22
Download now
Download to read offline
Recommended
AtCoder を布教しに来ました! 2019 - 04 - 11
AtCoder を布教しに来ました! 2019 - 04 - 11
Nmimineko
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)
Takashi Yamane
PyCon2020 Pythonで競プロをしよう! 〜入門者が知っておくべき高速化Tips〜
PyCon2020 Pythonで競プロをしよう! 〜入門者が知っておくべき高速化Tips〜
Kosaku Ono
第一回 AI Code Review
第一回 AI Code Review
Ryohei Kamiya
数理最適化とPython
数理最適化とPython
Yosuke Onoue
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
Shinya Takamaeda-Y
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
Yuusuke Kounoike
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Yury Leonychev
Recommended
AtCoder を布教しに来ました! 2019 - 04 - 11
AtCoder を布教しに来ました! 2019 - 04 - 11
Nmimineko
Rの導入とRStudio事始め(改訂版)
Rの導入とRStudio事始め(改訂版)
Takashi Yamane
PyCon2020 Pythonで競プロをしよう! 〜入門者が知っておくべき高速化Tips〜
PyCon2020 Pythonで競プロをしよう! 〜入門者が知っておくべき高速化Tips〜
Kosaku Ono
第一回 AI Code Review
第一回 AI Code Review
Ryohei Kamiya
数理最適化とPython
数理最適化とPython
Yosuke Onoue
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
PyCoRAM (高位合成友の会@ドワンゴ, 2015年1月16日)
Shinya Takamaeda-Y
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
映像解析クラスタのアプリエンジニアから見たRancher&Kubernetes
Yuusuke Kounoike
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Ml based detection of users anomaly activities (20th OWASP Night Tokyo, Japan...
Yury Leonychev
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
Takao Sumitomo
ネットワーク自動化の課題 - グラフデータベースによる解決
ネットワーク自動化の課題 - グラフデータベースによる解決
ApstraJapan
ROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROS
Hiroki Nakahara
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
SORACOM,INC
160705-w03 RTミドルウエア講習会・早稲田大
160705-w03 RTミドルウエア講習会・早稲田大
openrtm
ストリーム処理とSensorBee
ストリーム処理とSensorBee
Daisuke Tanaka
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
UnityTechnologiesJapan002
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
20150625 cloudera
20150625 cloudera
Recruit Technologies
アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics
kekekekenta
5月中旬の仮想通貨Re-orgについて
5月中旬の仮想通貨Re-orgについて
Masanori Kusunoki
191030 anna-with-python
191030 anna-with-python
Takuya Nishimoto
Apilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlab
Yutaka Kobayshi
Wrapping a C++ library with Cython
Wrapping a C++ library with Cython
fuzzysphere
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
Ryuuta Tsunashima
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Katsuhiro Morishita
Python twitter data_150709
Python twitter data_150709
BrainPad Inc.
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
aitc_jp
Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋
Yuto M
MicroPythonのCモジュールを作ってみる
MicroPythonのCモジュールを作ってみる
Kenta IDA
More Related Content
Similar to Kstm lt 2021 12
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
Takao Sumitomo
ネットワーク自動化の課題 - グラフデータベースによる解決
ネットワーク自動化の課題 - グラフデータベースによる解決
ApstraJapan
ROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROS
Hiroki Nakahara
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
SORACOM,INC
160705-w03 RTミドルウエア講習会・早稲田大
160705-w03 RTミドルウエア講習会・早稲田大
openrtm
ストリーム処理とSensorBee
ストリーム処理とSensorBee
Daisuke Tanaka
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
UnityTechnologiesJapan002
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Yoshifumi Kawai
20150625 cloudera
20150625 cloudera
Recruit Technologies
アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics
kekekekenta
5月中旬の仮想通貨Re-orgについて
5月中旬の仮想通貨Re-orgについて
Masanori Kusunoki
191030 anna-with-python
191030 anna-with-python
Takuya Nishimoto
Apilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlab
Yutaka Kobayshi
Wrapping a C++ library with Cython
Wrapping a C++ library with Cython
fuzzysphere
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
Ryuuta Tsunashima
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Katsuhiro Morishita
Python twitter data_150709
Python twitter data_150709
BrainPad Inc.
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
aitc_jp
Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋
Yuto M
MicroPythonのCモジュールを作ってみる
MicroPythonのCモジュールを作ってみる
Kenta IDA
Similar to Kstm lt 2021 12
(20)
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
CIのビルドを通知する仕組みをAndroidとFirestoreで作った話
ネットワーク自動化の課題 - グラフデータベースによる解決
ネットワーク自動化の課題 - グラフデータベースによる解決
ROS User Group Meeting #28 マルチ深層学習とROS
ROS User Group Meeting #28 マルチ深層学習とROS
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
SORACOM Technology Camp 2018 アドバンストラック4 | スモールスタートの次の一手は?成長できるIoTシステムの実例と回避した...
160705-w03 RTミドルウエア講習会・早稲田大
160705-w03 RTミドルウエア講習会・早稲田大
ストリーム処理とSensorBee
ストリーム処理とSensorBee
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
【Unity道場京都スペシャル4】Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
Unityによるリアルタイム通信とMagicOnionによるC#大統一理論の実現
20150625 cloudera
20150625 cloudera
アプリケーション開発と分析のための Log Analytics
アプリケーション開発と分析のための Log Analytics
5月中旬の仮想通貨Re-orgについて
5月中旬の仮想通貨Re-orgについて
191030 anna-with-python
191030 anna-with-python
Apilecture for 2014/02/22 at shannonlab
Apilecture for 2014/02/22 at shannonlab
Wrapping a C++ library with Cython
Wrapping a C++ library with Cython
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
GPU-FPGA 協調計算を記述するためのプログラミング環境に関する研究(HPC169 No.10)
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
PythonとRによるデータ分析環境の構築と機械学習によるデータ認識
Python twitter data_150709
Python twitter data_150709
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
第5回 デジタルガジェット祭り! スマートスピーカー特集(4)
Boost.勉強会 #13 @仙台 鳥小屋
Boost.勉強会 #13 @仙台 鳥小屋
MicroPythonのCモジュールを作ってみる
MicroPythonのCモジュールを作ってみる
Kstm lt 2021 12
1.
AtCoderで初心者がレートを 高める方法の考察 hino
2.
自己紹介 名前:hino 所属:信州大学工学部電子情報システム工学科 趣味:ソフトテニス、音ゲー、旅行 Twitter: @hino1729, @cyndaquil1729 GitHub:
Cyndaquil1999 下:Twitterページ
3.
マイニングの手法 ・ネットに落ちているAPIを利用してAC数などを取得 ・足りないデータはAtCoderのRobots.txtに指定された範囲内でスクレイピング ・使用言語 Python3 コードはGitHubに載せています: コード
4.
マイニングの手法 ・スクレイピングを実行しAtCoderのランキングページからユーザー名と現在のレートを取得 Scraping.py ・次に初参加時のパフォーマンスについて計算を行い、 APIから各パラメータを取得し データをcsv形式で生成 Data_Generate.py ・統計処理や線形回帰分析を行って分析を行う Data_analysis.py, Linear_Regression.py
5.
手段 ・レート2000以上(黄コーダー以上) ・国内ユーザー ・初回パフォーマンス1200未満 3条件を全て満たすユーザーを対象ユーザーとする。
6.
マイニング対象 ・何故国内ユーザーだけか? , 何故初回パフォーマンスで分けた? CF, TCなどの海外の競プロサイトが AtCoder以前からあり、それの経験者という可能性 ・何故2000以上? ABC(AtCoder
Beginner Contest)のunrated層になるため、初心者から脱しているという見方が出来るため。
7.
マイニング対象 データの紹介 Rating: レート RPS: これまでに正解した問題の総得点 Total_AC_count:
これまでにAC(正解)した問題数 Ave_points: ACした問題の得点平均値
8.
マイニング対象 Ave_diff 2019-4-29以降の500submitの内、以下の式で表すもの。 Type コンテスト初参加時のパフォーマンスが 1200以上である場合1,1200未満の場 合0として分類 を行う
9.
マイニング対象 レート RPS Total_AC_count min
2000 5800 12 max 3545 970318 4145 中央値 2122 396800 1578 平均値 2254 392391 1559 レート RPS Total_AC_count min 2000 3200 4 max 4033 970318 4145 中央値 2155 129750 262 平均値 2287 203671 676 国内ユーザーの分析結果 全世界ユーザーの分析結果
10.
マイニング対象 type0 レート RPS
Total_AC_count min 2000 57300 241 max 3212 883400 3589 中央値 2092 428750 1789 平均値 2187 434490 1712 type1 レート RPS Total_AC_count min 2000 5800 12 max 3545 970318 4145 中央値 2186 347500 1321 平均値 2317 352952 1415
11.
マイニング結果 各データとレートの相関係数の一覧 RPSが強い相関、Ave_diffや Ave_pointsも優勢 データ名 相関係数 Ave_diff 0.355 RPS
0.456 Total_AC_count 0.204 Ave_points 0.335
12.
マイニング結果(RPS - Ave_diff)
13.
マイニング結果(Rating - RPS)
14.
マイニング結果(RPS - Total_AC_count)
15.
マイニング結果 ・RPSが一番レートに強い正の相関が見られた ・Total_AC_countとRPSに特に強い相関性(それはそう) 問題を多く解くことがレート上昇に作用する ・Ave_diffとRPSに強い相関性 難易度高い問題を解く事がレート上昇に効果的である
16.
結論 レートを高めたいなら問題を多く解き、難しい問題に も挑みましょう
17.
参考 (私の場合の分析) 式に代入すると約222700程度 =>RPSが少ない =>Ave_diffが少ない パラメータ 数値 Total_AC_count
630 RPS 96300 11/15時点での数値
18.
参考 (私の場合の分析) 難易度 AC数/総数 0-399
487/665 400-799 74/226 800-1199 15/217 1200-1599 2/228 1600-1999 1/250 2000-2399 0/217 2400-2799 0/217 2800- 0/217
19.
参考 (私の場合の分析) AC数を目標にするのを辞めて、1,2色上の問題を積 極的に取り組むと良さそう
20.
考察 ・今回は一例としてパフォーマンス 1200で分類をした 実際はここまで取るのは難しいものである ・競プロユーザーには高学歴な人や数オリ経験者が(多い傾向にある) 素養まで分析する術は思いつかなかったがここまで出来るともっとしっかりした分析 が出 来そう
21.
参考文献など ・Pythonで基礎から機械学習 「単回帰分析」 sk-learn等の使い方を確認 ・note.nkmk.me Pythonのライブラリなどの使い方などを確認 ・AtCoder
Rating System Ver 1.00 AtCoder公式によるレート計算の解説
22.
参考文献など ・AtCoder Problems API AC数やRPSなどのデータを取得する際に活用 ・PythonのWebスクレイピングでAtCoderのレート分布を出してみた スクレイピング用のコードの書き方を参考にした
Download now