---
# System prepended metadata

title: 통신AI 해커톤

---


https://hackmd.io/Qp9gd6gxQiGgSAMbhoOICQ?edit

링크를 신영님 브라우저에 복붙하셔서
한글 복붙 대용으로 사용해봐요













---
[해커톤 바로가기](https://aifactory.space/task/2513/overview)
<br><br>
[웹폴더 바로가기](https://file.kiwi/4e34a72b#0NTUf2oiWZkML3xFvGTleA)
<br><br>

---

## 미팅 1
시각: 8/8(화) 20:00
### 내용
* 파트 1(재필, 신영): MLP 공부하고 문제 데이터셋 Tensorflow로 간단하게 학습할 수 있는 구조 만들어오기
* 파트 2(종원, 대헌): RNN/LSTM 공부하고 시계열 데이터셋을 어떻게 처리할 지 및 코드로 어떻게 표현해야 하는지 알아오기

### 파트 1 보고 및 정리
텐서플로 튜토리얼 사이트 참고하세용 -> [링크](https://www.tensorflow.org/tutorials/quickstart/beginner?hl=ko) <br>


### 파트 2 보고 및 정리
[lstm 참고 사이트](https://dgkim5360.tistory.com/entry/understanding-long-short-term-memory-lstm-kr)

---
## 미팅 2
시각: 8/12(토) 09:30
### 내용
* 앞으로의 진행방향 : 각 BS 별로 하루(288개)의 데이터를 Sub_Data로 추출하여 LSTM에 사용할 것. BS_A 부터 BS_I까지 각 BS에서 0~287, 1~288, 2~289...과 같이 288개의 데이터 학습.
* 이러한 방향으로 진행하기 위해 다음과 같은 작업이 선행되어야 한다.
1. 결측치 채우기 : 288개의 데이터를 추출하면서 결측치가 존재할 경우 이전 시계열과 다음 시계열의 값의 평균으로 채워넣기. 결측치는 data하나인게 아마 6개고, 행이 없는게 3개일 것입니다.
2. 상관관계 일반화 함수 : ChatGPT를 활용한 상관계수 분석 코드를 참고해서 상관 계수가 높은 순으로 n개를 return 하는 함수 만들기
3. 정규화하기
4. BS별 Sub_Data 생성 : 앞서 말했듯, 288개의 정보를 담고 있는 sub_data생성하기
5. LSTM 학습


### 이종원 진행사항 보고 : 08-12
1. 데이터를 처리하던중 
2023-06-12 18:15:00 2023-07-05 04:30:00
데이터가 아예 존재하지 않음을 확인했습니다.
추가로 기지국 EFG는
2023-06-28 00:55:00
데이터가 아예 존재하지 않습니다.
또 특정 열들은 9개씩의 결측치가 존재합니다. <br>
따라서 9개의 결측치는 해당 열의 해당 Station에 따라 평균 값으로 대체,
존재하지 않는 데이터의 경우 전후 5분 값의 평균 값으로 대체 하여 처리했습니다.

2. 시간축의 연속성을 고려하여 학습해야할 듯 하여 기지국 마다 데이터를 분리했습니다.(Train, test 모두)
3. 분리한 데이터를 바탕으로 학습시키되, a_data가 끝나면 c_data시작, c_data끝나면 d_data시작하는 형식으로 구성하여 시간이 연속적이지 않으면 학습이 안되도록 구성했습니다.
4. uenomax와 상관관계가 높은 18개 데이터를 이용했습니다.
5. time_step은 144step을 사용하여 12시간 단위로 수행했습니다.

#### 08-13 보고내용
1. 일주일 시계열 특성을 반영하기 위해서 데이터 전처리를 달리함 -> 1시간 단위로 데이터를 묶음 ex) 00분 묶음 : 12시,13시,14시 ..... 05분 묶음 : 12시05분 , 13시 05분, 14시 05분 ...
2. 00분 묶음, 05분 묶음 등등 모든 종류의 묶음을 차례로 학습시킴
3. 결과 : mse 0.863 정도.
[코드 확인하기](http://155.230.107.94:9999/notebooks/network_safety/Jongwon/Jongwon.ipynb)
5. 데이터 분석 : 상관관계가 높은 열들의 datetime에 따른 평균값 비교
![](https://hackmd.io/_uploads/Hk9tk8U2n.png)
![](https://hackmd.io/_uploads/Sycty8U2h.png)
![](https://hackmd.io/_uploads/rJ5F1U833.png)
![](https://hackmd.io/_uploads/HkcFyI8nn.png)

-> 상관관계가 높은 열들은 생각보다 연관성이 매우 높다. 이 열들만 잘 학습시켜도 매우 잘 예측할 듯하다.
-> B,J 기지국의 경우 A나 F,E와는 데이터의 차이가 있어보인다.

[코드 확인하기](http://155.230.107.94:9999/notebooks/network_safety/Jongwon/DATAPLOT.ipynb)


### 윤대헌 일요일 점심시간대 진행상황
[코드 확인하기](http://155.230.107.94:9999/notebooks/network_safety/Corr1.ipynb)

유사성을 판별할 수 있는 좋은 방법으로, 각 기지국 별 x data는 모두 조회가 되므로 그 값을 바탕으로 하여 서로 간 비슷한 정도를 유추할 수 있을 것으로 생각됨

그래서 모든 기지국의 시간대 별 평균 상관관계을 구해봤는데 b와 j 기지국 입장에서는 딱히 유의미한 값이 도출되는 것 같지는 않음. 다만 c,d,e,f,g 기지국은 비교적 서로 더 높은 상관관계를 유지하고 있는 것으로 보아 해당 기지국이 축제 중심, 나머지는 축제 외각에 위치한 것으로 추측됨

![](https://hackmd.io/_uploads/B1U8_0Bn3.png)

![](https://hackmd.io/_uploads/BkKSs0S33.jpg)

이번에는 상관관계에 중요한 역할을 하는 feature만을 이용하여 상관관계 분석을 했는데 역시나 상관관계 색이 진해졌다. 하지만 하늘도 무심하시지, 딱 B, I, J는 연관이 별로 연관이 없는 형태로 나타났다...

![](https://hackmd.io/_uploads/r1rSqCSn3.png)

일단 스터디원들의 코드를 받아서 미팅2에서 이론적으로 이야기해본 LSTM을 이어나가고자 하니 작업한 코드나 설명이 있으면 좋을 것 같음!

---
## 미팅 3
시각: 8/14(월) 19:00

정규화 전략 dictionary : {'erabaddatt': 'min-max', 'erabaddsucc': 'min-max', 'endcaddatt': 'min-max', 'endcaddsucc': 'min-max', 'endcmodbymenbatt': 'z-score', 'endcmodbymenbsucc': 'z-score', 'endcmodbysgnbatt': 'min-max', 'endcmodbysgnbsucc': 'min-max', 'connestabatt': 'z-score', 'connestabsucc': 'z-score', 'handoveratt': 'z-score', 'handoversucc': 'z-score', 'rachpreamblea': 'min-max', 'numrar': 'min-max', 'nummsg3': 'min-max'}
