14 3월 2025

[기계학습][머신러닝] [인공지능] 지도학습, 비지도학습, 강화학습

[기계학습][머신러닝] [인공지능] 지도학습, 비지도학습, 강화학습

 

머신러닝의 학습 방법은 크게 3가지로 분류됩니다.

  • 지도학습
  • 비지도학습
  • 강화학습

지도 학습은 말 그대로 정답이 있는 데이터를 활용해 데이터를 학습시키는 것입니다. 입력 값(X data)이 주어지면 입력값에 대한 Label(Y data)를 주어 학습시키며 대표적으로 분류, 회귀 문제가 있습니다.

예를 들어, 입력 데이터 셋을 3*5, 32*44 등을 주고 라벨 데이터 셋을 입력 데이터셋의 정답인 15, 1408등을 주면 해당 모델은 주어지지 않은 데이터 셋 9*3의 정답을 해결할 수 있게 됩니다.


– 지도학습 종류

 

    1) 분류(Classification)

분류는 주어진 데이터를 정해진 카테고리(라벨)에 따라 분류하는 문제를 말합니다. darknet의 YOLO, network architecture는 GoodLeNet for image classification을 이용하여 이미지를 분류하고 있습니다. 분류는 맞다, 아니다 등의 이진 분류 문제 또는 사과다 바나나다 포도다 등의 2가지 이상으로 분류하는 다중 분류 문제가 있습니다.

예를 들어 입력 데이터로 메일을 주고 라벨을 스팸메일이다, 아니다 를 주면 모델은 새로운 메일이 들어올 때 이 메일이 스팸인지 아닌지 분류를 할 수 있게 됩니다.

스팸메일 분류 예제

    2) 회귀(Regression)

회귀는 어떤 데이터들의 Feature를 기준으로, 연속된 값(그래프)을 예측하는 문제로 주로 어떤 패턴이나 트렌드, 경향을 예측할 때 사용됩니다. 즉 답이 분류 처럼 1, 0이렇게 딱 떨어지는 것이 아니고 어떤 수나 실수로 예측될 수 있습니다.

예를 들어 서울에 있는 20평대 아파트 집값 가격, 30평대 아파트 가격, 지방의 20평대 아파트 가격등을 입력데이터로 주고 결과를 주면, 어떤 지역의 30평대 아파트 가격이 어느정도 인지 예측할 수 있게 됩니다.

보스턴 주택 가격 예측 예제


머신러닝은 어떤 데이터를 분류하거나, 값을 예측(회귀)하는 것입니다. 이렇게 데이터의 값을 잘 예측하기 위한 데이터의 특징들을 머신러닝/딥러닝에서는 “Feature”라고 부르며, 지도, 비지도, 강화학습 모두 적절한 feature를 잘 정의하는 것이 핵심입니다. 엑셀에서 attribute(column)라고 불려지던 것을 머신러닝에서는 통계학의 영향으로 feature라고 부릅니다. 과거에 딥러닝 이전의 머신러닝에서는 Raw데이터를 피처 엔지니어가 직접 적절한 피처를 만들고, 머신러닝 모델의 결과로 아웃풋을 냈었는데, 딥러닝 이후로 Raw데이터를 딥러닝 모델에 넣어주면 모델이 알아서 feature를 알아내고 아웃풋을 내는 형식으로 발전하게 되었습니다. (머신러닝 모델이 피처를 알아서 찾아준다고 하여도 여전히 전처리 작업은 중요합니다.)

예를 들어 고양이, 강아지 사진은 분류한다고 하면 고양이는 귀가 뾰족하다 거나 눈코입의 위치, 무늬 등이 피처가 됩니다. 키와 성별을 주고 몸무게를 예측한다고 하면 키와 성별이 피처가 됩니다.

Feature는 Label, Class, Target, Response, Dependent variable 등으로 불려집니다.


지도 학습과는 달리 정답 라벨이 없는 데이터를 비슷한 특징끼리 군집화 하여 새로운 데이터에 대한 결과를 예측하는 방법을 비지도학습 이라고 합니다. 라벨링 되어있지 않은 데이터로부터 패턴이나 형태를 찾아야 하기 때문에 지도학습보다는 조금 더 난이도가 있다고 할 수 있습니다. 실제로 지도 학습에서 적절한 피처를 찾아내기 위한 전처리 방법으로 비지도 학습을 이용하기도 합니다.

비지도학습의 대표적인 종류는 클러스터링(Clustering)이 있습니다. 이 외에도 Dimentionality Reduction, Hidden Markov Model이 있습니다. 예를 들어 여러 과일의 사진이 있고 이 사진이 어떤 과일의 사진인지 정답이 없는 데이터에 대해 색깔이 무엇인지, 모양이 어떠한지 등에 대한 피처를 토대로 바나나다, 사과다 등으로 군집화 하는 것입니다.

지도/비지도 학습 모델(Semi-Supervised Learning)을 섞어서 사용할 수도 있습니다. 소량의 분류된 데이터를 사용해 분류되지 않은 더 큰 데이터 세트를 보강하는 방법으로 활용할 수 도 있습니다.

최근 각광받고 있는 GAN(generative Adversarial Network)모델도 비지도 학습에 해당합니다.


  • 지도학습, 비지도학습의 대표적인 알고리즘

 지도학습(Supervised Learning),  Classification  kNN
 Naive Bayes
 Support Vector
 Machine Decision
 Regression  Linear Regression
 Locally Weighted Linear
 Ridge
 Lasso
 비지도학습(Unsupervised Learning),    Clustering
 K Means
 Density Estimation
 Exception Maximization
 Pazen Window
 DBSCAN

출처: https://wendys.tistory.com/169


머신러닝의 꽃이라 불리는 강화학습(RL)은 지도, 비지도 학습과는 조금 다른 개념입니다.

우리가 잘 아는 알파고는 이 ‘강화학습’ 모델로 만들어졌습니다.

행동 심리학에서 나온 이론으로 분류할 수 있는 데이터가 존재하는 것도 아니고 데이터가 있어도 정답이 따로 정해져 있지 않으며 자신이 한 행동에 대해 보상(reward)를 받으며 학습하는 것을 말합니다.

– 강화학습의 개념

  • 에이전트(Agent)
  • 환경(Environment)
  • 상태(State)
  • 행동(Action)
  • 보상(Reward)

게임을 예로들면 게임의 규칙을 따로 입력하지 않고 자신(Agent)이 게임 환경(environment)에서 현재 상태(state)에서 높은 점수(reward)를 얻는 방법을 찾아가며 행동(action)하는 학습 방법으로 특정 학습 횟수를 초과하면 높은 점수(reward)를 획득할 수 있는 전략이 형성되게 됩니다. 단, 행동(action)을 위한 행동 목록(방향키, 버튼)등은 사전에 정의가 되어야 합니다.

만약 이것을 지도 학습(Supervised Learning)의 분류(Classification)를 통해 학습을 한다고 가정하면 모든 상황에 대해 어떠한 행동을 해야 하는지 모든 상황을 예측하고 답을 설정해야 하기 때문에 엄청난 예제가 필요하게 됩니다.

바둑을 학습한다고 했을 때, 지도 학습(Supervised Learning)의 분류(Classification)를 이용해 학습하는 경우 아래와 같은 개수의 예제가 필요해지게 됩니다.

강화 학습(reinforcement learning)은 이전부터 존재했던 학습법이지만 이전에 알고리즘은 실생활에 적용할 수 있을 만큼 좋은 결과를 내지 못했습니다.

하지만 딥러닝의 등장 이후 강화 학습에 신경망을 적용하면서부터 바둑이나 자율주행차와 같은 복잡한 문제에 적용할 수 있게 되었습니다. 좀 더 자세히 설명하면 고전적인 강화학습 알고리즘은 앞으로 나올 상태에 대한 보상을 모두 계산해야 하는데 실제 세상과 같이 상태 공간이 크면 현실적으로 계산을 할 수 없습니다. 최근에는 계산하는 대신 신경망을 통해 근삿값을 구함으로써 복잡한 문제를 해결할 수 있게 되었습니다.

강화학습에 딥러닝을 성공적으로 적용한 대표적 알고리즘으로는 DQN과 A3C가 있는데요. 두 알고리즘 모두 딥마인드에서 발표했으며 다른 강화학습 알고리즘의 베이스라인이 되었습니다.

 

[References]

https://blogs.nvidia.co.kr/2018/09/03/supervised-unsupervised-learning/

https://wendys.tistory.com/170

출처: https://ebbnflow.tistory.com/165 [삶은 확률의 구름:티스토리]

Loading

1 3월 2025

[ 一日30分 인생승리의 학습법] 소프트웨어 개발하다보면 “connection reset” 등, 소프트웨어 버그 적인 문제가아닌 하드웨어나 네트워크 오류 메시지의 예

[ 一日30分 인생승리의 학습법] 소프트웨어 개발하다보면 “connection reset” 등, 소프트웨어 버그 적인 문제가아닌 하드웨어나 네트워크 오류 메시지의 예

