본문 바로가기

Python

[Python] 프로그래머스 - 문자열 p와 y의 개수 [문자열 p와 y의 개수] 📑 문제 📝 풀이 import collections def solution(s): s = s.lower()# 소문자로 변경 if collections.Counter(s)['p'] == collections.Counter(s)['y']:p와 y의 개수 세기 return True else: return False collections.Counter(s)['p'] 대신에 s.count('p')를 사용하는 방법도 있다. 더보기
[Python] 프로그래머스 - 두 정수 사이의 합 [두 정수 사이의 합] 📑 문제 📝 풀이 def solution(a, b): c=0 if a 더보기
[Python] 유용하게 쓰이는 함수들 map(func, iterable(순회가능한 객체)) sum(map(int, l)) # 리스트로 변환시키지 않고도 sum으로 가져감으로써 메모리의 효율을 상승시킨다. list(map(int, l)) # 리스트로 변환하면 메모리 효율이 떨어진다. # 함수 활용 def 함수(x): return x ** 2 list(map(함수, [1,2,3,4])) # lambda 활용 list(map(lambda x:x**2, [1,2,3,4])) zip(iterable, iterable, …) print(list(zip('abcde', '12345', '원투쓰포파'))) # 2개 이상의 묶음이 가능하다. > [('a', '1', '원'), ('b', '2', '투'), ('c', '3', '쓰'), ('d', '4', .. 더보기
[ML] 머신러닝 - TIL(11월 22일 오후) 목차 1. Support Vector Machine 2. Nonlinear SVM 3. SVM Regression 1. Support Vector Machine 1-1. Support Vector Machine - 선형이나 비선형 분류, 회귀, 이상치 탐색에도 사용할 수 있는 머신러닝 방법론 - 딥러닝 이전 시대까지 널리 사용된 방법론 - 복잡한 분류 문제를 잘 해결, 상대적으로 작거나 중간크기를 가진 데이터에 적합 - 최적화 모형으로 모델링 후 최적의 분류 경계 탐색 특징 - 두 클래스 사이에 가장 넓이가 큰 분류 경계선을 찾음 - Support Vector 라고 하는 것은 각각의 클래스에서 분류 경계선을 지지하는 관측치들 - 스케일에 민감하기 때문에 변수들 간의 스케일을 잘 맞춰주는 것이 중요 1-2.. 더보기
[ML] 머신러닝 - TIL(11월 22일 오전) 목차 1. 최적화와 모형학습 2. 경사하강법 개요 3. 경사하강법 심화 1. 최적화와 모형학습 - 머신러닝의 최적화는 Loss(손실)을 최소화하는 모델을 찾는 것이다. - 대부분의 데이터들은 3차원 이상의 복잡한 Loss function을 가지고 있다. - 그에 맞는 함수를 사용하는 적합한 모델을 찾는 것도 중요하다. 2. 경사하강법 개요 경사하강법(Gradient Descent)은 처음에 random의 w로 시작하여 미분값이 0이되는 지점으로 한발자국씩 나아가간다. 미분값이 0이라는 것은 손실값이 0이라는 것인데 사실상 손실값 0 은 불가능에 가깝기 때문에 최대한으로 근접을 한 w값을 찾는 것이다. 3. 경사하강법 심화 3-1. Learning rate learning rate는 미분값이 0인 곳으로 .. 더보기
[ML] 머신러닝 - TIL(11월 21일) 목차 1. Introduction to Machine Learning 1-1. 인공지능과 머신러닝 개요 1-2. 머신러닝 학습 개념 1-3. 머신러닝 프로세스 및 활용 1-1. 인공지능과 머신러닝 개요 인공지능이란? 인공지능을 전통적인 인공지능(Traditional AI)과 현대의 인공지능(State of the art AI)으로 분류하여 설명을 해보면 전통적인 인공지능은 사람이 직접 최적의 함수를 구해 데이터와 함수를 같이 컴퓨터로 학습을 시키는 과정이다. 하지만 현대의 인공지능은 데이터를 가지고 컴퓨터가 직접 학습을 하여 최적의 함수를 찾은 후에 이를 바탕으로 직접 테스트도 하는 과정이다. 이를 머신러닝이나 딥러닝이라고 부른다. 머신러닝이란? 머신러닝은 컴퓨터 알고리즘에 대한 학습 과정으로 자동으로 .. 더보기