일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- aof
- 트러블슈팅
- 잡담
- 크롤링
- auc
- semi-project
- json
- 원소주
- 파일입출력
- 그리디
- 인공지능
- 머신러닝
- SMTP
- AI
- EarlyStopping
- pos_tag
- stopwords
- ML
- Trouble shooting
- beautifulsoup
- selenium
- Django
- IOPub
- PYTHON
- category_encoders
- find_all()
- Roc curve
- pandas
- 이것이 코딩 테스트다
- Logistic linear
- Today
- Total
목록전체 글 (48)
개발 블로그
Error message Error: MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report errors during writes if RDB snapshotting fails (stop-writes-on-bgsave-error option). Please check the Redis logs for details about the RDB error. Redis가 디스크에 데이터를 지속적으로 저장하는 데 문제가..
파이썬에서 hashlib 라이브러리를 사용하여 파일 hash를 구할 수 있다. import hashlib def file_to_md5(self): hash_md5 = hashlib.md5() with open(self.filepath, 'rb') as f: for chunk in iter(lambda: f.read(4096), b""): hash_md5.update(chunk) return hash_md5.hexdigest() 위와 같이 md5 hash를 구하는 코드예제를 보면 파일을 4096바이트씩 끊어서 읽고 hash를 update하다가 b"" (파일의 끝) 를 만나면 종료되는 것을 볼 수 있다. 이때 왜 f.read()를 안하고 4096 또는 1024와 같이 끊어서 읽는 코드 예제들이 많은지 궁금해..
인터넷이 안되는 원격 장비(Ubuntu 20.04)에 category encoders와 dependency package들을 설치하는 과정에서 만난 에러를 정리해본다. 우선 category_encoders의 requirements목록은 다음 페이지에서 확인 할 수 있다. https://github.com/scikit-learn-contrib/category_encoders/blob/master/requirements.txt numpy>=1.14.0 scikit-learn>=1.0.0 scipy>=1.0.0 statsmodels>=0.9.0 pandas>=1.0.5 patsy>=0.5.1 unittest2 # unittest2는 안설치해도 pip install 됨 importlib_resources ; p..
아래와 같이 model.py 모듈에서 Model 클래스 안의 함수 inference_malware_file() 함수에서 dict_to_df() 를 호출하는데 위와 같은 에러 메시지 발생 Class안의 함수인데 self 값을 주지 않아서 생긴 에러였다. class Model: def __init__(self, model_type='random_forest'): self.model = None self.model_type = None self.features = None if model_type == 'random_forest': self.model = RandomForestClassifier() self.model_type = 'random_forest' ... def inference_malware_fi..
daemonset.yaml 파일로 컨테이너 버전을 업데이트 하려고 했는데 daemonset 파드의 Status가 ImagePullbackOff 가 계속 떠있었다. 내 경우에는 dockerhub에 해당 이미지가 없기 때문에, 없는 이미지를 pull하려고 하니까 당연히 버전 업데이트가 안되는 것이였다. 아래와 같이 daemonset.yaml의 image버전이 0.998이였는데, 이를 dockerhub에 있는 image 버전으로 바꿔주니 잘 동작하였다. - name: container image: draidev/my_image:0.998
NLP모델을 학습시키면서 fit함수를 보다가 callbacks란 파라미터에 EarlyStopping함수의 반환값을 주는 걸 보고 찾아보게 됐다. EarlyStopping 함수 과적합을 방지하기 위한 콜백함수 적절한 시점에 학습을 조기 종료시킨다. EarlyStopping 함수는 위 그림과 같이 validation_loss 의 값이 작아지다가 어느 순간 커질때가 있기 때문에 남은 epochs가 있어도 validation_loss가 가장 작은 순간에 학습을 일찍 종료시켜(Early Stopping) 최적의 모델을 저장하기 위한 함수이다. 위의 그래프를 보면 training_loss는 계속 줄어들지만 validation_loss는 줄어들다가 어느 순간 증가하게 된다. 이 뜻은 모델이 데이터를 지속적으로 학습하..
분류 ML모델의 성능을 평가하기 위해 Accuracy, Recall, Precision, F1 score를 구하고 이를 기반으로 모델간의 성능을 비교하고 더 나은 지표를 얻기 위해 모델을 개선시켜 나갈 수 있습니다. 각각의 지표가 무엇을 의미하는지 알아보겠습니다. 우선 텍스트 데이터에 대해서 혐오표현인지 아닌지를 판별하는 모델이 있다고 가정하겠습니다. 만약 혐오표현이면 1, 혐오표현이 아니라면 0으로 라벨링합니다. 위 그림의 confusion matrix에서 각각 무엇을 뜻하는지는 아래와 같습니다. True Positive - 모델이 혐오표현이라고 예측하였고 실제로 그런 경우 True Negative - 모델이 혐오표현이 아니라고 예측하였고 실제로 그런 경우 False Positive - 모델이 혐오표현..
장고의 환경세팅후에 이제 본격적으로 앱의 기능을 구현하는 과정을 진행 해보겠습니다! 그전에 urls.py와 views.py에 대해 간단한 튜토리얼을 먼저 보겠습니다. 00. urls.py & views.py 저희가 만든 앱을 웹사이트에 띄우려면 urls.py 파일에 url경로를 추가해 줘야합니다. 저는 lotto앱의 views.py 파일에 접근해야 하기 때문에 `from lotto import views`를 해줬습니다. """site_1 URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/3.2/topics/http/urls/..