소프트웨어 개발하다보면 “connection reset” 등, 소프트웨어 버그 적인 문제가아닌 하드웨어나 네트워크 오류 메시지의 예
DALL·E 2025-03-01 17.05.42 - A digital illustration showing various software and hardware error scenarios in a computer system. The image should include___1. A server room with bl.png
소프트웨어 개발을 하다 보면 프로그램 자체의 버그가 아닌 하드웨어 문제, 네트워크 오류, 시스템 환경 문제 등으로 인해 발생하는 다양한 오류 메시지를 접할 수 있습니다. 대표적인 사례들을 몇 가지 범주로 나누어 설명하겠습니다.

1. 네트워크 및 연결 문제

네트워크 문제는 클라이언트-서버 간 통신 중단, 패킷 손실, 방화벽 설정 오류 등으로 인해 발생합니다.
  • Connection reset by peer
    • 원인: 서버 또는 클라이언트가 연결을 강제로 종료함 (예: 서버가 강제 종료되거나, 클라이언트의 네트워크 장애 발생)
    • 해결: 서버와 클라이언트의 네트워크 상태 확인, 방화벽 설정 점검
  • Connection timed out
    • 원인: 네트워크 응답이 없거나, 방화벽에서 포트 차단
    • 해결: 서버 상태 확인, 네트워크 방화벽 및 라우팅 설정 점검
  • Host unreachable
    • 원인: 대상 서버가 네트워크 상에서 접근 불가능
    • 해결: 서버의 네트워크 설정 확인, 라우팅 문제 해결
  • Broken pipe
    • 원인: TCP 연결이 예상치 않게 끊김 (예: 서버가 클라이언트가 읽기 전에 종료됨)
    • 해결: 클라이언트-서버 연결 안정성 확보, 재시도 로직 추가

2. 디스크 및 파일 시스템 문제

디스크 문제는 파일 저장, 접근 중 발생하는 오류로, 스토리지 장치 상태에 따라 발생할 수 있습니다.
  • No space left on device
    • 원인: 디스크 용량 부족
    • 해결: 불필요한 파일 정리, 디스크 증설
  • Read-only file system
    • 원인: 디스크가 읽기 전용 모드로 변경됨 (예: 파일 시스템 손상으로 자동 마운트됨)
    • 해결: 파일 시스템 체크 (fsck 실행), 마운트 옵션 확인
  • I/O error
    • 원인: 하드웨어 장애 또는 디스크 손상
    • 해결: 디스크 상태 검사 (smartctl 사용), 백업 후 디스크 교체
  • Too many open files (EMFILE)
    • 원인: 프로세스가 동시에 너무 많은 파일을 열어 제한 초과
    • 해결: ulimit -n으로 파일 핸들 개수 증가

3. 메모리 및 CPU 관련 문제

메모리 부족, CPU 과부하로 인해 발생하는 오류 메시지들입니다.
  • Out of memory (OOM Killer activated)
    • 원인: 시스템 메모리가 부족하여 커널이 프로세스를 강제 종료
    • 해결: 메모리 사용량 최적화, 스왑 설정, 필요 시 메모리 증설
  • Segmentation fault (core dumped)
    • 원인: 잘못된 메모리 접근 (일반적으로 소프트웨어 버그, 그러나 하드웨어 문제일 수도 있음)
    • 해결: 코드 디버깅, RAM 상태 점검
  • Bus error
    • 원인: CPU가 접근할 수 없는 메모리 영역에 접근 시 발생
    • 해결: RAM 오류 확인, CPU 상태 점검
  • High CPU Load (load average too high)
    • 원인: CPU 사용률 과부하 (예: 무한 루프, 병목 현상)
    • 해결: tophtop 명령어로 원인 분석 후 코드 최적화

4. 하드웨어 및 장치 오류

서버, 장치, 외부 하드웨어 문제로 인해 발생하는 오류 메시지들입니다.
  • Device not found
    • 원인: 특정 하드웨어(예: USB, GPU)가 인식되지 않음
    • 해결: dmesg 로그 확인, 장치 드라이버 재설치
  • Thermal shutdown
    • 원인: CPU 또는 GPU 온도 과열로 인해 시스템이 강제 종료됨
    • 해결: 냉각 시스템 점검, 서멀 페이스트 재도포
  • Kernel panic – not syncing: Fatal exception in interrupt
    • 원인: 커널 오류 또는 하드웨어 문제
    • 해결: 부팅 로그 확인 (journalctl -xb), RAM 및 디스크 점검

5. 데이터베이스 및 스토리지 문제

데이터베이스가 네트워크, 디스크 문제로 인해 접근 불가능할 때 발생하는 메시지입니다.
  • Lost connection to MySQL server during query
    • 원인: 네트워크 연결 끊김, 데이터베이스 프로세스 종료
    • 해결: 데이터베이스 로그 확인 (/var/log/mysql.log), 네트워크 안정성 점검
  • PostgreSQL: FATAL: the database system is in recovery mode
    • 원인: 데이터베이스가 비정상 종료되어 복구 중
    • 해결: 복구가 끝날 때까지 기다리거나, pg_resetwal 실행
  • MongoDB: WiredTiger error (-31804) [timestamp]: WT_PANIC: fatal WiredTiger error
    • 원인: 스토리지 손상 또는 데이터 손실
    • 해결: 백업에서 복구, mongod --repair 실행

이와 같은 오류 메시지들은 주로 소프트웨어 자체의 버그가 아닌 네트워크, 디스크, 메모리, CPU, 하드웨어 문제로 인해 발생하는 경우입니다. 문제를 해결하려면 시스템 로그(dmesgjournalctlsyslog)를 확인하고, 하드웨어 상태를 점검하는 것이 중요합니다.
 
 
 
 
 

Loading

20 2월 2025

[알아봅시다][COMPUTERS] MS, 세상 뒤집을 양자 칩 공개… 수년내 AI 학습속도 100배

[알아봅시다][COMPUTERS] MS, 세상 뒤집을 양자 칩 공개… 수년내 AI 학습속도 100배

MS, 세상 뒤집을 양자 칩 공개… 수년내 AI 학습속도 100배

01 LOWLCBASGVG2JFYRHD3SB5DGPY.png
 
18일 MS가 공개한 양자컴 반도체 마요나라 1/마이크로소프트

미국 마이크로소프트(MS)가 양자 컴퓨터 상용화의 최대 걸림돌로 꼽혀온 양자 오류와 집적도 한계 등을 뛰어넘는 양자컴 칩을 개발했다고 밝혔다. 온도·자기장 등 외부 환경 변화에 극히 민감해 오류가 잦고 보정이 어려웠던 기존 칩의 치명적 단점을 해결해 양자컴 시대를 앞당길 수 있게 됐다는 것이다.

19일 MS는 “세계 최초로 ‘위상(位相) 초전도체’를 사용한 양자 칩 ‘마요라나 1′을 개발했다”며 “반도체 발명이 오늘날의 스마트폰, 컴퓨터, 전자 제품을 가능하게 한 것처럼 이번 개발로 양자컴 시대가 몇 년 안에 실현될 수 있을 것”이라고 밝혔다. MS는 이번 양자 칩 개발을 트랜지스터 발명에 비유했다.

02 HIO7BAAHVVGRXJM5SA7VSBNOVQ.png
그래픽=양인성

MS는 양자컴 연산의 기본 단위이자 성능 기준으로 꼽히는 ‘큐비트’ 수를 향후 100만개로 확장할 수 있게 됐다고 밝혔다. 현재 IBM과 구글의 양자컴이 1000큐비트급인 점을 감안하면, 1000배에 달하는 규모를 구현할 수 있다고 공언한 것이다. 진공관 시대에 집채만 했던 컴퓨터가 트랜지스터 발명을 계기로 소형화되면서 ‘개인용 컴퓨터’ 시대가 열린 것처럼, 이번 양자컴 기술이 신소재·의료·환경·국방·보안 등 경제·산업·사회 각 분야에 혁명과도 같은 변화를 예고한 것이라는 기대가 나온다.

◇수년내 AI 학습속도 100배… “트랜지스터 발명과 맞먹어”

마이크로소프트(MS)가 19일 자체 개발했다고 공개한 양자컴 칩 ‘마요라나 1’에는 큐비트 8개가 탑재됐다. 큐비트는 양자컴 연산의 기본 단위다. 기존의 일반 컴퓨터는 전자의 유무(有無)에 따라 0과 1의 비트(bit)로 정보를 표현하고 순차적으로 계산하는 반면, 양자컴은 예컨대 0과 1을 동시에 처리(중첩)할 수 있어 연산 속도가 획기적으로 빠르다. 이번에 MS는 큐비트를 100만개 이상으로도 확장할 수 있도록 양자 칩을 설계했다고 밝혔다. 이번 양자 칩의 핵심인 ‘위상 초전도체’는 인듐 비소와 알루미늄 등으로 구현했다. 이를 통해 양자 정보의 손상을 막고 오류 파악과 수정도 디지털로 자동 제어할 수 있게 됐다. 체탄 나약 MS 퀀텀 하드웨어 부사장은 “큐비트 100만개는 양자컴이 산업에 실질적 변화를 가져오기 위한 필수 임계치”라고 했다. 큐비트가 100만개 이상 탑재되는 시기를 ‘양자컴 상용화’가 시작되는 때로 본다는 것이다.

03 GW3JWPXD3NCYJEZT2E5BRTQ32A.png
그래픽=양인성

◇양자컴 상용화, 무엇을 바꿀까

MS는 100만 큐비트급 양자컴이 개발되면 분자 간 복잡한 상호작용을 비롯해 오늘날의 컴퓨터로는 풀 수 없는 각종 문제가 해결될 것이라고 했다. 예컨대, 교량이나 항공기의 균열 등을 자가 복구하는 물질을 개발할 수 있고, 각종 플라스틱을 분해하는 만능 촉매도 만들 수 있어 환경오염도 풀 수 있다는 것이다. 토양 비옥도를 획기적으로 높여 식량 부족 문제의 돌파구도 열 수 있다고 했다.

이처럼 수퍼컴퓨터를 월등히 초월하는 양자컴이 상용화되면 인공지능(AI) 분야에서도 근본적 혁신이 가능하다는 분석이 나온다. 막대한 양의 데이터를 학습한 뒤 이를 토대로 연산과 추론을 하는 AI에 양자컴 기술이 접목되면 소비 전력을 비롯해 비용과 시간을 대폭 줄이면서 AI 학습 속도를 100배 가까이 높일 수 있다는 것이다. MS는 “AI와 양자컴이 결합한 시대에는 어떤 물질이나 분자, 제품을 개발하고 싶다고 말하면 즉시 실현 가능한 답을 얻을 수 있게 될 것”이라며 “예전 같은 수년간의 시행착오는 없을 것”이라고 했다.

양자 컴퓨터는 또 의료, 경제 등 분야에서도 혁신을 이끌 것으로 기대된다. 양자 컴퓨터를 본격적으로 활용하면 신약 후보 물질을 찾는 데 드는 시간과 비용을 기존의 100분의 1로 절감하고, 궁극적으로 암이나 치매 등 난치병을 쉽게 치료할 수 있는 시대가 열릴 수 있다. 이와 함께 차세대 배터리나 그래핀 등 신소재를 지금보다 훨씬 빠르게 개발할 수 있고, 금융 시장에서도 주가, 금리, 환율 등 다양한 변수를 고려해 리스크를 예측하고 회피하는 금융 모델링이 가능해진다. 이상기후를 예측하는 것도 지금보다 훨씬 정확해질 전망이다.

◇“부작용과 한계도 고려해야”

양자컴이 상용화됐을 때 생기는 위협도 있다. 전문가들은 기존의 암호 기술이 양자컴 앞에서 무력화될 것으로 보고 있다. 기존 컴퓨터로 수천 년을 풀어야 하는 암호도 양자컴으로는 몇 분 안에 풀릴 수 있다.

다만 MS의 이번 기술이 상용화로 직결될지는 두고 봐야 한다는 지적도 있다. 이순칠 한국연구재단 양자기술단장은 “이번 양자 칩은 무오류 양자컴의 실현 가능성을 보였다는 점에서 의미가 있다”면서도 “아직 완벽한 수준의 기술을 입증하진 못한 것으로 보인다”고 했다.

테크 업계에선 새로운 양자 칩 개발을 계기로 양자컴 경쟁이 더욱 뜨거워질 것으로 보고 있다. 앞서 구글이 지난해 12월 공개한 양자 칩 ‘윌로’는 기존 수퍼컴퓨터로 10의 25제곱년이 걸리는 계산을 5분 만에 수행해 냈다. IBM은 지난해 11월 ‘퀀텀 헤론’ 양자 칩을 공개하며 “전작 대비 동일한 연산 작업 시간을 112시간에서 2.2시간으로 크게 단축했다”고 밝혔다. 도용주 광주과학기술원(GIST) 물리광과학과 교수는 “한국은 양자컴 분야에선 후발 주자지만, 위상 초전도체 양자컴은 새로 열리는 분야로 기술적 격차가 크지 않아 추격 가능성을 주목해야 한다”고 했다.

☞양자컴퓨터, 위상 초전도체

양자컴퓨터: 일반 컴퓨터는 전자의 유무(有無)에 따라 0과 1의 비트(bit)로 정보를 표현하고 순차적으로 계산하는 반면, 양자컴퓨터는 0과 1을 동시에 처리(중첩)할 수 있어 연산 속도가 획기적으로 빠르다.

위상 초전도체: 전기저항이 0이 돼 전력 손실 없이 전류를 흐르게 하는 물질을 초전도체라 한다. ‘위상(位相) 초전도체’는 초전도성을 가지면서 형태가 변형돼도 입자 간 위상이 변하지 않아 성질이 쉽게 유지되는 물질이다. 기존 양자 컴퓨터의 초전도체는 온도·빛 등 환경이 조금만 바뀌어도 성질이 변해 연산 오류가 발생했다. ‘위상 초전도체’는 이런 문제를 해결해 정보를 더 오래 안정적으로 유지할 수 있다.

 

04 https___s3.amazonaws.com_arc-authors_chosun_c9d8eb17-ec74-42d4-a9bc-f812ecd50653.png
날카롭되 친절한 글을 쓰겠습니다
 

05 https___author-service-images-prod-us-east-1.publishing.aws.arc.pub_chosun_ccd87091-2d01-4f29-858b-b9378816a850.png
테크부에서 과학 분야와 제약·바이오 업계를 맡고 있습니다.

[출처] https://www.chosun.com/economy/tech_it/2025/02/20/WKLWICF2SBHCBNAA2CRK4YECJY/

Loading

24 1월 2025

[chatgpt] 이전 기사 AI타임스 “오픈AI의 AGI 달성 기준은 인간 넘는 ‘코딩 에이전트’ 출시 순간”.

[chatgpt] 이전 기사 AI타임스 “오픈AI의 AGI 달성 기준은 인간 넘는 ‘코딩 에이전트’ 출시 순간”.

“오픈AI의 AGI 달성 기준은 인간 넘는 ‘코딩 에이전트’ 출시 순간”…’오퍼레이터’는 이번 주 챗GPT에 통합

  •  임대준 기자
  •  
  •  승인 2025.01.23 18:00
2025-01-24-01 openai 167422_182212_5856.png
(사진=셔터스톡)

오픈AI가 소프트웨어 개발을 담당하는 코딩 전문 인공지능(AI) 에이전트를 개발 중으로 알려졌다. 그리고 코딩 에이전트가 최고 수준의 프로그래머를 대체하는 순간을 인공일반지능(AGI)에 도달한 것으로 간주할 것으로 전해졌다.

또 이와는 별도로 개발한 범용 GUI 에이전트 ‘오퍼레이터’는 이번 주 정식 출시를 앞뒀다는 소식이다.

디 인포메이션은 22일(현지시간) 오픈AI 임원진과 이야기를 나눈 3명을 인용, 고급 소프트웨어 개발자보다 복잡한 프로그래밍 작업을 처리하는 AI 에이전트를 개발 중이라고 보도했다.

이에 따르면 오픈AI의 목표는 레벨 6 엔지니어, 즉 선임 스태프 급 엔지니어를 복제하는 것이다. 이 수준의 개발자는 관리자로부터 광범위한 지침을 받고 새로운 소프트웨어나 기능의 설계부터 이를 구동하는 시스템까지 전체를 발할 수 있다.

또 오픈AI의 어시스턴트는 코드 출력뿐 아니라, 코드 베이스에 변경 사항을 적용하려는 경우 슬랙을 통해 인간에게 메시지를 보내 알릴 수도 있는 것으로 전해졌다.

오픈AI의 몇개 팀이 이를 개발하고 있으며, 추론 모델 ‘o1’도 일부 활용한 것으로 알려졌다.

이에 대해 제이슨 리우 재피어 AI 컨설턴트는 오픈AI가 최고 수준의 프로그래머를 타깃으로 하는 것이 합리적이라고 말했다. 수석급 엔지니어는 가장 비용이 많이 들고 대체가 어렵기 때문에, 고급 코딩 에이전트가 기업에 재정적으로 확실한 도움이 된다는 것이다.

또 현재 출시된 코딩 에이전트가 기대에 미치지 못한다고도 지적했다. 리우 컨설턴트는 지난해 코그니션이 출시한 세계 최초의 코딩 에이전트 ‘데빈’과 작업하는 것을 “그저 멍청한 인턴 10명의 관리자가 되는 것 같은 느낌이 든다”라고 표현했다. 따라서 성능이 확실히 뛰어나야 한다는 것이다.

앞서 오픈AI는 지난해 하반기부터 코딩 성능 향상에 초점을 맞추고 집중적인 개발에 매달렸다는 말이 나왔다. 당시 오픈AI 제품이 앤트로픽에 비해 코딩 능력이 가장 떨어진다는 판단 때문이었다.

이번 소식으로 인해 샘 알트먼 CEO가 연초 개인 블로그를 통해 ‘리플렉션’이라는 글을 올리며 “AGI에 도달하는 방법을 이미 알고 있다”라고 한 것과 “연말까지 AI가 인력에 합류할 수 있다”라고 말한 것이 어떤 의미인지 확실해졌다는 분석이다.

한편, 디 인포메이션은 내부 관계자를 인용, 오픈AI가 이번 주에 ‘챗GPT’에 AI 에이전트 ‘오퍼레이터’를 통합 출시할 계획이라고 보도했다.

오퍼레이터는 웹 사이트를 검색하고 여행 계획을 짜며 레스토랑을 예약하는 등 사람 대신 마우스와 키보드를 사용해 일반적인 업무를 처리하는 범용 GUI 에이전트다. 

지난 20일에는 티버 블라호라는 소프트웨어 엔지니어가 맥OS용 챗GPT 클라이언트에서 오퍼레이터의 단축키 옵션을 발견했으며, 오픈AI 홈페이지에서는 벤치마크 결과도 확인했다고 전한 바 있다. 이 때문에 오퍼레이터의 출시가 임박한 것으로 파악됐다.

임대준 기자 ydj@aitimes.com

[출처] https://www.aitimes.com/news/articleView.html?idxno=167422

Loading

24 1월 2025

[ 一日30分 인생승리의 학습법] 기술부채(Technical Debt)는 소프트웨어 개발이나 프로젝트 과정에서, 약속된 것과 실제로 제공된 것 사이에 차이가 발생하는 것을 의미합니다. 

[ 一日30分 인생승리의 학습법] 기술부채(Technical Debt)는 소프트웨어 개발이나 프로젝트 과정에서, 약속된 것과 실제로 제공된 것 사이에 차이가 발생하는 것을 의미합니다. 

 

기술부채(Technical Debt)는 소프트웨어 개발이나 프로젝트 과정에서, 약속된 것과 실제로 제공된 것 사이에 차이가 발생하는 것을 의미합니다. 즉, 기술적으로 해결해야 할 문제를 미루고 비즈니스 문제를 해결하는 것을 말합니다.

기술부채는 금전적인 채무와 비슷한 개념으로, 언젠가는 이자와 함께 상환해야 합니다. 기술부채가 쌓이면 개발 속도가 느려지고, 고객은 수정되지 않은 결함으로 인해 피해를 볼 수 있습니다.

기술부채를 최소화하기 위해서는 다음과 같은 방법을 고려할 수 있습니다.

  • 프로젝트 초기부터 적절한 기술 선택과 설계를 수행합니다
  • 코드 품질 관리를 합니다
  • 충분한 테스트를 수행합니다
  • 지속적인 개선과 리팩토링을 수행합니다
  • 기술 부채를 적극적으로 모니터링하고, 적절한 대응 전략을 수립합니다

2025-01-23-01 기술부채 01 DALL·E 2025-01-23 18.46.37 - A conceptual illustration of technical debt in software development. The image should depict a software engineer climbing a mountain made of messy cod.png

기술 부채(Technical Debt)란?

글쓴이 권오륜 / 2023년 06월 27일

 

기술 부채의 정의


 

사전적인 정의는 다음과 같습니다.

 

현 시점에서 더 오래 소요될 수 있는 더 나은 접근방식을 사용하는 대신 쉬운(제한된) 솔루션을 채택함으로써 발생되는 추가적인 재작업의 비용을 반영하는 소프트웨어 개발의 한 관점이다.

기술 부채는 금전적인 채무와 비유될 수 있다.

– 위키백과

출처 입력

워드 커닝햄(Ward Cunningham) 이 1992년도에 사용한 표현으로, 소프트웨어 개발에서 빠른 개발이나 기능 출시를 위해 나중에 처리하도록 미루어진 기술적인 문제를 말합니다. 이러한 문제들은 나중에 수정되어야 하지만, 미뤄진 만큼 처리하기에 더욱 복잡하고 비용이 많이 들어가게 됩니다.

결국, 나중에 개발해야 만 하는 추가적인 작업 형태로 남아 마치 갚아야 할 부채처럼 된다는 것입니다.

 

평균적인 소프트웨어 개발자는 기술 부채를 처리하는 데 일주일에 13시간 이상을 쓴다.

– 2018년 스트라이프(Stripe)의 Developer Coefficient 보고서

출처 입력

이와 같이 기술 부채를 관리하는데, 많은 시간을 투입해야 하는 것으로 나타났으며, 시스템이나 애플리케이션이 복잡하고, 커질수록 더욱 많은 시간을 투입해야 합니다.

이외에도, 마틴 파울러는 2009년 그의 블로그에서 기술 부채 사분면을 제시하였으며, 소프트웨어 개발 과정에서 “빠른 구현” 이라는 효과는 나타낼 수도 있지만 결국에는 “유지보수 노력 증가”라는 대가를 치루게 된다는 점을 설명하면서, 기술 부채의 중요성을 강조하고 있습니다.

02. 기술부채 -image-10.png

마틴 파울러의 기술 부채 사분 (https://www.productplan.com/glossary/technical-debt/)

 

기술 부채의 종류


 

기술 부채는 다양한 형태로 나타날 수 있으며, 예를 들어, 설계 부채, 코드 부채, 테스트 부채, 인프라 부채 등이 있습니다.

설계 부채

  • 소프트웨어 설계 단계에서 적절한 설계를 제대로 수행하지 않았거나 설계 결함을 미처 수정하지 못하여 생기는 부채
  • 소프트웨어의 설계가 미흡하거나 부적절하게 이루어졌을 때, 나중에 해당 소프트웨어를 수정하거나 유지 보수하는 과정에서 발생하는 추가적인 비용과 시간

코드 부채

  • 개발자가 프로그램 코드를 작성할 때, 시간이나 예산 등의 제한으로 인해 충분한 품질을 보장하지 못하고 미루는 코드 작성 작업
  • 소프트웨어 개발의 초기 단계에서는 효과적으로 비용을 절감할 수 있지만, 이후에 시스템을 유지 보수/업그레이드/기능 추가 시 많은 비용과 시간이 들어감

테스트 부채

  • 소프트웨어 개발 과정에서 충분한 테스트를 수행하지 않아 생기는 부채
  • 시스템의 기능이나 성능을 충분히 검증하지 않거나, 불완전한 테스트를 수행하여 발견하지 못한 결함으로 인해 시스템이나 소프트웨어의 품질 저하되며, 이후 품질 향상을 위해 많은 비용과 시간이 들어감

인프라 부채

  • 소프트웨어 개발 및 운영을 위한 인프라 구성에 대한 부채
  • 개발자가 시스템 운영을 위한 서버나 DB 등의 인프라 구성을 미리 준비하지 않은 채 개발을 진행하여, 시스템의 초기 버전은 빠르게 출시할 수 있지만, 이후 시스템 규모가 확장되거나 사용자 수가 증가하면 인프라 구성이 부족한 상황이 발생하게 되어, 시스템의 성능 저하나 서버 다운 등의 문제가 발생

기술 부채의 원인


 

기술적인 결함

  • 시스템/소프트웨어 대한 적절하지 않은 설계 또는 코드의 품질 관리를 하지 않는 등의 이유

시간 및 예산 제약

  • 개발 프로젝트의 일정이 매우 촉박하거나, 예산이 제한되어 있는 경우 개발자들은 충분한 테스트나 코드 리팩토링을 수행하지 않아 발생

기술적인 부족함

  • 새로운 기술을 익히는데 시간이 부족한 경우나, 충분한 경험이 없는 경우 발생 가능성이 높음

업무 환경

  • 개발 프로젝트를 위한 업무 환경이 부적절하거나, 커뮤니케이션에 문제가 있어 일부 정보나 요구사항을 놓치는 경우

이외에도 업무 우선순위, 기술적인 한계 등 여러 원인이 있을 수 있습니다.

기술 부채 최소화하는 방안


 

코드 리뷰

  • 다른 개발자들이 작성한 코드를 검토하고, 잠재적인 기술 부채를 예방할 수 있음
  • 코드의 가독성, 유지보수성, 확장성 등을 개선하고, 문제가 발생했을 때 빠르게 대처할 수 있도록 도와줌

테스트 자동화

  • 개발자가 작성한 코드를 자동으로 검증하고, 문제를 미리 파악할 수 있음
  • 잠재적인 기술 부채를 미리 예방할 수 있으며, 개발자가 코드를 수정하거나 추가할 때마다 자동으로 테스트가 수행되므로 코드의 신뢰성을 높일 수 있음

지속적인 통합/배포

  • 코드 변경 사항을 빠르게 반영하고, 문제를 빠르게 파악하고 해결할 수 있음
  • 개발자들은 코드 변경에 대한 실시간 피드백을 받으므로, 문제가 발생했을 때 빠르게 대처할 수 있음

기술 부채 관리

  • 기술 부채를 발생시키는 원인을 파악하고, 관리할 수 있는 프로세스를 도입하여 최소화할 수 있음
  • 기술 부채를 쌓이지 않도록 예방하고, 발생했을 때는 빠르게 대처하여 안정적인 소프트웨어 개발을 진행할 수 있도록 노력해야 함

최신 기술 도입

  • 새로운 기술이 나올 때마다 최신 기술을 도입하여 기술 부채를 최소화할 수 있음
  • 최신 기술을 도입하면 개발 시간이 단축되고, 더욱 효율적으로 개발할 수 있음

기술 부채를 최소화하기 위해서는 프로젝트 초기부터 적절한 기술 선택과 설계, 코드 품질 관리, 충분한 테스트, 그리고 지속적인 개선과 리팩토링을 수행해야 합니다. 또한, 기술 부채를 적극적으로 모니터링하고, 적절한 대응 전략을 수립하여 신속하게 해결하는 것이 필요합니다. 이러한 노력을 통해 기술 부채를 최소화하고, 높은 품질과 안정성을 갖춘 소프트웨어를 개발하는 것이 가능합니다.

기술 부채 관리의 중요성


 

기술 부채는 소프트웨어 개발 프로젝트에서 매우 중요한 문제이며, 기술 부채가 높아질수록 프로젝트 진행에 대한 위험이 높아질 수 있습니다.

높은 기술 부채는 미래에 프로젝트를 더욱 복잡하게 만들어서, 수정과 유지 보수 비용이 늘어날 수 있으며, 회사와 고객에게 추가적인 비용과 불편함을 초래할 수 있습니다. 또한, 품질이 낮아질 가능성이 높아져서, 불편한 사용자 경험과 기능 오류를 초래할 수 있습니다.

따라서, 기술 부채를 적절하게 관리하고 최소화하는 것이 매우 중요합니다. 기술 부채를 관리함으로써, 프로젝트의 일정과 예산을 준수하는 데 도움을 주며, 프로젝트의 품질과 안정성을 유지하는 데에도 중요합니다. 또한, 기술 부채를 최소화하면 개발자들은 보다 많은 시간과 에너지를 현재의 개발 과제에 집중할 수 있으며, 개발자들의 생산성과 만족도를 높이는데 도움을 줍니다.

마치며 …


 

기술 부채는 피할 수 없는 것이며, 모든 조직에서 발생할 수 있는 문제입니다.

개발자들은 기술 부채에 대한 인식을 높이고, 팀 전체적으로 기술 부채를 예방하고 관리할 수 잇는 문화를 구축해야 할 것입니다.

팀내에서도 기술 부채를 관리하고 있는지에 대해 한번쯤 검토해 보아야 할 것이며, 저희가 개발하고 있는 제품/서비스를 지속적으로 발전해나가려면, 기술 부채들을 조금씩은 해소해나가면서 개발 진행할 수 있도록 해야할 것입니다.

기술 부채를 최소화하기 위한 방안 및 프로세스 개선에 대해서도 본부 차원에서 고민해봐야 할 문제로 보입니다.

관련 기사


 
  • https://melv1n.com/what-is-technical-debt/
  • https://namu.wiki/w/기술적 부채
  • https://www.itworld.co.kr/insider/238829
  • https://yozm.wishket.com/magazine/detail/1331/
  • https://www.bzpp.co.kr/viewplus/viewplus/ST170328A00001
  • https://www.2e.co.kr/news/articleView.html?idxno=207765
  • https://giljae.com/2022/08/08/기술-부채의-유형과-관리-방법.html

[출처] https://tech.hancom.com/2023-06-27-technical-debt/

 
한컴테크한컴테크를 통해 한컴의 기술을 공유합니다. 한컴의 프로그래밍, 프레임워크, 라이브러리 및 도구 등 다양한 기술을 만나보세요. 한컴 개발자들의 다양한 지식을 회사라는 울타리를 넘어 여러분과 공유합니다. 한컴이 제공하는 기술블로그에서 새로운 아이디어와 도전을 마주하고, 개발자가 꿈꾸는 미래를 실현하세요.

tech.hancom.com

 
 
 

 

Loading

3 1월 2025

[알아봅시다] 세상에서 가장 재미있는 과학 시상식…2024 이그노벨상

[알아봅시다] 세상에서 가장 재미있는 과학 시상식…2024 이그노벨상

세상에서 가장 재미있는 과학 시상식…2024 이그노벨상

입력
2024 Ig Nobel 제공

2024 Ig Nobel 제공

● 드디어 돌아왔다! 이그노벨상 현장 시상식

“무엇보다 안전이 중요합니다. 비상구 위치를 확인하고 당신이 아이가 아니라면 다른 사람 위에 앉지 마세요. 오리에게 먹이를 주거나 오리를 쫓아다니거나 오리를 먹지 마세요. 자 그럼 이제 34번째 이그노벨 시상식을 시작하겠습니다.”

9월 12일 미국 매사추세츠공대의 한 강의실에서 키이스 뮬러 박사가 34번째 이그노벨 시상식 개최를 알렸습니다. 뮬러는 2003년에 죽은 청둥오리 연구로 이그노벨 생물학상을 받은 수상자예요. 이그노벨상은 매년 가을 노벨상 발표 2주전에 열리는 특별한 시상식으로 미국 유머과학잡지 ‘기발한 연구 회보’에서 만들었습니다.

카이스 뮬러 박사. 2024 Ig Nobel 제공

카이스 뮬러 박사. 2024 Ig Nobel 제공

이그노벨상은 매년 사람들을 웃게 하고 그다음에 생각하게 만드는 연구를 선정해 상을 줍니다. 이그노벨상의 창시자인 마크 에이브러햄스는 위대한 연구도 처음에는 무시당하거나 우습게 여겨졌던 경우가 있다는 사실에 주목했어요.

실제로 안드레 가임 영국 맨체스터대 교수는 2000년에 이그노벨상을 받은 뒤 2010년에 노벨물리학상을 받았습니다. 이그노벨상은 개구리 공중부양 연구로, 노벨상은 그래핀 연구로 받은 거긴 하지만요.

노벨과 이그노벨의 다른점. 어린이과학동아 제공

노벨과 이그노벨의 다른점. 어린이과학동아 제공

이그노벨 시상식은 매년 주제를 정해서 진행됩니다. 올해 시상식 주제는 머피의 법칙이었어요. 머피의 법칙은 ‘잘못될 만한 일이 있다면 그 일은 반드시 잘못된다’는 뜻의 심리학 용어입니다. 이전 수상자들이 24초 동안 머피의 법칙과 관련된 개념을 설명한 뒤 딱 7개의 단어로 요약하는 ’24/7’ 강연을 진행했어요. 24초를 넘기면 가차없이 말을 끊어 웃음을 자아냈습니다.

2024 이그노벨 트로피 - 상금(약 530원)과 함께 전달된 트로피. 머피의 법칙과 관련있을 수도 있는 물건이 든 투명한 상자다. 열리지는 않는다. 2024 Ig Nobel 제공

2024 이그노벨 트로피 – 상금(약 530원)과 함께 전달된 트로피. 머피의 법칙과 관련있을 수도 있는 물건이 든 투명한 상자다. 열리지는 않는다. 2024 Ig Nobel 제공

또 올해의 트로피는 ‘머피의 법칙과 관련이 있을 수도 있는’ 물건이 담긴 플라스틱 상자였는데 누군가 시상 후 무대에 놓고 가버리는 바람에 진행자가 범인찾기에 나서기도 했습니다. 상품이 마음에 안 들어도 피할 수는 없었답니다.

죽은 송어보다 살아있는 송어가 더 많이 움직인다는 내용의 물리학상, 부작용이 심한 가짜약이 부작용이 없는 가짜약보다 효과적이라는 내용의 의학상 등 기발한 연구로 가득했던 2024 이그노벨상 수상 연구들을 지금부터 소개합니다.

○ 2024 이그노벨상 통계학상. 동전 350757번 던지고 알아낸 것은?

● 몸으로 확인한 동전 던지기 가설

동전을 던져 앞면이 나올 확률은 얼마일까요. 미국의 수학자 디아코니스가 세운 가설에 따르면 동전이 시작 면과 같은 면으로 떨어질 확률은 다른 면으로 떨어질 확률보다 약간 높아요. 하지만 이 가설이 아직 증명되지는 않았습니다.

프란티셰크 바르토시 네덜란드 암스테르담대 심리학적방법론 박사과정생은 직접 동전을 수십만 번 던져서 가설을 확인하기로 했어요. 충분한 데이터를 모으기 위해 바르토시는 친구들을 모아 동전 던지기 마라톤을 여러 차례 열었습니다.

총 48명이 참여해 81일 동안 650시간 동전 던지기를 한 결과, 처음 위로 향했던 면이 1% 정도 더 많이 나온다는 걸 알아냈다. 2024 Ig Nobel, Frantisek Bartos 제공

총 48명이 참여해 81일 동안 650시간 동전 던지기를 한 결과, 처음 위로 향했던 면이 1% 정도 더 많이 나온다는 걸 알아냈다. 2024 Ig Nobel, Frantisek Bartos 제공

48명이 35만757번 동전을 던진 결과 처음 면과 같은 면이 나올 확률은 50.8%였습니다. 현실에서 동전을 던질 때 앞면이나 뒷면이 나올 확률은 완전히 무작위하지 않고 처음 보였던 면이 다시 나오는 경우가 조금 더 자주 있는 거예요.

연구팀은 공중에 던진 동전이 완벽하게 돌지 않고 약간 비틀리면서 돌아서 이론적인 확률에 딱 떨어지지 않는 것으로 추정했습니다. 바르토시는 “이 연구가 일상에 특별히 변화를 불러오진 않을 것”이라면서도 “미세한 물리 법칙이 우리에게 영향을 미친다는사실을 보여준다”고 말했습니다.

○ 2024 이그노벨상 해부학상. 가마 방향은 태풍의 영향을 받을 수도 있지만, 아마 아닐 것이다” – 로만 콘사리

사람의 정수리를 보면 머리카락이 양쪽으로 나뉘는 지점이 있는데 이를 ‘가마’라고 합니다. 로만 콘사리 프랑스 파리시립대 의대 교수팀의 연구 결과에 따르면 북반구 사람들의 가마는 시계 방향으로 남반구 사람들의 가마 방향은 반시계 방향으로 회전하는 경향이 있습니다.

콘사리는 사람들의 가마 방향이 다른 이유에 태풍과 같은 환경적 요인이 있을 수도 있다고 설명하다가 이렇게 덧붙였어요. “하지만 사실 그럴 가능성은 거의 없습니다.” 도대체 무슨 의미일까요.

2024 Ig Nobel 제공

2024 Ig Nobel 제공

Q. 수상 소식을 듣고 기분이 어떠셨나요.

“팀원들이 많이 생각났어요. 이 연구를 하는 동안 병원의 동료들이 우리 팀을 많이 놀렸거든요. 그런데 이렇게 인정받아 무척 자랑스러웠죠.”

Q. 왜 사람의 가마 방향을 연구하게 됐나요.

“환자의 머리를 수술하면서 가마를 자주 봐요.몇몇 유전 질환은 머리카락의 방향이랑 관련이 있거든요. 그런데 어느 날 동료인 윌렘스 박사의 쌍둥이 딸들의 가마가 같은 방향인 것을 보고 가마 방향이 유전적인 영향을 받는지 환경적 영향을 받는지 궁금해졌어요.”

가마 연구자. Roman Khonsari 제공

가마 연구자. Roman Khonsari 제공

Q.”태풍이 가마 방향과 관련있을 수도 있지만 아마 아닐 것”이라고 하신 이유는 뭔가요.

“태풍의 방향은 지구 자전에 영향을 받아요. 물체가 회전할 때 작용하는 힘을 ‘코리올리힘’이라고 하는데 지구가 자전하면서 생긴 코리올리힘이 바람이나 해류의 방향을 결정하죠. 저희는 남반구와 북반구 사람들의 가마 방향이 다른 이유에 환경적 요인이 있을 수 있다고 짐작했어요.

하지만 코리올리힘은 대규모 환경에서 작동하는 것이라 세포 수준의 사건에는 거의 영향을 미치지 않아요. 그러니까 이 가설이 맞을 가능성은 거의 없죠. 하지만 모든 발견에는 고유한 가치가 있답니다.”

○ 2024 이그노벨상 화학상. “술취한 벌레보다 맨정신인 벌레가 빠르다” – 앙투안 드블레

앙투안 드블레 네덜란드 암스테르담대 물리학과 교수팀은 술이 생물의 움직임에 미치는 영향을 알아내기 위해 독특한 실험을 설계했습니다. 술에 취한 벌레와 맨정신인 벌레에게 달리기를 시킨 결과 맨정신인 벌레가 훨씬 빨랐어요. 연구팀은 술취한 벌레의 활동성이 맨정신인 벌레보다 떨어진다고 설명했습니다.

술 취한 벌레 경주를 실험하는 모습. 2024 Ig Nobel, Antoine Deblais 제공

술 취한 벌레 경주를 실험하는 모습. 2024 Ig Nobel, Antoine Deblais 제공

Q. 이 연구 결과엔 어떤 의미가 있을까요.

“친구들과 경주한다고 생각해 보세요. 어떤 친구는 빨리 뛰고, 또 어떤 친구는 천천히 걸어요. 이 연구에서 벌레들은 달리기 선수들이에요. 우리는 벌레들을 술에 취하게 한 뒤 그들이 어떻게 움직이는지를 관찰했어요.

이를 통해 우리는 스스로 움직일 수 있는 것들이 어떻게 행동하는지 또 이런 움직임이 자연에서 어떻게 적용되는지에 대한 아이디어를 얻었어요. 물고기 떼나 새 떼가 어떻게 함께 움직이는지 이해하는 데도 쓰일 수 있죠. 그래서 과학적으로 아주 중요한 연구입니다.”

Q. 이그노벨상은 과학자에게 어떤 상인가요.

“이그노벨상은 과학의 창의성을 기념하는 상이에요. 연구가 재미있을 수 있다는 걸 상기시켜 주고 과학이 모두에게 열려 있다는 점을 다시 한번 생각하게 해요. 때로는 웃을 수 있는 연구가 중요한 발견으로 이어질 수도 있다는 사실을 보여주기도 합니다.”

Q. 이그노벨상을 꿈꾸는 어린이들에게 조언을 해주신다면.

“과학이 누구에게나 열려있다는 사실을 기억하세요. 여러분이 어리든 대학에 다니든 말든 상관없어요. 우리 연구팀의 테스는 23살 학생인데 집에서 대부분의 실험을 했어요. 항상 호기심을 유지하고 엉뚱해 보이는 질문도 두려워하지 마세요. 계속해서 실험하고 과학을 즐기다 보면 여러분의 실험이 이그노벨상을 받을 날이 올지도 몰라요.”

관련기사
어린이과학동아 11월 1일, 2024 이그노벨상. 세상에서 가장 재미있는 과학 시상식

Loading

29 12월 2024

“돈 너무 많이 든다”오픈AI, 지배구조전면 개편 하기로 – 오픈AI, 결국 투자 친화적 기업으로 전환…지배 구조 바꾼다

“돈 너무 많이 든다”오픈AI, 지배구조전면 개편 하기로

– 오픈AI, 결국 투자 친화적 기업으로 전환…지배 구조 바꾼다

오픈AI, 결국 투자 친화적 기업으로 전환…지배 구조 바꾼다

01. VPDXYJO57JHMRN6WDYUQS2VWTQ.png
 
지난 5월 미국 시애틀에서 열린 마이크로소프트의 연례 개발자 회의 ‘빌드’에서 연설하는 샘 올트먼 오픈AI 최고경영자. /AFP 연합뉴스

세계에 생성 인공지능(AI) 열풍을 불러일으킨 챗GPT 개발사 오픈AI가 수익성을 강화하는 방향으로 지배 구조를 전격 개편한다. 오픈AI는 “상상보다 더 많은 자본을 모으는 것”을 개편 이유로 들었다.

27일 오픈AI는 자사 블로그를 통해 비영리 이사회의 통제를 받는 기존의 영리 자회사 법인을 보통 주식(ordinary shares of stock)을 보유한 공익법인(Public Benefit Corporation, PBC)으로 전환하는 방안을 검토하고 있다고 밝혔다. 앞서 오픈AI는 ‘안전한 AI’를 목표로 내걸고 2015년 비영리법인으로 시작했다.

오픈AI는 지배 구조 개편이 필요한 이유로 ‘자금 조달’을 들었다. 오픈AI는 “주요 기업들이 현재 AI 개발에 수천억 달러를 투자하고 있는 상황은 오픈AI가 사명을 계속 추구하기 위해 실제로 무엇이 필요한지를 보여준다”며 “우리는 다시 한번 상상했던 것보다 더 많은 자본을 조달해야 한다. (지배 구조 개편을 통해) 경쟁사들처럼 필요한 자본을 조달할 수 있게 될 것”이라고 밝혔다.

02. BOA3GNBLYRECPNAAPGOH4QEYRI.png
그래픽=김하경

현재 오픈AI는 복잡한 구조를 갖고 있다. 2015년 설립된 오픈AI는 비영리법인으로 시작해 이사회의 통제를 받고 있다. 하지만 AI 모델을 훈련하기 위해 대규모 자금이 필요하자 2019년 손자회사로 ‘오픈AI 글로벌’이라는 영리법인을 설립했다. 실제 AI 모델을 개발하고 사업화를 담당하는 회사다.

명목은 ‘영리법인’이지만 오픈AI 글로벌은 ‘이익제한기업(Capped profit company)’이라는 독특한 구조를 갖고 있다. 주요 의사 결정은 모회사인 ‘오픈AI 지주회사’가 내리고 수익은 원금의 100배로 제한돼 있다. 상한선을 초과하는 이익은 비영리법인에 귀속돼 오픈AI가 지향하는 인류 전체의 이익을 위해 사용된다.

오픈AI은 이같은 수익 제한 원칙이 투자금을 제한할 수 있다고 보는 것으로 알려졌다. 실제 지난 10월 오픈AI는 66억 달러(약 9조 7416억원) 규모의 투자를 유치했는데 당시 투자자들은 오픈AI에 2년 이내에 회사가 현재의 수익 제한을 풀지 못하면 자금을 회수할 수 있다는 조건을 내건 것으로 알려졌다.

이 때문에 오픈AI는 ‘투자 친화적’인 기업으로 전환을 위해 현재의 영리 법인을 보통 주식을 보유한 PBC로 전환한다는 계획이다. PBC는 사회에 공헌하는 목표를 갖고 있으면서도 이익을 추구할 수 있는 형태의 구조다. 오픈AI의 대항마로 평가받는 AI 스타트업 앤스로픽과 일론 머스크 테슬라 최고경영자(CEO)가 소유한 AI 기업 xAI도 이와 유사한 구조라고 로이터 통신은 전했다.

오픈AI는 “(개편을 통해) 상업적 운영을 추진할 수 있다”며 “그러면서도 비영리 부문을 위해 직원을 별도로 고용하고 이 부문이 의료, 교육, 과학 분야에서 자선 활동을 맡을 수 있게 하겠다”고 밝혔다.

다만 오픈AI의 이같은 계획이 순조롭게 이뤄질지는 미지수다. 오픈AI의 공동창립자이자 현재는 샘 올트먼 오픈AI CEO와 대립각을 세우고 있는 머스크가 앞장서서 이를 반대하고 있기 때문이다. 그는 지난달 29일 캘리포니아 북부 지방법원에 오픈AI 영리법인 전환을 막아달라며 가처분 신청서를 제출했다. 머스크 CEO는 “(오픈AI가 초래할 위협을 막기 위해선) 오픈AI의 비영리적 성격을 보존하게 하는 가처분 명령이 유일한 구체책”이라고 주장했다.

여기에 페이스북 모회사 메타의 마크 저커버그 CEO도 가세하고 나섰다. 메타는 지난 12일 캘리포니아주 법무장관에게 보낸 서한에서 “자선단체로서 비영리 혜택을 누린 뒤 영리 목적으로 전환하는 것은 불법”이라며 오픈AI의 영리법인 전환을 저지해줄 것을 요청했다.

03. https___author-service-images-prod-us-east-1.publishing.aws.arc.pub_chosun_5cb5aa01-8c49-4412-a702-6debe77b0fd3.png
편집국 테크부 기자

[출처] https://www.chosun.com/economy/tech_it/2024/12/28/B4NFVKBRYVETZH4PEPRUMSIAOI/

Loading

28 12월 2024

[ 一日30分 인생승리의 학습법] 고가용성(High Availability) 시스템을 위한 5가지 전략

[ 一日30分 인생승리의 학습법] 고가용성(High Availability) 시스템을 위한 5가지 전략

고가용성(High Availability) 시스템을 위한 5가지 전략

5가지 전략으로 마스터하는 MSA의 고가용성 실전 가이드

Introduction

고가용성, 보통 HA(High Availability)라고 많이들 부를 텐데요. 비즈니스가 잘 되기 시작하면서 대용량 트래픽을 뒷받침할 요소들을 넣다보면 가용성에 대한 고민이 깊어질 수밖에 없어집니다. 특히 마이크로서비스 아키텍처(MSA)를 설계할 때 많은 소프트웨어 엔지니어들이 고민하는 부분이 바로 이 고가용성인데요. 서비스 간의 느슨한 결합과 독립적인 배포라는 MSA의 장점을 살리면서도 시스템 전체의 안정성과 가용성을 확보하는 것이 쉽지 않은 과제이기 때문입니다. 이번에 소개해 드릴 글은 System Design Codex의 “5 Strategies for High-Availability Systems”라는 제목의 글로, 고가용성 시스템을 설계하는 데 도움이 될 만한 5가지 핵심 전략을 다루고 있습니다.


가용성(Availability)은 사용자 경험에 있어 매우 중요합니다. 매 분마다 비행기가 이륙하고 착륙하는 바쁜 공항을 운영하고 있다고 가정해봅시다. 우리가 가장 원하지 않는 것은 관제탑이 고장 나서 혼란과 지연이 일어나는 것일 겁니다.

이와 비슷하게, 24시간 온라인 서비스가 제공되는 시대에 고가용성은 일종의 성배와도 같게 되었습니다. 여러분이 주말에 친구 및 가족과 하이킹을 갈 때조차도 시스템은 항상 작동하고 운영되도록 보장해야 합니다.

그렇다면, 이를 어떻게 해야 할까요? 당연히 여러분은 휴가나 가족과의 시간을 망치고 싶지 않겠죠. 그러니 시스템의 고가용성을 확보하기 위한 몇 가지 전략을 적용해야 합니다.

아래에 소개한 5가지 중요한 전략을 살펴보겠습니다.

1. 로드 밸런싱(Load Balancing, LB)

다시 공항 예시로 돌아가보죠. 우리의 시스템이 바쁜 공항이고, 들어오는 리퀘스트가 착륙을 요청하는 비행기와 같다고 가정해 봅시다. 그런데 활주로가 단 2개밖에 없다면 어떨까요?

바로 이때 관제사가 해야 할 일은 비행기를 다른 활주로로 유도하고, 각 활주로의 부하를 관리하며, 혼잡을 야기하지 않으면서 교통량을 계속 처리하는 것일 겁니다.

로드 밸런서는 곧 애플리케이션의 항공교통관제사와 같습니다. 로드 밸런서는 CPU 사용률, 메모리 사용량, 응답 시간 등 여러 요소를 분석하여 요청을 가장 가용성이 높고 응답성이 좋은 서버로 라우팅합니다. 부하를 분산시킴으로써 단일 서버가 과부하되는 것을 방지하여 피크 부하 시에도 원활한 운영 흐름을 보장합니다.

01 image.png

2. 격리를 통한 데이터 복제(Data Redundancy with Isolation)

만약 특정 노선의 비행기에 문제가 생겨 운항할 수 없게 되면 어떻게 될까요? 탁월한 고객 서비스를 제공하는 효율적인 항공사를 운영하고 있다면, 승객들을 목적지까지 데려다 줄 예비 항공기를 갖추고 있을 것입니다.

애플리케이션의 데이터 복제도 마찬가지입니다. 여기서 데이터 복제(Redundancy, 혹은 Replication)란, 여러 데이터 센터나 클라우드 리전(region)에 걸쳐 데이터의 복사본을 여러 개 저장하는 것을 포함합니다.이렇게 하면 한 데이터 센터에서 장애나 중단이 발생하더라도 사용자는 다른 위치에서 데이터에 계속 엑세스할 수 있습니다.

데이터베이스 복제, 객체 스토리지, 분산 파일 시스템은 바로 데이터 복제를 구현하는 데 일반적으로 사용되는 기술입니다.

02 image.png

3. 장애 조치(Failover)

스카이다이빙을 하러 갔다고 해봅시다. 땅으로 떨어지는 와중에 등에 매달린 유일한 낙하산에 결함이 있다는 것을 깨달은 적이 있나요? (아마도 그렇지 않겠지만) 만약 그런 상황이라면 쉽게 펼칠 수 있는 보조 낙하산이 있기를 간절히 바랄 테죠. 시스템 설계의 맥락에서 장애 조치(Failover)는 그 낙하산과 같습니다.

장애 조치란 주요 구성 요소가 실패할 때, 시스템이나 서비스를 주요 구성 요소에서 대기 또는 백업 구성 요소로 자동 전환하는 것을 의미합니다. 이는 네트워크 트래픽을 백업 서버로 전송하거나, 보조 데이터베이스로 전환하거나, 사용자를 미러링된 애플리케이션 인스턴스로 리디렉션하는 것을 포함할 수 있습니다.

장애 조치 메커니즘은 일반적으로 로드 밸런서, 애플리케이션 서버 및 데이터베이스 관리 시스템에 내장되어 있어 사용자의 가동 중단 시간을 최소화하면서 신속한 전환을 보장합니다.

03.png

4. 오토 스케일링(Auto scailing)

고가용성 관점에서 오토 스케일링은 전투 시나리오의 요구 사항에 따라 추진력을 조정할 수 있는 강력한 전투기에 비유할 수 있습니다.

시스템 설계에서 이 전략은 현재 부하 및 사용 패턴에 따라 컴퓨팅 자원(가상 머신, 컨테이너 또는 서버리스 기능 등)을 동적으로 할당하거나 할당 해제하는 것을 뜻합니다.

오토 스케일링은 CPU 사용률, 메모리 사용량 또는 들어오는 요청 비율과 같은 메트릭에 의해 트리거될 수 있으며, 종종 클라우드 플랫폼 서비스 또는 맞춤형 스케일링 알고리즘을 사용하여 구현됩니다.

사용자 트래픽이 변동할 때, 오토 스케일링은 시스템이 부하를 처리하는 데 필요한 용량을 항상 확보해 성능 저하나 중단을 방지합니다.

04 image.png

5. Rate Limiting(호출 제한)

매우 바쁜 공항의 활주로가 15분마다 단 두 번의 착륙만 처리할 수 있다고 상상해 보세요. 더 많은 착륙을 시도하면 사고가 발생해 활주로를 완전히 망가뜨리게 될 것입니다. 승객의 생명을 위험에 빠뜨리는 것은 말할 것도 없죠. 이 경우 관제사는 15분마다 2대의 비행기만 착륙할 수 있도록 들어오는 비행기를 조정함으로써 호출 제한기(Rate Limiter) 역할도 합니다.

사용자 요청과 관련하여 애플리케이션에도 동일한 개념이 적용됩니다. 이 전략은 초당 또는 분당 고정된 수의 요청과 같이 주어진 시간 프레임 내에서 사용자 또는 시스템이 요청할 수 있는 수에 제한을 두는 것을 포함합니다.

호출 제한은 로드 밸런서, 웹 서버 또는 애플리케이션 수준과 같은 다양한 계층에서 구현될 수 있습니다. 단일 사용자 또는 시스템이 모든 리소스를 사용하는 것을 방지함으로써 호출 제한은 모든 사용자에게 공정하고 안정적인 서비스를 보장하고 갑작스러운 트래픽 급증으로 인해 시스템이 과부하되는 것을 방지합니다.

05 image.png

자, 여러분들은 애플리케이션의 가용성을 향상시키기 위해 다른 어떤 전략을 사용해 보셨나요? 댓글을 남겨주세요 🙂

Top 1% 개발자로 거듭나는 확실한 처방전, 데브필이었습니다.

06 woonys__youtube_profile_image_the_channel_name_is_DevPill_softw_a07a80be-3468-4941-a672-9146f0f59b5b.png
 [출처] https://maily.so/devpill/posts/8do7x52ezgq

Loading

22 12월 2024

[chatGPT] 인간에 가까워진 추론력…오픈AI, 신모델 ‘o3’ 공개

[chatGPT] 인간에 가까워진 추론력…오픈AI, 신모델 ‘o3’ 공개

인간에 가까워진 추론력…오픈AI, 신모델 ‘o3’ 공개

입력
‘o1’ 업그레이드···내년 출시

[서울경제]

오픈AI가 한층 향상된 고급 추론 인공지능(AI) 모델 ‘o3’를 20일(현지 시간) 공개했다.

o3는 9월 출시된 ‘o1’의 업그레이드 버전이다. 오픈AI는 영국 스마트폰 브랜드 ‘O2’에 대한 존중 차원에서 모델명에서 ‘o2’를 건너뛰고 ‘o3’으로 정했다. 샘 올트먼 오픈AI 최고경영자(CEO)는 “내년 1월 말 소형 모델인 ‘o3 미니’를 먼저 출시하고 곧이어 o3를 내놓을 예정”이라고 말했다.

추론 능력에 초점을 둔 o3는 o1과 마찬가지로 응답하기 전에 먼저 생각하도록 훈련됐다. 작업을 추론하고 계획할 수 있으며 오랜 기간에 걸친 작업을 해나가는 데 있어 해결책을 찾는 데 도움이 된다고 오픈AI는 설명했다. o1과 마찬가지로 o3도 응답하는 데 몇 초∼몇 분 더 걸리지만 물리학·과학·수학과 같은 분야에서 더 신뢰할 수 있다고 오픈AI는 강조했다. 또 특정 조건에서는 o3가 범용인공지능(AGI)에 가까워졌다고 덧붙였다.

오픈AI는 o3가 벤치마크(성능 측정)에서 다른 모델을 압도한다고 강조했다. 특히 올해 미국 초청 수학 시험(AIME)에서는 단 한 문제만 틀려 96.7%의 점수를 기록했고, 대학원 수준의 생물학, 물리학, 화학 문제 테스트(GPQA 다이아몬드)에서는 87.7%의 성과를 거뒀다고 오픈AI는 설명했다.

Loading

19 12월 2024

[wordpress, 워드프레스] WordPress 페이지또는 글에 별도 CSS와 JavaScript 추가하기

[wordpress, 워드프레스] WordPress 페이지또는 글에 별도 CSS와 JavaScript 추가하기

WordPress 페이지또는 글에 별도 CSS와 JavaScript 추가하기

WordPress 페이지또는 글에 별도 CSS와 JavaScript 추가하기

안녕하세요
RWDB 입니다~!!!

오늘 소개해드릴 내용은 WordPress 관련 내용인데요

WordPress에서 각 페이지나 글 등록시 해당 페이지나 글에만 적용되고 싶은 CSS, JavaScript 꼭 있잖아요??
그걸 쉽게~~ 아주 쉽게 하실 수 있게 하는 내용 입니다.

※ 다음에 소개하는 방법 functions.php을 사용하기 때문에 테마에 functions.php없는 경우 작성하십시오.

CSS를 추가 할 수 있도록

CSS를 추가 할 수 있도록하려면 아래 내용을 functions.php에 추가해주시면 됩니다.

functions.php

//Custom CSS Widget
add_action( 'admin_menu', 'custom_css_hooks' );
add_action( 'save_post', 'save_custom_css' );
add_action( 'wp_head','insert_custom_css' );
function custom_css_hooks() {
  add_meta_box( 'custom_css', 'Custom CSS', 'custom_css_input', 'post', 'normal', 'high' );
  add_meta_box( 'custom_css', 'Custom CSS', 'custom_css_input', 'page', 'normal', 'high' );
}
function custom_css_input() {
  global $post;
  echo '<input type="hidden" name="custom_css_noncename" id="custom_css_noncename" value="'.wp_create_nonce('custom-css').'" />';
  echo '<textarea name="custom_css" id="custom_css" rows="5" cols="30" style="width:100%;">'.get_post_meta($post->ID,'_custom_css',true).'</textarea>';
}
function save_custom_css($post_id) {
  if ( !wp_verify_nonce( $_POST['custom_css_noncename'], 'custom-css' ) ) return $post_id;
  if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE) return $post_id;
  $custom_css = $_POST['custom_css'];
  update_post_meta( $post_id, '_custom_css', $custom_css );
}
function insert_custom_css() {
  if ( is_page() || is_single() ) {
    if ( have_posts() ) : while ( have_posts() ) : the_post();
      echo '<style type="text/css">' . get_post_meta(get_the_ID(), '_custom_css', true) . '</style>';
    endwhile; endif;
    rewind_posts();
  }
}

JavaScript를 추가 할 수 있도록

JavaScript를 추가 할 수 있도록하려면 아래 내용을 functions.php에 추가해주시면 끝!

functions.php

//Custom JS Widget
add_action( 'admin_menu', 'custom_js_hooks' );
add_action( 'save_post', 'save_custom_js' );
add_action( 'wp_head','insert_custom_js' );
function custom_js_hooks() {
  add_meta_box( 'custom_js', 'Custom JS', 'custom_js_input', 'post', 'normal', 'high' );
  add_meta_box( 'custom_js', 'Custom JS', 'custom_js_input', 'page', 'normal', 'high' );
}
function custom_js_input() {
  global $post;
  echo '<input type="hidden" name="custom_js_noncename" id="custom_js_noncename" value="'.wp_create_nonce('custom-js').'" />';
  echo '<textarea name="custom_js" id="custom_js" rows="5" cols="30" style="width:100%;">'.get_post_meta($post->ID,'_custom_js',true).'</textarea>';
}
function save_custom_js($post_id) {
  if (!wp_verify_nonce($_POST['custom_js_noncename'], 'custom-js')) return $post_id;
  if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return $post_id;
  $custom_js = $_POST['custom_js'];
  update_post_meta($post_id, '_custom_js', $custom_js);
}
function insert_custom_js() {
  if ( is_page() || is_single() ) {
    if ( have_posts() ) : while ( have_posts() ) : the_post();
      echo '<script type="text/javascript">' . get_post_meta(get_the_ID(), '_custom_js', true) . '</script>';
    endwhile; endif;
    rewind_posts();
  }
}

CSS와 JavaScript를 모두 사용하시려면 둘다 넣으시면 되겠죠?? ㅋ
functions.php 파일을 저장후 편집 페이지를 확인해보시면 아래 이미지와 같이 추가된걸
확인 하실 수 있습니다. 

Custom CSS Write Panel

 [출처] http://rwdb.kr/wordpress-page-css-javascript/

Loading