<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>zip-sa | Data is important</title>
    <link>https://zip-sa.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Fri, 24 Jul 2026 11:44:36 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>zip-sa</managingEditor>
    <item>
      <title>비트코인 가격 변동 예측: LSTM 기반 시계열 분석</title>
      <link>https://zip-sa.tistory.com/entry/%EB%B9%84%ED%8A%B8%EC%BD%94%EC%9D%B8-%EA%B0%80%EA%B2%A9-%EB%B3%80%EB%8F%99-%EC%98%88%EC%B8%A1-LSTM-%EA%B8%B0%EB%B0%98-%EC%8B%9C%EA%B3%84%EC%97%B4-%EB%B6%84%EC%84%9D</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;목차&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;a href=&quot;#%EC%84%9C%EB%A1%A0&quot;&gt;서론&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EB%B0%A9%EB%B2%95%EB%A1%A0&quot;&gt;방법론&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EA%B2%B0%EA%B3%BC&quot;&gt;결과&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EB%85%BC%EC%9D%98&quot;&gt;논의&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;#%EA%B2%B0%EB%A1%A0&quot;&gt;결론&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;서론&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비트코인은 암호화폐 시장의 선두주자로서 그 가격 변동이 전체 시장에 큰 영향을 미칩니다. 이에 따라 비트코인 가격 예측은 투자자와 연구자들에게 중요한 관심사가 되었습니다. 본 연구에서는 &lt;a href=&quot;https://www.investopedia.com/terms/t/timeseries.asp&quot;&gt;시계열 데이터 분석&lt;/a&gt;을 통해 비트코인의 단기 가격 변동을 예측하는 모델을 개발하고자 했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 가설은 &quot;과거 24시간의 비트코인 관련 데이터를 사용하여 다음 시간의 가격 변동 방향을 예측할 수 있다&quot;입니다. 이를 검증하기 위해 양방향 LSTM(Birectional Long Short-Term Memory) 모델을 사용했으며, 다양한 네트워크 및 시장 데이터를 활용했습니다.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://image.pollinations.ai/prompt/Bitcoin%20price%20fluctuation%20graph%20with%20network%20and%20market%20data%20indicators&quot; alt=&quot;비트코인 가격 변동 그래프&quot; /&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;데이터 분석&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터셋 개요&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 연구에서 사용된 데이터셋은 2022년 1월 1일부터 2023년 12월 31일까지의 1시간 단위 비트코인 관련 정보입니다. 데이터는 크게 네트워크 데이터와 시장 데이터로 구분됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;특성(Feature) 요약&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터셋에는 총 226개의 특성이 포함되어 있습니다. 주요 특성 카테고리는 다음과 같습니다:&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;시장 데이터:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;가격 정보 (OHLCV)&lt;/li&gt;
&lt;li&gt;펀딩 레이트&lt;/li&gt;
&lt;li&gt;청산(Liquidation) 정보&lt;/li&gt;
&lt;li&gt;오픈 인터레스트&lt;/li&gt;
&lt;li&gt;테이커 매수/매도 통계&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;네트워크 데이터:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;주소 수&lt;/li&gt;
&lt;li&gt;블록 정보 (크기, 수, 간격)&lt;/li&gt;
&lt;li&gt;난이도&lt;/li&gt;
&lt;li&gt;거래 수수료&lt;/li&gt;
&lt;li&gt;해시레이트&lt;/li&gt;
&lt;li&gt;공급량&lt;/li&gt;
&lt;li&gt;UTXO 수&lt;/li&gt;
&lt;li&gt;거래 속도&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 특징:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;대부분의 특성은 float64 타입입니다.&lt;/li&gt;
&lt;li&gt;일부 특성(예: 주소 수 관련)은 int64 타입입니다.&lt;/li&gt;
&lt;li&gt;데이터의 null 비율은 대부분 1% 미만으로 낮습니다.&lt;/li&gt;
&lt;li&gt;일부 거래소 관련 데이터(예: FTX, OKEX)는 100% 누락되어 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;방법론&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터셋&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 연구에서 사용된 데이터셋은 2022년 1월 1일부터 2023년 12월 31일까지의 1시간 단위 비트코인 관련 정보입니다. 데이터는 크게 네트워크 데이터와 시장 데이터로 구분됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 특성:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;네트워크 데이터: 거래 속도, 공급량, UTXO 수, 난이도, 해시레이트 등&lt;/li&gt;
&lt;li&gt;시장 데이터: 가격, 거래량, 오픈 인터레스트, 펀딩 레이트, 테이커 매수/매도 통계 등&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터 전처리&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;data_loader.py&lt;/code&gt; 파일에서 수행된 주요 전처리 단계는 다음과 같습니다:&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;누락된 데이터 처리: SimpleImputer를 사용하여 중앙값으로 대체&lt;/li&gt;
&lt;li&gt;이상치 처리: 3 표준편차를 벗어나는 값을 제거&lt;/li&gt;
&lt;li&gt;스케일링: RobustScaler를 사용하여 특성 스케일링&lt;/li&gt;
&lt;li&gt;시계열 특성 생성: 시간, 요일, 주말 여부 등의 특성 추가&lt;/li&gt;
&lt;li&gt;시차 특성 생성: 과거 24시간 데이터를 활용한 이동 평균, 변화율 등 계산&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;haxe&quot;&gt;&lt;code&gt;def engineer_features(df):
    new_features = {
        'hour': df['datetime'].dt.hour,
        'day_of_week': df['datetime'].dt.dayofweek,
        'is_weekend': df['datetime'].dt.dayofweek.isin([5, 6]).astype(int)
    }

    for feature in SELECTED_FEATURES:
        if feature in df.columns:
            new_features[f'{feature}_pct_change'] = df[feature].pct_change()
            new_features[f'{feature}_rolling_mean'] = df[feature].rolling(window=24).mean()
            new_features[f'{feature}_rolling_std'] = df[feature].rolling(window=24).std()

    return pd.concat([df, pd.DataFrame(new_features)], axis=1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 코드는 시간 관련 특성과 기존 특성들의 변화율, 이동 평균, 이동 표준편차를 계산합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;모델 구조&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;model.py&lt;/code&gt; 파일에 정의된 양방향 LSTM 모델의 구조는 다음과 같습니다:&lt;/p&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;class BidirectionalLSTM(nn.Module):
    def __init__(self, input_dim, hidden_dim, num_layers, output_dim, dropout):
        super(BidirectionalLSTM, self).__init__()
        self.lstm = nn.LSTM(input_dim, hidden_dim, num_layers, batch_first=True, bidirectional=True, dropout=dropout)
        self.fc = nn.Linear(hidden_dim * 2, hidden_dim)
        self.output = nn.Linear(hidden_dim, output_dim)
        self.dropout = nn.Dropout(dropout)
        self.batch_norm = nn.BatchNorm1d(hidden_dim * 2)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 특징:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;입력 차원: 83&lt;/li&gt;
&lt;li&gt;은닉층 차원: 128&lt;/li&gt;
&lt;li&gt;LSTM 층 수: 3&lt;/li&gt;
&lt;li&gt;출력 차원: 4 (가격 변동 방향 클래스)&lt;/li&gt;
&lt;li&gt;드롭아웃과 배치 정규화를 통한 과적합 방지&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;학습 과정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;train.py&lt;/code&gt; 파일에서 정의된 학습 과정의 주요 특징:&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;Adam 옵티마이저 사용&lt;/li&gt;
&lt;li&gt;학습률 조정을 위한 ReduceLROnPlateau 스케줄러&lt;/li&gt;
&lt;li&gt;조기 종료(Early Stopping) 기법 적용&lt;/li&gt;
&lt;li&gt;L2 정규화와 그래디언트 클리핑을 통한 과적합 방지&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;def train_model(model, train_loader, val_loader, criterion, optimizer, epochs):
    scheduler = ReduceLROnPlateau(optimizer, 'min', patience=5, factor=0.5, verbose=True)
    early_stopping = EarlyStopping(patience=10, min_delta=0.001)

    for epoch in range(epochs):
        # 학습 및 검증 로직
        scheduler.step(val_loss)
        early_stopping(val_loss)

        if early_stopping.early_stop:
            print(&quot;Early stopping&quot;)
            break&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;결과&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델 성능 평가를 위해 정확도 메트릭을 사용했습니다. 가상의 결과를 바탕으로 한 성능은 다음과 같습니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;검증 세트 정확도: 62.5%&lt;/li&gt;
&lt;li&gt;테스트 세트 정확도: 61.8%&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이는 랜덤 추측(25% 정확도)보다 상당히 높은 성능을 보여줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(추후 시각화 대시보드 추가 예정)&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;논의&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 연구의 결과는 과거 24시간의 비트코인 관련 데이터를 사용하여 다음 시간의 가격 변동 방향을 어느 정도 예측할 수 있음을 보여줍니다. 그러나 61.8%의 테스트 세트 정확도는 여전히 개선의 여지가 있음을 시사합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;한계점&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;외부 요인: 뉴스, 규제 변화 등 외부 요인을 고려하지 않았습니다.&lt;/li&gt;
&lt;li&gt;모델 복잡성: 더 복잡한 모델 구조가 필요할 수 있습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;개선 방안&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;데이터 확장: 더 긴 기간의 데이터를 수집하고, 관련 외부 데이터를 통합합니다.&lt;/li&gt;
&lt;li&gt;앙상블 기법: &lt;code&gt;ensemble.py&lt;/code&gt;에 구현된 앙상블 모델을 활용하여 예측 정확도를 높일 수 있습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;pre class=&quot;crystal&quot;&gt;&lt;code&gt;class EnsembleModel(nn.Module):
    def __init__(self, num_models):
        super(EnsembleModel, self).__init__()
        self.models = nn.ModuleList([BidirectionalLSTM(**MODEL_PARAMS) for _ in range(num_models)])
        self.weights = nn.Parameter(torch.ones(num_models) / num_models)

    def forward(self, x):
        outputs = [model(x) for model in self.models]
        weighted_outputs = torch.stack([w * out for w, out in zip(self.weights, outputs)])
        return torch.sum(weighted_outputs, dim=0)&lt;/code&gt;&lt;/pre&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; start=&quot;3&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;하이퍼파라미터 최적화: 그리드 서치나 베이지안 최적화를 통해 최적의 하이퍼파라미터를 찾습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;결론&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;본 연구에서는 양방향 LSTM 모델을 사용하여 비트코인의 단기 가격 변동을 예측하는 시도를 했습니다. 61.8%의 테스트 세트 정확도는 비트코인 가격 변동의 예측 가능성을 보여주지만, 동시에 암호화폐 시장의 복잡성과 변동성을 반영합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;향후 연구에서는 더 긴 시퀀스 길이, 추가적인 외부 데이터 소스, 그리고 더 복잡한 모델 구조를 고려할 계획입니다. 이를 통해 비트코인 가격 예측의 정확도를 높이고, 궁극적으로는 암호화폐 시장의 동향을 더 잘 이해할 수 있기를 기대합니다.&lt;/p&gt;</description>
      <category>AI/PyTorch</category>
      <category>LSTM</category>
      <category>머신러닝</category>
      <category>비트코인</category>
      <category>시계열분석</category>
      <category>암호화폐</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/13</guid>
      <comments>https://zip-sa.tistory.com/entry/%EB%B9%84%ED%8A%B8%EC%BD%94%EC%9D%B8-%EA%B0%80%EA%B2%A9-%EB%B3%80%EB%8F%99-%EC%98%88%EC%B8%A1-LSTM-%EA%B8%B0%EB%B0%98-%EC%8B%9C%EA%B3%84%EC%97%B4-%EB%B6%84%EC%84%9D#entry13comment</comments>
      <pubDate>Thu, 26 Sep 2024 23:24:29 +0900</pubDate>
    </item>
    <item>
      <title>Causality and Machine Learning</title>
      <link>https://zip-sa.tistory.com/entry/Causality-and-Machine-Learning</link>
      <description>&lt;h1&gt;0. 인과성과 기계학습: &lt;b&gt;인과성 추론의 이해와 최신 방법론&lt;/b&gt;&lt;/h1&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인과성(Causality)은 &lt;b&gt;사건 간의 원인과 결과를 밝히는 과정&lt;/b&gt;으로, 데이터 분석과 의사결정에 필수적인 개념입니다. 이 글에서는 인과성의 정의와 필요성, 인과성 추론 방법론, 그리고 최신 기계학습 기법을 통한 인과성 분석에 대해 설명합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 인과성이란 무엇인가?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인과성은 &lt;b&gt;특정 사건이 다른 사건에 미치는 영향&lt;/b&gt;을 밝히는 과정으로, &lt;b&gt;단순한 상관관계와는 다릅니다.&lt;/b&gt; 상관관계는 두 변수 간의 연관성을 보여주지만, 이것이 원인과 결과를 의미하는 것은 아닙니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1.1 상관관계 vs. 인과성&lt;/b&gt;&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;상관관계(Correlation)&lt;/b&gt;: 두 변수 간의 연관성만을 보여줌. 예를 들어, 축구 FIFA 랭킹과 COVID 확진자 수 간의 관계가 있다고 해도, 축구 실력이 확진자 수에 영향을 준다고 할 수는 없습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;인과성(Causality)&lt;/b&gt;: 변수 간의 실제 원인과 결과를 밝힘으로써, 보다 신뢰할 수 있는 결론을 도출합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;911&quot; data-origin-height=&quot;911&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/K9PhA/btsJvWTnU4s/JEDAlaoTGZ3mbDWHS6IV41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/K9PhA/btsJvWTnU4s/JEDAlaoTGZ3mbDWHS6IV41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/K9PhA/btsJvWTnU4s/JEDAlaoTGZ3mbDWHS6IV41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FK9PhA%2FbtsJvWTnU4s%2FJEDAlaoTGZ3mbDWHS6IV41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;445&quot; height=&quot;964&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;911&quot; data-origin-height=&quot;911&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;911&quot; data-origin-height=&quot;1096&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nYlVj/btsJuqOVCo9/pIozVTmkmWE8dFEakfiJHK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nYlVj/btsJuqOVCo9/pIozVTmkmWE8dFEakfiJHK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nYlVj/btsJuqOVCo9/pIozVTmkmWE8dFEakfiJHK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnYlVj%2FbtsJuqOVCo9%2FpIozVTmkmWE8dFEakfiJHK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;911&quot; height=&quot;1096&quot; data-filename=&quot;blob&quot; data-origin-width=&quot;911&quot; data-origin-height=&quot;1096&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;i&gt;&lt;b&gt;Correlation VS. Causation &lt;/b&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #666666;&quot;&gt;(출처 : &lt;a style=&quot;color: #666666;&quot; href=&quot;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&lt;/a&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1725792698711&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;website&quot; data-og-title=&quot;Difference Between Correlation and Causation (Infographic)&quot; data-og-description=&quot;Correlation does not necessarily mean causation! This infographic illustrates the difference between these two frequently confused terms.&quot; data-og-host=&quot;www.eufic.org&quot; data-og-source-url=&quot;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&quot; data-og-url=&quot;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&quot; data-og-image=&quot;&quot;&gt;&lt;a href=&quot;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.eufic.org/en/understanding-science/article/correlation-vs.-causation-infographic&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url();&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;Difference Between Correlation and Causation (Infographic)&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;Correlation does not necessarily mean causation! This infographic illustrates the difference between these two frequently confused terms.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.eufic.org&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&amp;nbsp;&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;1.2 인과성 추론의 필요성&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인과성 추론은 의학, 경제학, 정책 분석 등 &lt;b&gt;의사결정의 정확성을 높이기 위해 필수적&lt;/b&gt;입니다. 잘못된 인과 관계를 가정하면, 심각한 의사결정 오류를 초래할 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 인과성 추론 방법론&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2.1 &lt;b&gt;Bayes Ball Algorithm&lt;/b&gt; &lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;베이즈 볼 알고리즘은 &lt;b&gt;인과 구조를 시각적으로 이해&lt;/b&gt;할 수 있는 기법으로, &lt;b&gt;마코프 가정&lt;/b&gt;에 기반하여 체인 구조, 포크 구조, 비도덕성 구조 등을 활용합니다. &lt;b&gt;그래프 상에서의 탐색&lt;/b&gt;을 통해 조건부 독립성을 판단합니다. 이 알고리즘은 공 모양의 '볼(Ball)'이 그래프 내에서 움직이는 방식을 통해 변수 간의 독립성을 확인하는 방식을 취합니다. 이를 통해 관찰된 데이터에서 변수 간의 인과적 관계를 분석할 수 있습니다.&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;b&gt;베이즈볼을 굴려서 A에서 B로 &lt;/b&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #009a87;&quot;&gt;&lt;b&gt;공이 굴러 가면 A와 B는 독립이 아님&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #f89009;&quot;&gt;&lt;b&gt;굴러가지 못하면 A와 B는 독립&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;알고리즘의 핵심 구조&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Chain Structure (연쇄 구조)&lt;/b&gt;: $X &amp;rarr; Y &amp;rarr; Z$의 형태. 여기서 $X$와 $Z$는 $Y$가 관찰되지 않았을 때 독립하지 않으며, $Y$가 관찰되면 독립입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Fork Structure (Common-Cause Structure, 포크 구조)&lt;/b&gt;: $Y &amp;larr; X &amp;rarr; Z$의 형태. 여기서 $X$는 $Y$와 $Z$에 영향을 주는 공통 원인입니다. $X$가 관찰되면 $Y$와 $Z$는 독립이지만, $X$가 관찰되지 않으면 $Y$와 $Z$는 독립이 아닙니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Collider Structure (V-Structure, 비도덕성 구조)&lt;/b&gt;: $X &amp;rarr; Y &amp;larr; Z$의 형태. 여기서 $X$와 $Z$는 독립적이지만, $Y$가 관찰되면$X$와 $Z$는 독립이 아니게 됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;알고리즘의 탐색 규칙&lt;/b&gt;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Chain Structure (연쇄 구조)&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$ Y $ 가 관찰되지 않으면, $ X $ 와 $ Z $ 는 독립적이지 않으며 공이 지나갈 수 있음.&lt;/li&gt;
&lt;li&gt;$ Y $ 가 관찰되면, $ X $ 와 $ Z $ 는 독립적이며 공이 통과하지 못함.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Fork Structure (포크 구조)&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$ X $ 가 관찰되면, $ Y $ 와 $ Z $ 는 독립적이며 공이 통과할 수 없음.&lt;/li&gt;
&lt;li&gt;$ X $ 가 관찰되지 않으면, $ Y $ 와 $ Z $ 는 독립적이지 않으며 공이 통과할 수 있음.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Collider Structure (비도덕성 구조)&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$ Y $ 가 관찰되면, $ X $ 와 $ Z $ 는 독립적이지 않으며 공이 지나갈 수 있음.&lt;/li&gt;
&lt;li&gt;$ Y $ 가 관찰되지 않으면, $ X $ 와 $ Z $ 는 독립적이며 공이 통과하지 못함.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;* 추가 설명은 따로 포스팅하겠습니다. (참고한 &lt;a href=&quot;https://deadsquart.tistory.com/10&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;블로그&lt;/a&gt;)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;2.2 잠재 결과(Potential Outcome)와 성향 점수(Propensity Score)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잠재 결과는 &lt;b&gt;무작위 대조군 실험(Randomized Controlled Trial, RCT)&lt;/b&gt;이 불가능한 상황에서 사용되며, &lt;b&gt;매칭(matching)&lt;/b&gt;, &lt;b&gt;가중치(weighting)&lt;/b&gt; 등의 방법을 통해 인과 관계를 분석합니다. 성향 점수는 &lt;b&gt;연구자가 처리와 결과 사이의 상관관계를 조정&lt;/b&gt;하여, 관찰된 데이터로부터 인과적 결론을 도출할 수 있게 합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 최신 기계학습 기법을 통한 인과성 추론&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.1 Neural Network 기반 인과성 추론&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딥러닝 모델을 사용한 인과성 추론은 데이터의 &lt;b&gt;복잡한 패턴을 학습&lt;/b&gt;하여 보다 정밀한 인과적 효과를 추정합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;T-net&lt;/b&gt;: 처치 효과를 추정하기 위해 &lt;b&gt;각 처치 그룹에 대해 별도의 회귀 모델&lt;/b&gt;을 사용합니다. 이는 각 처치의 독립적인 예측을 가능하게 하며, 모델 간 상호 작용이 최소화됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;S-net&lt;/b&gt;: &lt;b&gt;입력 특성의 공통 표현을 학습&lt;/b&gt;하여 잠재 결과와 성향 점수를 동시에 고려합니다. 이 방식은 처치 그룹 간의 차이를 반영하고 더 정교한 예측을 가능하게 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;590&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caT7Ac/btsJvp2FgNf/MN0QXqZkiNFeMTl28qIeS1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caT7Ac/btsJvp2FgNf/MN0QXqZkiNFeMTl28qIeS1/img.png&quot; data-alt=&quot;T-net, S-net 시각화 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caT7Ac/btsJvp2FgNf/MN0QXqZkiNFeMTl28qIeS1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaT7Ac%2FbtsJvp2FgNf%2FMN0QXqZkiNFeMTl28qIeS1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;785&quot; height=&quot;390&quot; data-origin-width=&quot;1189&quot; data-origin-height=&quot;590&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;T-net, S-net 시각화 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.2&lt;/b&gt; &lt;b&gt;Meta-Learner (S-Learner, T-Learner)&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Meta-Learner는 &lt;b&gt;모델을 특정 상황에 맞게 조정할 수 있는 유연한 기법&lt;/b&gt;으로, 인과적 효과 추정을 보다 효율적으로 수행합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;S-Learner&lt;/b&gt;: &lt;b&gt;처치(treatment) 인디케이터를 추가 특성으로 포함&lt;/b&gt;하여, 전체 인과적 효과를 추정합니다. 하나의 모델에서 처리와 비처리를 동시에 학습하므로 간단한 구조를 가집니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;T-Learner&lt;/b&gt;: &lt;b&gt;각 처치에 대해 별도의 모델을 사용&lt;/b&gt;하여 처치 전후 결과를 비교합니다. 이는 S-Learner보다 더 명확한 그룹별 분석을 제공할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;RA-Learner, PW-Learner, DR-Learner&lt;/b&gt;: &lt;b&gt;두 단계로 구성된 학습자&lt;/b&gt;로, 첫 단계에서는 잠재적 결과를 예측하고, 두 번째 단계에서 이 결과를 사용해 인과적 효과를 추정합니다. 특히 &lt;b&gt;DR-Learner는 성향 점수나 결과 회귀 중 하나만 잘 작동해도 좋은 성과&lt;/b&gt;를 발휘하는 장점이 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;3.3 학습자 비교와 성능 평가&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다양한 Meta-Learner 모델들은 &lt;b&gt;데이터의 생성 방식에 따라 성능이 크게 달라질 수 있습니다&lt;/b&gt;. 예를 들어, DR-Learner는 특정 조건에서 매우 우수한 성능을 보이며, RA-Learner는 confounding이 포함된 상황에서 뛰어난 성능을 발휘합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;각각의 Meta-Learner 모델이 특정 데이터 조건에서 어떤 성능을 발휘하는 지에 대한 실험은 추후 다루겠습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;결론: 인과성 추론의 중요성과 향후 전망&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;인과성 추론은 &lt;b&gt;단순한 상관관계 분석을 넘어선 정확한 인과적 결론을 도출&lt;/b&gt;하는 핵심 도구입니다. 최신 기계학습 기법은 이러한 인과성 추론을 더 정교하게 수행할 수 있도록 돕고 있으며, 다양한 연구와 실제 응용에서 그 가치를 발휘하고 있습니다.&lt;/p&gt;</description>
      <category>AI/ML</category>
      <category>bayes ball algorithm</category>
      <category>Causal Inference</category>
      <category>Causality</category>
      <category>meta-learner models</category>
      <category>ML</category>
      <category>neural network for causality</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/12</guid>
      <comments>https://zip-sa.tistory.com/entry/Causality-and-Machine-Learning#entry12comment</comments>
      <pubDate>Mon, 9 Sep 2024 11:00:27 +0900</pubDate>
    </item>
    <item>
      <title>Monte Carlo (MC) 근사와 샘플링 기법</title>
      <link>https://zip-sa.tistory.com/entry/Monte-Carlo-MC-%EA%B7%BC%EC%82%AC%EC%99%80-%EC%83%98%ED%94%8C%EB%A7%81-%EA%B8%B0%EB%B2%95</link>
      <description>&lt;h2 data-ke-size=&quot;size26&quot;&gt;다뤄볼 내용 :&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Monte Carlo Approximation&lt;/li&gt;
&lt;li&gt;Markov Chain Monte Carlo (MCMC)&lt;/li&gt;
&lt;li&gt;Metropolis-Hastings Algorithm&lt;/li&gt;
&lt;li&gt;Importance Sampling&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;0. 개요&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MC 근사법은 매우 복잡하거나 정확하게 계산하기 어려운 확률 문제를 해결하기 위해 주로 사용되는 방법입니다. 특히 고차원 문제나 복잡한 확률 분포를 다룰 때, 랜덤 샘플링을 통해 근사치를 계산하여 효율적인 해법을 제공합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. Monte Carlo Approximation의 기본 개념&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MC 근사는 복잡한 함수 ($f(z)$)와 확률 분포 ($p(z)$)의 기대값 ($E[f(z)]$)를 계산할 때 사용됩니다. 특히 정확한 계산이 불가능하거나 연산이 매우 오래 걸릴 때, 랜덤 샘플링을 통해 근사하는 것이 핵심입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;중요 요소&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;샘플의 수: $(L)$&lt;/li&gt;
&lt;li&gt;샘플링 수가 충분히 많다면 고차원에서도 유용하게 적용 가능&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;샘플링 방법을 선택하기 전 상황&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;정확한 $(p(z))$를 알고 있을 때&lt;/b&gt;: 샘플링이 간단하며, 정확한 확률 분포를 따르는 샘플을 생성할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;정확한 분포를 모르고 정규화 상수만 모를 때 ($\tilde{p}(z)$)&lt;/b&gt;: 정규화되지 않은 확률 분포로부터 샘플링이 필요할 수 있습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 기본 샘플링 알고리즘&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2.1 표준 분포로부터 샘플링&lt;/h3&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Inverse Transform Sampling&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Inverse CDF(누적 분포 함수)를 이용한 샘플링 방법입니다. 원하는 확률 분포의 CDF의 역함수를 사용하여 샘플링을 수행합니다. 예를 들어, 균등 분포에서 난수를 생성한 뒤 원하는 분포로 변환할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2007&quot; data-origin-height=&quot;1101&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/nGyBT/btsJtMiCjv7/AVNFDjY8cAdZw53w8XR5HK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/nGyBT/btsJtMiCjv7/AVNFDjY8cAdZw53w8XR5HK/img.png&quot; data-alt=&quot;Inverse Transform Sampling을 사용하여 지수 분포에서 샘플을 생성한 시각화&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/nGyBT/btsJtMiCjv7/AVNFDjY8cAdZw53w8XR5HK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FnGyBT%2FbtsJtMiCjv7%2FAVNFDjY8cAdZw53w8XR5HK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;663&quot; height=&quot;364&quot; data-origin-width=&quot;2007&quot; data-origin-height=&quot;1101&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Inverse Transform Sampling을 사용하여 지수 분포에서 샘플을 생성한 시각화&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;파란색 히스토그램&lt;/b&gt;&lt;/span&gt;: Inverse Transform Sampling을 통해 생성된 샘플의 분포입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;빨간색 선&lt;/b&gt;:&lt;/span&gt; 이론적인 지수 분포의 확률 밀도 함수(PDF)입니다&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;제한 사항&lt;/b&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;정확한 PDF(확률 밀도 함수)를 알아야 함.&lt;/li&gt;
&lt;li&gt;Inverse CDF가 계산되지 않을 수 있음.&lt;/li&gt;
&lt;li&gt;정규화 상수를 알고 가정해야 함.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;해당 기법의 자세한 구현 및 응용은 추후 다루도록 하겠습니다.&lt;/b&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. Rejection/Importance Sampling&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3.1 Rejection Sampling (거절 샘플링)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;거절 샘플링은 특정 분포에서 샘플을 생성할 때 활용되며, 대상 분포와 비교하여 샘플의 채택 여부를 결정합니다. 이 방법은 효율이 낮을 수 있지만, &lt;b&gt;특정 분포에서 직접 샘플을 추출하기 어려운 경우 유용&lt;/b&gt;합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3.2 Importance Sampling (중요 샘플링)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중요 샘플링은 다른 분포에서 샘플링한 후, 각 샘플의 가중치를 조정하여 목표 기대값을 계산하는 방법입니다. 이는 특히 고차원 문제나 계산 비용이 높은 문제에서 자주 사용됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2007&quot; data-origin-height=&quot;1101&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi3rKO/btsJtiI42TU/keZ3gRB8AmaUKQEZvlItZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi3rKO/btsJtiI42TU/keZ3gRB8AmaUKQEZvlItZk/img.png&quot; data-alt=&quot;Importance Sampling을 사용하여 표준 정규 분포를 근사하는 과정 시각화&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi3rKO/btsJtiI42TU/keZ3gRB8AmaUKQEZvlItZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi3rKO%2FbtsJtiI42TU%2FkeZ3gRB8AmaUKQEZvlItZk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;749&quot; height=&quot;411&quot; data-origin-width=&quot;2007&quot; data-origin-height=&quot;1101&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;Importance Sampling을 사용하여 표준 정규 분포를 근사하는 과정 시각화&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;파란색 히스토그램&lt;/b&gt;&lt;/span&gt;: Uniform 분포에서 샘플을 추출한 뒤, 표준 정규 분포의 가중치를 적용한 샘플의 분포입니다.&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;&lt;b&gt;빨간색 선&lt;/b&gt;&lt;/span&gt;: 목표 분포인 표준 정규 분포의 확률 밀도 함수(PDF)입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;장점&lt;/b&gt;: 직접적인 샘플링이 어려운 상황에서도 기대값을 추정할 수 있음.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;단점&lt;/b&gt;: 가중치가 크거나 작은 샘플들이 결과에 과도한 영향을 미칠 수 있음.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Importance Sampling의 심화 내용은 추후 따로 다루도록 하겠습니다.&lt;/b&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. Markov Chain Monte Carlo (MCMC) 기초&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;MCMC는 확률 분포를 효과적으로 샘플링하는 방법으로, 복잡한 후방 분포를 추정할 때 많이 사용됩니다. MCMC는 마르코프 체인을 통해 연속적인 샘플을 생성하며, 관심 있는 확률 분포를 근사할 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4.1 Markov Chain Monte Carlo (MCMC)&lt;/h3&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;목적&lt;/b&gt;: $(q(z) = P(z|x))$를 추정&lt;/li&gt;
&lt;li&gt;&lt;b&gt;문제&lt;/b&gt;: $(P(x))$를 구하기 어려움&lt;/li&gt;
&lt;li&gt;&lt;b&gt;해결&lt;/b&gt;: $Posterior$를 추정할 수 있는 방법 제공&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4.2 Markov Chain의 기본 개념&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마르코프 체인은 연속된 랜덤 변수들의 시퀀스로, 이전 상태에만 의존하여 다음 상태로 전이됩니다. 이러한 체인은 특정 조건 하에 고유한 정적 분포로 수렴합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;정적 분포 (Stationary Distribution)&lt;/b&gt;: 특정 전이 행렬 $(T)$를 계속 곱해도 상태가 변하지 않는 경우.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c3rKCK/btsJsYRH5pI/jdTFNNwqQxKPlOkM6ZUXu0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c3rKCK/btsJsYRH5pI/jdTFNNwqQxKPlOkM6ZUXu0/img.jpg&quot; data-alt=&quot;출처 : Markov Chains Clearly Explained! Part - 1 (https://youtu.be/i3AkTO9HLXo?si=R-zGSzPQ9-3EMySG)&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c3rKCK/btsJsYRH5pI/jdTFNNwqQxKPlOkM6ZUXu0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc3rKCK%2FbtsJsYRH5pI%2FjdTFNNwqQxKPlOkM6ZUXu0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1280&quot; height=&quot;720&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;720&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : Markov Chains Clearly Explained! Part - 1 (https://youtu.be/i3AkTO9HLXo?si=R-zGSzPQ9-3EMySG)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4.3 Metropolis-Hastings 알고리즘&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Metropolis-Hastings 알고리즘은 제안된 분포와의 비교를 통해 샘플을 수락하거나 거부하는 방식입니다. 이는 확률적 샘플링의 효율성을 높이는 데 도움을 줍니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;Variance 조절&lt;/b&gt;: 분산을 작게 잡으면 수렴이 느려지고, 크게 잡으면 거절될 확률이 높아짐.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4.4 Gibbs Sampling&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Gibbs 샘플링은 조건부 분포를 이용해 샘플을 반복적으로 생성하며, 모든 샘플이 항상 수락되는 방식입니다. 마르코프 블랭킷을 이용해 각 변수에 대해 순차적으로 샘플링합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;마르코프 블랭킷&lt;/b&gt;: 특정 변수를 샘플링할 때 고려해야 할 최소한의 주변 변수들.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;MCMC 기법의 세부 구현과 PyTorch 코드 예제는 추후 추가 포스팅에서 다룰 예정입니다.&lt;/b&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;PyTorch 예제: 간단한 MCMC 구현&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음은 PyTorch를 사용하여 간단한 Metropolis-Hastings 알고리즘을 구현하는 예제입니다. 이 코드는 정규 분포에서 샘플을 생성하는 과정을 보여줍니다.&lt;/p&gt;
&lt;pre class=&quot;bash&quot; data-ke-language=&quot;bash&quot;&gt;&lt;code&gt;import torch

def target_distribution(x):
    # 목표 분포: 정규 분포
    return torch.exp(-0.5 * x**2) / torch.sqrt(torch.tensor(2 * torch.pi))

def metropolis_hastings(num_samples, proposal_std=1.0):
    samples = [0.0]  # 초기값
    current = torch.tensor(samples[-1], dtype=torch.float32)

    for _ in range(num_samples):
        proposal = current + torch.randn(1) * proposal_std
        acceptance_ratio = target_distribution(proposal) / target_distribution(current)

        # 샘플 수락 여부 결정
        if torch.rand(1) &amp;lt; acceptance_ratio:
            samples.append(proposal.item())
            current = proposal
        else:
            samples.append(current.item())

    return samples

# 샘플 생성 및 시각화
samples = metropolis_hastings(1000)
print(samples[:5])  # 일부 샘플 출력&lt;/code&gt;&lt;/pre&gt;
&lt;pre id=&quot;code_1725540138733&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;# 출력 결과
[0.0, 0.06982042640447617, 0.06982042640447617, 1.2540227174758911, 0.9184370040893555]&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 코드는 Metropolis-Hastings 알고리즘을 이용하여 정규 분포에서 샘플을 생성하며, 샘플 수락 여부는 현재 상태와 제안된 상태의 비율에 따라 결정됩니다.&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 내용은 추후 별도로 더 깊게 다룰 예정이며, 자세한 구현 예제를 작성해볼 계획입니다.&lt;/p&gt;</description>
      <category>AI/ML</category>
      <category>importancesampling</category>
      <category>MCMC</category>
      <category>Montecarlo</category>
      <category>probabilisticmodeling</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/11</guid>
      <comments>https://zip-sa.tistory.com/entry/Monte-Carlo-MC-%EA%B7%BC%EC%82%AC%EC%99%80-%EC%83%98%ED%94%8C%EB%A7%81-%EA%B8%B0%EB%B2%95#entry11comment</comments>
      <pubDate>Thu, 5 Sep 2024 21:51:00 +0900</pubDate>
    </item>
    <item>
      <title>Miracle Morning?</title>
      <link>https://zip-sa.tistory.com/entry/Miracle-Morning</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-EA8D8EDF-4429-4492-9984-BFE366621466&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-EA8D8EDF-4429-4492-9984-BFE366621466&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-EA8D8EDF-4429-4492-9984-BFE366621466&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-EA8D8EDF-4429-4492-9984-BFE366621466&quot;&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-EA8D8EDF-4429-4492-9984-BFE366621466&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;678&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/n4A5s/btsJjmyt9k2/gOzXidI4KLYskmXIgkMWr1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/n4A5s/btsJjmyt9k2/gOzXidI4KLYskmXIgkMWr1/img.jpg&quot; data-alt=&quot;날 좋으면 rooftop에서 작업함&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/n4A5s/btsJjmyt9k2/gOzXidI4KLYskmXIgkMWr1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fn4A5s%2FbtsJjmyt9k2%2FgOzXidI4KLYskmXIgkMWr1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;632&quot; height=&quot;476&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;678&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;날 좋으면 rooftop에서 작업함&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;span&gt;&lt;/span&gt;&lt;span style=&quot;color: #555555;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-0353c4b7-c95e-4fa2-a694-689bc09b4c14&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-0353c4b7-c95e-4fa2-a694-689bc09b4c14&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-0353c4b7-c95e-4fa2-a694-689bc09b4c14&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-052b3a7a-27fb-4126-9755-bd06595fcff0&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333; text-align: start;&quot;&gt;기록 일:&lt;span&gt; 2023.03.04&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-046d6dad-ed13-42e7-af2e-1afab73f2efd&quot; data-ke-size=&quot;size16&quot;&gt;기상 : 6:50 am, 날씨 : 갑자기 폭풍이 왔다 빠르게 감&lt;/p&gt;
&lt;p id=&quot;SE-7B172FE0-14AF-4542-B27F-C0733A239F60&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-bf8c0549-7104-4f26-9be9-7e3aae303f29&quot; data-a11y-title=&quot;인용구&quot; data-compid=&quot;SE-bf8c0549-7104-4f26-9be9-7e3aae303f29&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-bf8c0549-7104-4f26-9be9-7e3aae303f29&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;
&lt;div id=&quot;SE-2f08b604-4934-403f-90ec-822fd13f4bdd&quot;&gt;
&lt;h3 id=&quot;SE-A4650648-7BDF-469C-B771-962319A72EE3&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;I&amp;rsquo;m Happy to Looking at Myself&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-c7673f8c-de26-494f-8aab-e7cddfdeb13e&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-c7673f8c-de26-494f-8aab-e7cddfdeb13e&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-c7673f8c-de26-494f-8aab-e7cddfdeb13e&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-ad9ea82a-1645-46f7-8ac8-98d365094b6d&quot;&gt;
&lt;p id=&quot;SE-cdeb2e71-ae81-4a98-bc21-3c9c0012d865&quot; data-ke-size=&quot;size16&quot;&gt;아직 3일 차 이긴 하지만, 11~01 시쯤 잠들고 7시에 일어나는 걸 실천 중이다.&lt;/p&gt;
&lt;p id=&quot;SE-958c782d-2721-4f9f-93a2-9d9da6a98754&quot; data-ke-size=&quot;size16&quot;&gt;근 몇 년간 내 기억 속에는 제때 잠들고, 알람을 듣지 않아도 눈이 떠지는 경험이 없다.&lt;/p&gt;
&lt;p id=&quot;SE-ea933961-e9f4-4f7d-bda3-cf872c61a1c0&quot; data-ke-size=&quot;size16&quot;&gt;그러나, 오늘 2023년 3월 4일 토요일 (한국은 3월 5일이니 이 날로 기념일을 지정해야겠다.) 6:50 am에 눈이 떠졌다.&lt;/p&gt;
&lt;p id=&quot;SE-4748fd47-70c8-4583-9387-096dd883830c&quot; data-ke-size=&quot;size16&quot;&gt;심지어, 수면을 기록 및 분석하고 싶어서 Apple Watch 또한 차고 잔 날이었다. (Apple Watch 또한 구매 후 처음으로 잘 때 차고 잤다.)&lt;/p&gt;
&lt;p id=&quot;SE-15b51372-140b-4873-8284-ccf25d4283b2&quot; data-ke-size=&quot;size16&quot;&gt;이렇게 호들갑 떨며 세세하게 다 기록하는 만큼 나에게는 큰 발전이었다.&lt;/p&gt;
&lt;p id=&quot;SE-26E13D80-2D96-4B8D-9FDE-09D46D47B823&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-ec9d6bed-ba64-444e-8ee2-5afcbeacd536&quot; data-a11y-title=&quot;인용구&quot; data-compid=&quot;SE-ec9d6bed-ba64-444e-8ee2-5afcbeacd536&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-ec9d6bed-ba64-444e-8ee2-5afcbeacd536&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-cfe5d624-d818-479a-bc97-9a42978e4e2b&quot;&gt;
&lt;h3 id=&quot;SE-D89B8313-DA26-4F35-AAA4-7A12E5E2E6CE&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Miracle&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-7F01AE46-931E-4364-95FA-8929B53A34D5&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-7F01AE46-931E-4364-95FA-8929B53A34D5&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-7F01AE46-931E-4364-95FA-8929B53A34D5&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-1ad5b757-74ea-4f23-93d4-bb8a6b84f300&quot;&gt;
&lt;p id=&quot;SE-4535A670-4443-40D9-AC0A-00A9C975231B&quot; data-ke-size=&quot;size16&quot;&gt;흔한 자기계발서나 관련 피드 및 정보글만 봐도 미라클모닝에 대해서 거의 신봉자처럼 서사해 놓은 걸 많이 봤다.&lt;/p&gt;
&lt;p id=&quot;SE-5A424780-D00A-496B-97BB-8077AB0ED452&quot; data-ke-size=&quot;size16&quot;&gt;그렇다! 나도 Miracle 모닝을 실현한 거다!라는 느낌은 전혀 안 받았고, 그저 내가 느낀 건 다음과 같다.&lt;/p&gt;
&lt;p id=&quot;SE-542397CA-7F49-4B5B-B354-25111584DFB7&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-CA35A419-9869-49B7-8391-8808EFBA86FD&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-1273C879-34D1-47E3-90B5-5E8610A2BB0C&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;1. 아침에 뭔 짓을 해도 여유로움.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-A4ED5D9C-4F78-40AB-8250-A8F53424A10C&quot; data-ke-size=&quot;size16&quot;&gt;일어나서 Marshall 브랜드의 스피커로 메이플스토리 ost 틀어놓고, Brew Machine 준비해 놓고, 세수하고, 스킨과 로션을 바르고, 양치하면서 Coffiee 따라놓고, 사업 아이디어 메모도 하고, 요즘 보고 있는 &amp;ldquo;전문 컨설턴트의 보고서 작성법&amp;rdquo;를 읽으며, 아침으로 바나나 까먹고, 창문 밖에 San Francisco 전경도 보고, Golden Bridge 도 찾아보고, 별의별 짓을 다해도 9시가 안 된다.&lt;/p&gt;
&lt;p id=&quot;SE-581E0174-678C-4D97-9592-FE52F10F9890&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-8E858723-3708-44AC-8789-13D6EAC6D07E&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;2. 아이디어가 넘침&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-659F4A55-A682-42F3-85E3-B0E377F36ED3&quot; data-ke-size=&quot;size16&quot;&gt;(1) 번의 이유 때문에 내 마음 또한 여유가 넘쳐서 뇌가 자기 좀 써달라고, 일 시켜달라고 조르듯 아이디어가 넘쳐나게 됐다. 창의적인 생각도 많이 떠오르고, 기존에는 생각이 막혀서 더 이상 생각을 하기 싫어 그만두었을 시점이 오면 이젠 번뜩이며 아이디어에 아이디어가 꼬리를 물었다. 결과로 새로운 사업 기획 아이디어도 잘 구상된 거 같다. 물론 검증하는 건 오후의 나이다. 지금 나의 Notion를 어떻게 확장, 가공시킬지에 대한 아이디어는 덤이다.&lt;/p&gt;
&lt;p id=&quot;SE-6a8de942-5b72-4a54-b750-c9560d2ae5e1&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-BF868C0E-90B5-42E1-8CE6-0CE43C38CBBC&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #333333;&quot;&gt;&lt;b&gt;3. 아침을 먹을 수 있다.&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-2411EBFC-A8DB-439D-B16A-656E7121F2AC&quot; data-ke-size=&quot;size16&quot;&gt;현재 체중에 대한 Complex는 병적으로 있진 않지만, 불만은 있다. 이게 내 Complex일 수도 있는지는 아직 내 감정을 객관적으로 돌아보지 못했다. 그래서 결론은 체중이 늘고 좀 더 건장한 체격을 가지고 싶다는 욕망인데. 그러려면 간단하다. 영양소를 골고루 많이 잘 섭취하고, 운동하고, 잘 자고, 스트레스를 안 받으면 된다. 근데 이게 안 됐다.&lt;/p&gt;
&lt;p id=&quot;SE-3AC84C44-861B-49AA-8CED-0E93824E3487&quot; data-ke-size=&quot;size16&quot;&gt;일단 많이 먹는다는 거부터 제일 고역이다. 그래서 한꺼번에 많은 양이 아니라 수시로 채워 넣어야 하는데, 마른 사람 특인지는 모르겠지만 귀찮아서 잘 안 먹게 된다. 아침은 근데 지금까지 시간이 없어서 못 먹었다. 왜냐면 이 시간에 자고 있거나, 부랴부랴 준비해서 급하게 나갔으니까. 그래서 아침을 먹을 수 있음에 감사했다. 체중에 대해 할 말은 나중에 좀 더 정리해서 작성해야겠다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 33.3333%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JdKz6/btsJihShTpT/cQWTLm1FvphYWAx9PCoz61/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JdKz6/btsJihShTpT/cQWTLm1FvphYWAx9PCoz61/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JdKz6/btsJihShTpT/cQWTLm1FvphYWAx9PCoz61/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJdKz6%2FbtsJihShTpT%2FcQWTLm1FvphYWAx9PCoz61%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;900&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dl9Hxr/btsJjU2yRXj/Ug6OgNTw3iH9oHkLq52xuk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dl9Hxr/btsJjU2yRXj/Ug6OgNTw3iH9oHkLq52xuk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dl9Hxr/btsJjU2yRXj/Ug6OgNTw3iH9oHkLq52xuk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdl9Hxr%2FbtsJjU2yRXj%2FUg6OgNTw3iH9oHkLq52xuk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;900&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 33.3333%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l2DzF/btsJh8abyI7/ry5pkZJsKjiT2BCeN2KUqk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l2DzF/btsJh8abyI7/ry5pkZJsKjiT2BCeN2KUqk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l2DzF/btsJh8abyI7/ry5pkZJsKjiT2BCeN2KUqk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl2DzF%2FbtsJh8abyI7%2Fry5pkZJsKjiT2BCeN2KUqk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;900&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-04198f92-7fb6-4628-88b9-ae2f5642b5ea&quot; data-a11y-title=&quot;그룹사진&quot; data-compid=&quot;SE-04198f92-7fb6-4628-88b9-ae2f5642b5ea&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-04198f92-7fb6-4628-88b9-ae2f5642b5ea&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-f67f11ce-7fc3-40df-855b-aed2de0eba57&quot;&gt;
&lt;p id=&quot;SE-5c267ebc-a033-42f3-9c9b-b30f430ec020&quot; style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #555555;&quot;&gt;아침은 보통 위 틀에서 안 벗어남&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-5413ea8c-a974-47de-ac5f-fbca63951ce2&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-5413ea8c-a974-47de-ac5f-fbca63951ce2&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-5413ea8c-a974-47de-ac5f-fbca63951ce2&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-9fada40a-3e13-4ab0-a004-4c7e2e2ff75f&quot;&gt;
&lt;p id=&quot;SE-7679CE8E-EC8E-4FC8-8EFA-F33E4226754E&quot; data-ke-size=&quot;size16&quot;&gt;이거 말고도 더 효과가 있을 텐데, 지금 오늘 느낀 것만 적어 봤다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-22a2954f-d276-4526-b2c5-dbea40d00fb8&quot; data-a11y-title=&quot;인용구&quot; data-compid=&quot;SE-22a2954f-d276-4526-b2c5-dbea40d00fb8&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-22a2954f-d276-4526-b2c5-dbea40d00fb8&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-3779de47-9535-4895-bcf3-a3d68d2e1bb4&quot;&gt;
&lt;h3 id=&quot;SE-F0ABBDED-C522-45B1-A610-C360217AA5A7&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;I Can Speak English&lt;/span&gt;&lt;/h3&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-bff9d209-7cf5-407c-8707-2b1d622896b2&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-bff9d209-7cf5-407c-8707-2b1d622896b2&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-bff9d209-7cf5-407c-8707-2b1d622896b2&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-eecbaf36-07ea-47bf-8788-5f8cde299fb5&quot;&gt;
&lt;p id=&quot;SE-beaa842e-d2d9-42de-ae90-71f465c7a1c8&quot; data-ke-size=&quot;size16&quot;&gt;미국에 오고 계속(어제까지) 영어 말하기에 대한 고민과 걱정이 많았다. 근데 이제 확실히 깨달았다. 살 찌우는 방법이랑 똑같다. 그냥 많이 먹고, 운동하고, 잘 자고 등등&amp;hellip;&lt;/p&gt;
&lt;p id=&quot;SE-ab2e632e-5715-4078-9741-fbc92d7a65a8&quot; data-ke-size=&quot;size16&quot;&gt;영어도 읽고, 듣고, 쓰고, 말하면 된다. 이 중에서도 말하기는 여러 방법이 있겠지만, 영어 말하기 하기 제일 좋은 환경에 있기 때문에 밖에 나가서 말을 걸면 된다.&lt;/p&gt;
&lt;p id=&quot;SE-762ec2dc-908a-4308-88ea-5a2c1607f04d&quot; data-ke-size=&quot;size16&quot;&gt;이 생각을 깨우치자마자 오늘 신기한 일들이 일어났다.&lt;/p&gt;
&lt;p id=&quot;SE-3C47D8D6-9E42-4C87-83F7-E77E5C9DEEB1&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-ed2e265b-3d2e-430c-9262-3b52046da95b&quot; data-ke-size=&quot;size16&quot;&gt;오후에 업무를 보던 중 잠깐 1층 오피스 앞에서 담배를 태우고 있는데, 한 전동차를 탄 흑인 아주머니께서 여기가 4510st 가 맞냐고 물어보셨다. 사실 물어보실 거 같아서 그쪽을 바라보며 어물쩍 거리긴 했다. 그래서 나의 완벽한 Body-Language와 미숙한 English를 7:3 비율로 구사해 내어 그분이 가시려던 파티장까지 안내해 드렸다. 파티장에 대해서 잠깐 얘기하자면, 현재 숙소 건물 7층에 관련한 Party-room이 있다. 근데 Access key가 없으면 건물 1층도 못 들어가는 구조라 못 들어가실걸 알고 있었다. 다시 본론으로 그분에게 안내해 드리며, 미국에 와서 처음으로 내게 이름을 물어봐 주셨다! 내 대답은 I&amp;rsquo;m a 승우라고 한 거 같다; (&quot;What is your name?&quot;으로 물어봤으니 &quot;My name is&quot;로 대답 했어야 맞지 않나?라고 지금까지 생각 중) 사실 당황해서 기억이 가물가물한데, 그런 거 같다. 그 아주머니는 Faul? 포울? 폴? 뭔지 모르겠는데 이런 느낌이었다. 그 뒤로도 파티장에 가려는 흑인 가족들에게 또 안내해드리고, 다시 공부하러 갔다. 시간이 흘러 너무 피곤해서 오늘은 좀 일찍 쉬어야겠다고 생각해 올라가려던 찰나 1층에 아까 봤던 폴 아주머니가 계셨다. 또 연신 감사하다고 해주시고, 옆에 지나가던 파티장 지인에게 &amp;rdquo;쟤가 나 도와줘서 들어갈 수 있었어, 또 다른 사람들 못 올라갈 까봐 내가 1층에서 기다리려고 &amp;ldquo; 이런 말을 했다. 그래서 쿨하게 (사실 더 말하고 싶은데 뭐라 말해야 할지 모름) 오브 콜스~ 하고 엘리베이터로 직진했다. 그러자 아주머니가 &amp;ldquo;Do you want to go party?&amp;rdquo;라고 제안을 주셨는데, 순간 머릿속에 비상이 걸리면서 전기 신호들이 폭발하는 거 마냥 수만 가지 생각이 지나갔다. 가고 싶다; 이게 내가 원하던 거 아니었나? 갈까? &amp;ldquo;Is it okay if I go there?&amp;rdquo;라고 말할까? 어떡하지? 하다가,,, 다시 돌아와서 내가 피곤한 사실을 느끼고, 머쓱하면서 제대로 거절도 못하고&amp;hellip; (내가 고민하던 순간에 다른 사람이랑 또 대화중이셨다.) 그냥 숙소로 돌아왔다. 아쉽긴 했지만, 후회는 없었다. 오늘 영어를 많이 말한 것만으로도 충분했다. 다음에 제대로 놀기로 다짐했다. 그리고 몇 번 더 다른 입주민과 대화했다.&lt;/p&gt;
&lt;p id=&quot;SE-F13224EE-BAAE-403A-AAFC-7241DB12AE2D&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-c40e30f1-c157-4463-b3cd-fab157c2bffd&quot; data-ke-size=&quot;size16&quot;&gt;영어 말하기를 인지하고, 노력하려고 하자마자 이런 일 들이 찾아온 게 정말 신기했다. 어쩌면 전에도 상황은 많았지만, 내 뇌에서 거부했던 거 같다. 중요한 건 오늘 만난 5명의 영어 상황에서 첫 번째 폴 아주머니부터 계속 말하는 게 자연스러워지고, 편안하게 말한 거 같다. 몇 번 하지도 않았는데 발전해 간다는 게 느껴져서 무척 황홀했다.&lt;/p&gt;
&lt;p id=&quot;SE-E6B2E5A9-4AA9-4889-AB09-3E1075B65945&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-B38F1276-BECC-4296-ACD7-3ACBA16EA8C8&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-cf1123a3-2a5f-4206-99f5-4dce5cafe503&quot; data-ke-size=&quot;size16&quot;&gt;오늘은 느낀 게 너무 많아, 글이 길어졌다. 점차 이런 것들이 익숙해지고, 일상적인 감정으로 느껴졌을 때의 나를 보고 싶다.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Diary</category>
      <category>diary</category>
      <category>English</category>
      <category>Miracle morning</category>
      <category>SF</category>
      <category>일기</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/10</guid>
      <comments>https://zip-sa.tistory.com/entry/Miracle-Morning#entry10comment</comments>
      <pubDate>Thu, 29 Aug 2024 00:39:54 +0900</pubDate>
    </item>
    <item>
      <title>Desire, Ambition, Constantly</title>
      <link>https://zip-sa.tistory.com/entry/Desire-Ambition-Constantly</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-1202CE0C-871A-46F7-8F71-8F435C7F1041&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-1202CE0C-871A-46F7-8F71-8F435C7F1041&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-1202CE0C-871A-46F7-8F71-8F435C7F1041&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-1202CE0C-871A-46F7-8F71-8F435C7F1041&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-1202CE0C-871A-46F7-8F71-8F435C7F1041&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/NN16i/btsJeVVzXG1/kwkXwDqrg21YUp5fV03ts0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/NN16i/btsJeVVzXG1/kwkXwDqrg21YUp5fV03ts0/img.jpg&quot; data-alt=&quot;날씨가 아직은 추운듯&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/NN16i/btsJeVVzXG1/kwkXwDqrg21YUp5fV03ts0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FNN16i%2FbtsJeVVzXG1%2FkwkXwDqrg21YUp5fV03ts0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;722&quot; height=&quot;963&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;날씨가 아직은 추운듯&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-c6fa9705-ab3e-4592-97eb-0bf189eb8b56&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-c6fa9705-ab3e-4592-97eb-0bf189eb8b56&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-c6fa9705-ab3e-4592-97eb-0bf189eb8b56&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-fd21ffa3-26ed-4588-a95c-5cd9d5c103ca&quot;&gt;
&lt;p id=&quot;SE-76112ba3-ed94-42fd-bab9-0679e08e9a08&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #777777;&quot;&gt;기록 일: 2023.03.04&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #777777;&quot;&gt;기상: 7:05 &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-77E624C2-8C4D-4FE4-B57B-FF3C9B24AC81&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;SE-378ab1db-1581-4a2f-a06f-5ffca9bf03a4&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;Desire to lean English&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-b2fe1dc2-35e5-423d-a6b9-391feaa9e60c&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 영어에 대한 욕구가 커졌다. 미국까지 왔는데, 3달이나 있는데, 등등 원래 있었던 욕심이 미국에 오니 더 커진 거 같다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-db75e5de-88e0-43d8-8868-64b4cbd068ed&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-9b00a270-68f2-4ee0-b671-524e0783958a&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 근데 성격 탓인지, 자신감이 부족한 건지 영어를 머릿속으로 다 구상해 놓고도 번역기까지 돌려가며 최적의 단어를 찾는 순간, 이미 영어로 말할 기회가 사라져 있어서 많이 후회스러웠다. 예를 들어, 한 여성분이 costco앞에서 자전거 뒷부분에 패딩을 묶어놓으시려고 애쓰시고 있었다. 난 한국이었으면 지체 없이 가서 도와드렸을 텐데, 머릿속으로 이렇게 말하는 게 맞나? 이 문장이 안 어색할까, 무례하지는 않을까 걱정하고 머릿속에 조합을 완성하던 찰나에 이미 짐 싸서 떠나셔 버렸다. 그 외에도 비슷한 경우가 몇몇 있었다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8B6F0187-8B04-41C7-8A24-F36B06A34A51&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-96294885-c79f-4ae5-bea3-64e968a34d17&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 이왕 온 김에 더 열심히 해보고자 Speak이라는 한국 AI 튜터 뭐시깽이 발음테스트 앱도 깔아보고, 대표님에게 이런 고민을 얘기하니까 Language Exchange 같은 문화를 알려주셨다. 버클리에서도 그런 커뮤니티가 있다고 알려주셔서 내일이나 조만간 사람을 찾아볼 생각이다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-46adc259-45c1-470c-840d-5015e9f55a85&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-D0790177-4760-46E6-81C6-D5855061169C&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-D0790177-4760-46E6-81C6-D5855061169C&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-D0790177-4760-46E6-81C6-D5855061169C&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-D0790177-4760-46E6-81C6-D5855061169C&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-D0790177-4760-46E6-81C6-D5855061169C&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/2jqpR/btsJfBowCth/9u3Ul5QgZqKZdgqfKRqOkk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/2jqpR/btsJfBowCth/9u3Ul5QgZqKZdgqfKRqOkk/img.jpg&quot; data-alt=&quot;보통 아침&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/2jqpR/btsJfBowCth/9u3Ul5QgZqKZdgqfKRqOkk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F2jqpR%2FbtsJfBowCth%2F9u3Ul5QgZqKZdgqfKRqOkk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;766&quot; height=&quot;1021&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;보통 아침&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-1a63b2b8-f262-4062-8ac3-005bc3f4b258&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-1a63b2b8-f262-4062-8ac3-005bc3f4b258&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-1a63b2b8-f262-4062-8ac3-005bc3f4b258&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-8001942a-3b92-4e46-bb02-36437c3144d8&quot;&gt;
&lt;h3 id=&quot;SE-b18f4704-26ca-4cc6-8863-ba5555f69231&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;Studying Data Engineering in Coursera with Notion&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-5f833e1e-ebf5-4b53-9cec-86a7ed79c4e3&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 아직, 노션 책을 제대로 다 읽지도 않았고 거의 초반 부분이긴 하다. 그래도 이제 지금 내 상황에서는 어떻게든 알고 있는 지식 짜깁기해서 노션으로 구현할 능력이 되었다. 미국 와서 노션을 제대로 쓰기 전에는 머릿속에 있는 걸 구현하지 못해서 답답하고 미칠 지경이었는데(그래놓고 막상 공부는 안 하고 템플릿만 주워다가 썼음) 배우고, 나한테 적용하고, 응용하다 보니 점차 익숙해졌다. 근데 이때가 가장 위험한 거 같다. 지금 상태에 안주하고 더 제대로 공부하지 않는다면, 발전은 없을 거라고 확신한다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-9a564544-169c-49bd-903a-cdcc2dc07979&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 그래서 더 깊게 그리고 제대로, 제일 중요한 &amp;lsquo;끝까지&amp;rsquo; 해볼 생각이다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div id=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-E6733A55-617A-4134-8C8F-8CEE610D7893&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1600&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bb36gj/btsJgesOkNq/3X8Z2ZtZdbxZYdShzPyWjK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bb36gj/btsJgesOkNq/3X8Z2ZtZdbxZYdShzPyWjK/img.jpg&quot; data-alt=&quot;노을이 정말 예쁘고, 공기가 정말 상쾌했다.&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bb36gj/btsJgesOkNq/3X8Z2ZtZdbxZYdShzPyWjK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbb36gj%2FbtsJgesOkNq%2F3X8Z2ZtZdbxZYdShzPyWjK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;800&quot; height=&quot;1422&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1600&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;노을이 정말 예쁘고, 공기가 정말 상쾌했다.&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;br /&gt;&lt;span style=&quot;color: #555555;&quot;&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-f25b2798-5934-46db-99e2-c684c79f354f&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-f25b2798-5934-46db-99e2-c684c79f354f&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-f25b2798-5934-46db-99e2-c684c79f354f&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-267aef24-0f4e-4da9-81f1-cddce2ab076b&quot;&gt;
&lt;h4 id=&quot;SE-9df93a9c-a079-4f00-88ec-1b6a52335633&quot; data-ke-size=&quot;size20&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;and Notion&lt;/b&gt;&lt;/span&gt;&lt;/h4&gt;
&lt;p id=&quot;SE-d6cdfb5b-7075-4d0e-8ac9-d4d5052f91eb&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 노션 마스터해서 지식공유도 해보고 퍼스널브랜딩은 아니어도 나만의 플랫폼을 구축해보고 싶다. 항상 유튜브도 찔끔, 인스타도 찔끔, 뭐든 찔러만 보고 쑤시기만 해 봤지, 제대로 깊게 끝까지 파고든 적이 없었다. 3 달이라는 기한이 있으니 한번 미친놈 마냥 해보고 싶다. 이건 노션뿐만 아니라 Coursera의 IBM 강의도 역시 포함이다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%; height: 17px;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr style=&quot;height: 17px;&quot;&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/xWtam/btsJeRMp7FG/uj9OCJjfnoK98qJQwHQep0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/xWtam/btsJeRMp7FG/uj9OCJjfnoK98qJQwHQep0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/xWtam/btsJeRMp7FG/uj9OCJjfnoK98qJQwHQep0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FxWtam%2FbtsJeRMp7FG%2Fuj9OCJjfnoK98qJQwHQep0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%; height: 17px;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lsdVr/btsJdHDWNBL/CxZnKtsKHmYnIOv23kbxAk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lsdVr/btsJdHDWNBL/CxZnKtsKHmYnIOv23kbxAk/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lsdVr/btsJdHDWNBL/CxZnKtsKHmYnIOv23kbxAk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlsdVr%2FbtsJdHDWNBL%2FCxZnKtsKHmYnIOv23kbxAk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #555555; text-align: start;&quot;&gt;San Francisco 야간 도심 속&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-04a29818-6233-4c90-9e23-f3c45da91969&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-04a29818-6233-4c90-9e23-f3c45da91969&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-04a29818-6233-4c90-9e23-f3c45da91969&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-a391ebb6-155f-4f05-b042-c66cd4aea82f&quot;&gt;
&lt;h3 id=&quot;SE-f4511032-2c06-4e9e-bcba-9c4f0f16ddb3&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;Constantly&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-7950c2ed-1cbc-458e-bc3a-58eedf502bad&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 지금까지, 코딩도 뭐 하나 깊게 해서 서비스나 프로그램 개발해 본 적도 없고, 유튜브도 계정이랑 콘텐츠 기획만 치밀하게 준비했지 영상 1개도 없으며, 인스타는 말할 것도 없다. 뭐든 간에 지속적으로 할 수 있는 힘을 기르고 싶다. 완벽주의, 강박증 등 버리고 내가 쓸 수 있는 resource 내에서 잘 분배해 가며 유지하고 싶다. 그러기 위해서는 내 체력과 정신력이 먼저 갖춰져야 한다고 생각이 든다. 잘하자. 할 수 있다. 좀 하자 이제.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Diary</category>
      <category>diary</category>
      <category>SF</category>
      <category>일기</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/9</guid>
      <comments>https://zip-sa.tistory.com/entry/Desire-Ambition-Constantly#entry9comment</comments>
      <pubDate>Sun, 25 Aug 2024 19:53:18 +0900</pubDate>
    </item>
    <item>
      <title>Category.</title>
      <link>https://zip-sa.tistory.com/entry/Category</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-876CF6EB-14E5-43EA-B383-8ACED5995524&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-876CF6EB-14E5-43EA-B383-8ACED5995524&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-876CF6EB-14E5-43EA-B383-8ACED5995524&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-876CF6EB-14E5-43EA-B383-8ACED5995524&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-876CF6EB-14E5-43EA-B383-8ACED5995524&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JNYcn/btsJeOB4uGN/3Q6pK93KP1t5Y0fco2Sak1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JNYcn/btsJeOB4uGN/3Q6pK93KP1t5Y0fco2Sak1/img.jpg&quot; data-alt=&quot;UC Berkeley&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JNYcn/btsJeOB4uGN/3Q6pK93KP1t5Y0fco2Sak1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJNYcn%2FbtsJeOB4uGN%2F3Q6pK93KP1t5Y0fco2Sak1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;886&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;UC Berkeley&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;div id=&quot;SE-56875b8e-4334-48cb-9c02-2cd36ed3dee4&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-56875b8e-4334-48cb-9c02-2cd36ed3dee4&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-56875b8e-4334-48cb-9c02-2cd36ed3dee4&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-a44c4369-048c-4342-84d5-f123ed4e1d5c&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기록 일 : 2023.03.03&lt;/p&gt;
&lt;p id=&quot;SE-54436008-1df0-4c19-a6a7-412b950c6a32&quot; data-ke-size=&quot;size16&quot;&gt;기상 : 6:30 am , 날씨 : 굿굿, 이제 슬슬 봄 같아지려고 노력하나 보다.&lt;/p&gt;
&lt;p id=&quot;SE-6B43A20B-021D-4800-8751-5603142E1F6F&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;SE-B3DE8A73-1EBE-47C9-963C-09825ACB67C7&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;- 코세라 강의&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-A2C32AEE-9C83-4767-B2F4-7C382D393CDA&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 한글 자막을 지원하지 않아, 많이 힘들 거 같았다. 그래도 익숙한 IT 단어들이라 귀에는 들려 영어로 이해하고 영어로 강의 노트를 작성했다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-CBD18600-FBFE-4FB1-B58E-7EFE9344A772&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;오랜만에 IT 공부를 해서 설레는 마음도 있었다. 다만, 돌고 돌아 다시 컴공 지식을 쌓으려 노력하는 동안 후회는 되지 않을까 했는데, 전혀 없어서 마음이 편안했다. 내 마음이 정리가 되어 간다는 게 요즘 대표님과 주변 지인들에게 말을 하다 보면 크게 체감이 된다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-97DB000A-97C8-421F-A4A3-B751EC438655&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-46960BB2-FF10-46CA-A807-506C6BFF691C&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;+ 영어로 듣고 영어로 이해하는 게 맞는 건지, 영어로 듣고 한국어로 번역하여 이해하는 게 맞는지 헷갈렸다. 근데 대표님께서 명쾌한 답변을 주셨다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-F161FCED-818C-4B38-82D2-0832D8AB1C8F&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;English &amp;gt; Programming Language &amp;gt; Translate &amp;gt; 한국어 | 이 일련의 과정에서 당연히 근원인 영어로 학습하는 게 맞고, 영어로 머릿속에서 이해하는 게 맞다. 고 말씀 주셔서 복잡해질 거 없이 그냥 있는 그대로 영어로 이해해야겠다. 영어로 듣고 영어로 이해는 쉬운데, 영어로 듣고 한국어로 번역하는 건 정말 어려운 거 같다&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-FF3278D8-1B9C-4862-A777-A64972BC8273&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 id=&quot;SE-D0BA15C5-BA39-4578-9564-5FBB4E6D88D6&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;- 범주화, 카테고리, 노션, 정리하는 뇌&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-A495491F-5194-40A8-A8F9-F11726D3A343&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 노션을 &amp;lsquo;공부한다&amp;rsquo;보다는 아리스토렐레스의 범주화 Category 학문에 다가가고 있다는 생각이 든다. 노션은 도구일 뿐 내 뇌 구조, 시스템 자체를 바꿔야 한다. &amp;lsquo;정리하는 뇌&amp;rsquo;라는 책을 대표님이 미국에 가져가셔서 한국에 있는 동안 읽지 못했다. 하지만, 미국에 왔고 막상 눈앞에 책이 있고 읽으려니까 정말&amp;hellip; 잘 안 읽힌다. 어렵다;&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-6BC4D4CE-28D7-4FD5-8ED9-B2D75C1F3703&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;그래도 도움이 되리라 믿고 남은 80일 동안 이해해 보려 노력할 거다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-4CF401F9-2224-402F-9B2A-68B66340DCE8&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot;&gt;
&lt;div id=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-B1DCB4EC-5567-4E09-B7F2-47607904677F&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/crrT4F/btsJgbJGhzf/6gA6epqnLOjr3NTRatSO90/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/crrT4F/btsJgbJGhzf/6gA6epqnLOjr3NTRatSO90/img.jpg&quot; data-alt=&quot;숙소 로비에서 작업중&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/crrT4F/btsJgbJGhzf/6gA6epqnLOjr3NTRatSO90/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcrrT4F%2FbtsJgbJGhzf%2F6gA6epqnLOjr3NTRatSO90%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;886&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;숙소 로비에서 작업중&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-35361688-1D15-4D36-94DD-A0CC62AF41DD&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-35361688-1D15-4D36-94DD-A0CC62AF41DD&quot;&gt;
&lt;div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-35361688-1D15-4D36-94DD-A0CC62AF41DD&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div id=&quot;SE-ddc9c0cf-e7bb-41e2-bf64-83bacea53997&quot;&gt;
&lt;h3 id=&quot;SE-03772477-A080-41D5-AB1E-E20AC0291169&quot; data-ke-size=&quot;size23&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;&lt;b&gt;- 청소&lt;/b&gt;&lt;/span&gt;&lt;/h3&gt;
&lt;p id=&quot;SE-5F8A7184-FE2A-406D-9D7B-CD5C8A5D7D79&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 미국에 와서 카테고리, 체계, 시스템 등을 탐구하고 고뇌하다 보니 집 청소하는 데에도 많이 도움이 되는 거 같다. 사실, 전에는 치우지도 않았는데 지금은 보이면 치우려는 반응이 먼저 온다! 긍정적인 신호인듯하다. 다만, 원래 한국의 내 방에 들어가서도 같은 반응을 보일지는 아직 미지수이다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div id=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot; data-a11y-title=&quot;사진&quot; data-compid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;&quot; data-unitid=&quot;SE-82C7AE2D-4A2F-4B7F-A633-D2F9CAED5E1B&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/sENxK/btsJfarmsWI/Pf0HrL8KrRphl6k3Elm1s1/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/sENxK/btsJfarmsWI/Pf0HrL8KrRphl6k3Elm1s1/img.jpg&quot; data-alt=&quot;버클리 캠퍼스 노을 질 어느 때&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/sENxK/btsJfarmsWI/Pf0HrL8KrRphl6k3Elm1s1/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FsENxK%2FbtsJfarmsWI%2FPf0HrL8KrRphl6k3Elm1s1%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;886&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;버클리 캠퍼스 노을 질 어느 때&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-9803dac5-a4d3-4250-9e9b-980c4af79ba1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p id=&quot;SE-22DC66FA-C883-4F18-BE50-1D8FAAF3971F&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;- 요리?&lt;/b&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-B396984C-0757-44FE-A1BC-16081ABD9550&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-B396984C-0757-44FE-A1BC-16081ABD9550&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-B396984C-0757-44FE-A1BC-16081ABD9550&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-da77a70c-22bd-405c-aa83-ca7c2560e9c4&quot;&gt;
&lt;p id=&quot;SE-2940CFA4-3805-4622-8E12-07D754562EB1&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 요리는 아니고 전기밥솥이 없어서 쌀로(food pantry에서 공짜로 쌔벼온 쌀) 냄비 밥을 했다. 우선, 제일 두려웠던 게 냄비가 1개밖에 없어서(이 날 저녁, 글 쓰고 있는 한 시간 전, 냄비 3개가 더 있는 걸 알게 됨 ) 밥이 다 들러붙어 냄비를 버리게 되면 어쩌지 라는 마음이 컸다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-74C0058B-CE24-41BD-B1D6-733855DE4A27&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 일단은 구글의 힘을 빌려서 그대로 따라 하며, 중간에 망했다&amp;hellip; 망했네&amp;hellip;라는 생각도 들었지만, 다행히도 최종본은 성공적이었다. 밥도 맛있었고(개선할 점은 많다), 냄비도 심하게 들러붙지 않아서 금방 설거지 가능했다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-93EFBB96-1ACC-4BC1-8ADD-6AE05FF4B897&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 그 다음이 문제인데,,, 일단 소시지를 구웠다. 넓은 프라이팬에 소시지 1개만 덜렁 구웠더니 연기가 펄펄 났고, 여기선 당황하지 않았다. 근데 잠깐 양파를 써는 사이에 fire alarm 이 울리고, 여성 목소리로 &amp;ldquo;Fire Detected&amp;rdquo;? 가 계속 나왔다. 진짜 미국 와서 아니 올해 제일 당황했다. 급한 데로 후드도 틀고, 대표님한테 카톡으로 알렸다. 그리고 어떻게 여는지 몰라서 굳게 닫혀있던 창문에 가서 이리저리 만지다가 생존본능에 의해서 여는 방법을 터득했다. 대표님 말로는 저번에 아무 짓도 안 했는데 울린 적 있다고 하셔서 걱정 안 해도 된다고 했다. 휴우&amp;hellip; 근데 창문 여는 방법을 알았으니 이득이다.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-220E1E03-E5D6-45E3-89D5-C1D51E80584F&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 쨋든, 고비를 넘기고 밥 맛있게 먹었다. 냄비 밥 굿.&lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-759A49B3-FCA2-43A0-BC89-19EAAD57D0FA&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-AB82FE81-F0EC-4B75-A00F-46771FB6BBBA&quot; data-a11y-title=&quot;나란히 놓은 사진&quot; data-compid=&quot;SE-AB82FE81-F0EC-4B75-A00F-46771FB6BBBA&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-AB82FE81-F0EC-4B75-A00F-46771FB6BBBA&quot; data-unitid=&quot;&quot;&gt;
&lt;div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;
&lt;table style=&quot;border-collapse: collapse; width: 100%;&quot; border=&quot;1&quot; data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bPCuaq/btsJeq2tpG3/FnlPX250gPv3L2VvFlc5W0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bPCuaq/btsJeq2tpG3/FnlPX250gPv3L2VvFlc5W0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bPCuaq/btsJeq2tpG3/FnlPX250gPv3L2VvFlc5W0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbPCuaq%2FbtsJeq2tpG3%2FFnlPX250gPv3L2VvFlc5W0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;td style=&quot;width: 50%;&quot;&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/28Xb0/btsJd7vKRXS/Q8X6PTEi7OLCdTCnoTEWv0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/28Xb0/btsJd7vKRXS/Q8X6PTEi7OLCdTCnoTEWv0/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/28Xb0/btsJd7vKRXS/Q8X6PTEi7OLCdTCnoTEWv0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F28Xb0%2FbtsJd7vKRXS%2FQ8X6PTEi7OLCdTCnoTEWv0%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;664&quot; height=&quot;1200&quot; data-origin-width=&quot;900&quot; data-origin-height=&quot;1200&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #666666; text-align: start;&quot;&gt;일하다 힘들면 밖에서 산책함&lt;/span&gt;&lt;/p&gt;
&lt;div id=&quot;SE-9E80F74F-B9C8-4AE2-9A26-EF2697482C0D&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&amp;nbsp;&lt;/div&gt;
&lt;div&gt;&lt;b&gt;- 글쓰기&lt;/b&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div id=&quot;SE-DAE9990F-9C4C-492D-9F0D-04ED51E7C585&quot; data-a11y-title=&quot;본문&quot; data-compid=&quot;SE-DAE9990F-9C4C-492D-9F0D-04ED51E7C585&quot;&gt;
&lt;div data-direction=&quot;top&quot; data-compid=&quot;SE-DAE9990F-9C4C-492D-9F0D-04ED51E7C585&quot; data-unitid=&quot;&quot;&gt;
&lt;div id=&quot;SE-2ac68b19-9665-4152-81de-f224fb1e229f&quot;&gt;
&lt;p id=&quot;SE-63A18CA1-FDDE-402D-AC6E-C588CF8A3947&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt; 미국 와서 3번 정도 글쓰기에 도전했는데, 완벽주의 + 강박증에 의해서 다 끝까지 쓰질 못했다. &lt;/span&gt;&lt;/p&gt;
&lt;p id=&quot;SE-8FF3F53E-E98D-4CB8-94D3-3713E6803E28&quot; data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;background-color: #ffffff; color: #333333;&quot;&gt;그래서 그냥 이제는 대충 쓸란다.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>Diary</category>
      <category>category</category>
      <category>diary</category>
      <category>UCB</category>
      <category>일기</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/8</guid>
      <comments>https://zip-sa.tistory.com/entry/Category#entry8comment</comments>
      <pubDate>Sun, 25 Aug 2024 19:16:36 +0900</pubDate>
    </item>
    <item>
      <title>Structured Data &amp;amp; Data Preprocessing with PyTorch</title>
      <link>https://zip-sa.tistory.com/entry/Structured-Data-Data-Preprocessing-with-PyTorch</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;인공지능 개발자나 데이터 과학자로서, 데이터를 이해하고 전처리하는 것은 매우 중요한 작업입니다. 특히 정형 데이터는 분석과 모델링 과정에서 자주 다루게 되는데, 이 글에서는 정형 데이터의 주요 유형인 범주형 데이터와 수치형 데이터에 대해 설명하고, 각 유형의 데이터를 전처리하는 방법을 소개하겠습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;정형 데이터의 정의&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정형 데이터(Structured Data)는 일정한 형식과 구조를 가진 데이터로, 행과 열의 형태로 구성되어 있으며, 데이터베이스나 스프레드시트에 저장됩니다. 이러한 데이터는 쉽게 검색하고 분석할 수 있어 다양한 통계적 분석과 머신러닝 모델에 활용됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;범주형 데이터&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;범주형 데이터(Categorical Data)는 데이터가 여러 범주로 나뉘어져 있는 형태를 말합니다. 이러한 데이터는 숫자로 나타날 수 있지만, 그 값 자체는 수치적 의미를 가지지 않습니다. 범주형 데이터는 다시 &lt;b&gt;순서형 데이터&lt;/b&gt;와 &lt;b&gt;명목형 데이터&lt;/b&gt;로 나눌 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;순서형 데이터&lt;/b&gt;: 범주 간에 순서가 존재하는 데이터입니다. 예를 들어, 교육 수준(고졸, 대졸, 대학원 졸업)은 순서형 데이터에 해당합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이미지 예시&lt;/b&gt;: 교육 수준을 시각적으로 나타낸 순서형 데이터 그래프 (막대 그래프 등)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;명목형 데이터&lt;/b&gt;: 범주 간에 순서가 없는 데이터입니다. 예를 들어, 혈액형(A, B, AB, O)은 명목형 데이터에 해당합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이미지 예시&lt;/b&gt;: 혈액형 분포를 나타낸 원형 차트 또는 막대 그래프&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 범주형 데이터를 어떻게 전처리할 수 있는지 살펴보겠습니다.&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style3&quot; /&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;범주형 데이터 전처리 방법&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;범주형 데이터는 모델에 입력하기 전에 적절히 전처리해야 합니다. 일반적으로 사용되는 전처리 방법은 다음과 같습니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;레이블 인코딩(Label Encoding)&lt;/b&gt;: 각 범주를 숫자로 변환합니다. 예를 들어, 혈액형을 A=0, B=1, AB=2, O=3으로 변환할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1724411365666&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import torch
import matplotlib.pyplot as plt

# 예시 범주형 데이터 (혈액형)
blood_types = ['A', 'B', 'AB', 'O']

# 레이블 인코딩
label_encoding = {label: idx for idx, label in enumerate(blood_types)}
encoded_labels = [label_encoding[label] for label in blood_types]

# 시각화
plt.figure(figsize=(6, 4))
plt.bar(blood_types, encoded_labels, color='skyblue')
plt.title('Label Encoding of Blood Types')
plt.xlabel('Blood Type')
plt.ylabel('Encoded Value')
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bbItWy/btsJfaYDE0K/mJwtMQpf1EAVzTgaek6Ek1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bbItWy/btsJfaYDE0K/mJwtMQpf1EAVzTgaek6Ek1/img.png&quot; data-alt=&quot;레이블 인코딩 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bbItWy/btsJfaYDE0K/mJwtMQpf1EAVzTgaek6Ek1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbbItWy%2FbtsJfaYDE0K%2FmJwtMQpf1EAVzTgaek6Ek1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;536&quot; height=&quot;391&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;레이블 인코딩 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;원-핫 인코딩(One-Hot Encoding)&lt;/b&gt;: 각 범주를 이진 벡터로 변환합니다. 예를 들어, 혈액형이 A인 경우 [1, 0, 0, 0]으로 표현할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1724411457962&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import torch
import torch.nn.functional as F
import matplotlib.pyplot as plt

# 레이블 인코딩된 텐서
encoded_tensor = torch.tensor([0, 1, 2, 3])

# 원-핫 인코딩
one_hot_encoded = F.one_hot(encoded_tensor, num_classes=4)

# 시각화
plt.figure(figsize=(8, 4))
plt.imshow(one_hot_encoded, aspect='auto', cmap='viridis')
plt.title('One-Hot Encoding of Blood Types')
plt.xlabel('Category')
plt.ylabel('Sample Index')
plt.colorbar(label='Value')
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Fkmey/btsJep9NLJS/kOmQe5Q4vSL6Lyoet1KtB1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Fkmey/btsJep9NLJS/kOmQe5Q4vSL6Lyoet1KtB1/img.png&quot; data-alt=&quot;원-핫 인코딩 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Fkmey/btsJep9NLJS/kOmQe5Q4vSL6Lyoet1KtB1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FFkmey%2FbtsJep9NLJS%2FkOmQe5Q4vSL6Lyoet1KtB1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;676&quot; height=&quot;391&quot; data-origin-width=&quot;676&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;원-핫 인코딩 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;hr contenteditable=&quot;false&quot; data-ke-type=&quot;horizontalRule&quot; data-ke-style=&quot;style5&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;수치형 데이터&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수치형 데이터(Numerical Data)는 숫자로 표현되며, 이 값 자체가 수치적인 의미를 가집니다. 수치형 데이터는 &lt;b&gt;이산형 데이터&lt;/b&gt;와 &lt;b&gt;연속형 데이터&lt;/b&gt;로 나눌 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이산형 데이터&lt;/b&gt;: 특정 값만 가질 수 있는 데이터로, 주로 정수 형태로 나타납니다. 예를 들어, 제품의 개수(1, 2, 3 등)가 이산형 데이터에 해당합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이미지 예시&lt;/b&gt;: 제품 개수 분포를 나타낸 막대 그래프&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;연속형 데이터&lt;/b&gt;: 연속적인 값을 가질 수 있는 데이터로, 소수점 단위까지 포함될 수 있습니다. 예를 들어, 키나 체중이 연속형 데이터에 해당합니다.
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;이미지 예시&lt;/b&gt;: 키나 체중의 분포를 나타낸 히스토그램&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수치형 데이터의 전처리 방법도 중요합니다. 이를 통해 데이터를 더 효과적으로 분석하고 모델에 활용할 수 있습니다.&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;수치형 데이터 전처리 방법&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수치형 데이터는 분석과 모델링을 위해 다음과 같은 전처리 과정을 거칠 수 있습니다:&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;정규화(Normalization)&lt;/b&gt;: 데이터의 범위를 0과 1 사이로 조정합니다. 예를 들어, 키 데이터를 정규화하면 모든 값이 0과 1 사이에 위치하게 됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1724411573111&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import torch
import matplotlib.pyplot as plt

# 예시 수치형 데이터 (키)
heights = torch.tensor([150.0, 160.0, 170.0, 180.0])

# 정규화: (x - min) / (max - min)
normalized_heights = (heights - heights.min()) / (heights.max() - heights.min())

# 시각화
plt.figure(figsize=(6, 4))
plt.plot(heights.numpy(), normalized_heights.numpy(), 'o-', color='green')
plt.title('Normalization of Heights')
plt.xlabel('Original Height')
plt.ylabel('Normalized Height')
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/czrubL/btsJfo3onvG/czCdUAiBqSzF1O6j3cPru1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/czrubL/btsJfo3onvG/czCdUAiBqSzF1O6j3cPru1/img.png&quot; data-alt=&quot;정규화 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/czrubL/btsJfo3onvG/czCdUAiBqSzF1O6j3cPru1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FczrubL%2FbtsJfo3onvG%2FczCdUAiBqSzF1O6j3cPru1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;536&quot; height=&quot;391&quot; data-origin-width=&quot;536&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;정규화 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;표준화(Standardization)&lt;/b&gt;: 데이터의 평균을 0, 표준편차를 1로 조정합니다. 이는 데이터가 서로 다른 단위를 가질 때 특히 유용합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;pre id=&quot;code_1724411699565&quot; class=&quot;python&quot; data-ke-language=&quot;python&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;import torch
import matplotlib.pyplot as plt

# 예시 수치형 데이터 (키)
heights = torch.tensor([150.0, 160.0, 170.0, 180.0])

# 표준화: (x - mean) / std
mean_height = heights.mean()
std_height = heights.std()
standardized_heights = (heights - mean_height) / std_height

# 시각화
plt.figure(figsize=(6, 4))
plt.plot(heights.numpy(), standardized_heights.numpy(), 'o-', color='purple')
plt.title('Standardization of Heights')
plt.xlabel('Original Height')
plt.ylabel('Standardized Height (Z-Score)')
plt.show()&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;391&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/qM7Vy/btsJed9HnlR/nF9BcKTWLhkWqxevhOkJ61/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/qM7Vy/btsJed9HnlR/nF9BcKTWLhkWqxevhOkJ61/img.png&quot; data-alt=&quot;표준화 예시&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/qM7Vy/btsJed9HnlR/nF9BcKTWLhkWqxevhOkJ61/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FqM7Vy%2FbtsJed9HnlR%2FnF9BcKTWLhkWqxevhOkJ61%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;548&quot; height=&quot;391&quot; data-origin-width=&quot;548&quot; data-origin-height=&quot;391&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;표준화 예시&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;hr data-ke-style=&quot;style1&quot; /&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정형 데이터의 유형을 이해하고 이를 적절하게 전처리하는 것은 모델링의 성능을 크게 향상시킬 수 있는 중요한 과정입니다. 범주형 데이터와 수치형 데이터의 특성을 잘 파악하고, 상황에 맞는 전처리 방법을 적용하는 것이 중요합니다. 올바른 전처리는 모델의 정확도를 높일 뿐만 아니라, 데이터의 본질적인 의미를 유지하는 데 필수적입니다.&lt;/p&gt;</description>
      <category>Data</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/7</guid>
      <comments>https://zip-sa.tistory.com/entry/Structured-Data-Data-Preprocessing-with-PyTorch#entry7comment</comments>
      <pubDate>Fri, 23 Aug 2024 20:15:35 +0900</pubDate>
    </item>
    <item>
      <title>Data for AI Engineer</title>
      <link>https://zip-sa.tistory.com/entry/Data-for-AI-Engineer</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;인공지능 개발자나 엔지니어로서, 데이터를 이해하고 이를 활용하여 효율적인 솔루션을 개발하는 것은 매우 중요합니다. 이 글에서는 데이터를 다루는 기본 개념을 중심으로, 데이터의 유형과 구조, 그리고 이를 기록하는 포맷에 대해 설명하겠습니다. 이를 통해 데이터의 본질을 이해하고, 실무에서 어떻게 데이터를 효과적으로 처리할 수 있을지에 대한 통찰을 제공하고자 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터의 정의와 유형&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터는 인공지능 모델이 학습하고 예측하는 데 필요한 핵심 자원입니다. 데이터를 제대로 이해하는 것은 모델의 성능을 극대화하는 데 필수적입니다. 데이터는 크게 구조화된 데이터, 비구조화된 데이터, 그리고 반구조화된 데이터로 분류할 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;구조화된 데이터&lt;/b&gt;: 일정한 형식과 규칙을 가지고 저장된 데이터로, 관계형 데이터베이스에 주로 저장됩니다. 예를 들어, 고객 정보나 거래 내역은 구조화된 데이터로 저장되어 SQL 쿼리로 쉽게 검색하고 분석할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;비구조화된 데이터&lt;/b&gt;: 텍스트, 이미지, 동영상과 같이 고정된 형식이 없는 데이터입니다. 이러한 데이터는 처리하기 어려울 수 있지만, 텍스트 마이닝이나 이미지 분석과 같은 기술을 통해 인사이트를 얻을 수 있습니다. 예를 들어, 소셜 미디어의 게시물이나 로그 파일은 비구조화된 데이터에 해당합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;반구조화된 데이터&lt;/b&gt;: 구조화된 데이터와 비구조화된 데이터의 특징을 모두 가지고 있는 데이터로, XML이나 JSON 같은 형식으로 저장됩니다. 예를 들어, 웹 API의 응답으로 사용되는 JSON 데이터는 일정한 구조를 가지고 있지만, 비정형 데이터도 포함할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1291&quot; data-origin-height=&quot;494&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/J9boI/btsJdcw6na8/kHgZrCjKKkBYXfrb7AuVJK/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/J9boI/btsJdcw6na8/kHgZrCjKKkBYXfrb7AuVJK/img.jpg&quot; data-alt=&quot;https://mycloudwiki.com/san/data-and-information-basics/&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/J9boI/btsJdcw6na8/kHgZrCjKKkBYXfrb7AuVJK/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJ9boI%2FbtsJdcw6na8%2FkHgZrCjKKkBYXfrb7AuVJK%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;795&quot; height=&quot;304&quot; data-origin-width=&quot;1291&quot; data-origin-height=&quot;494&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://mycloudwiki.com/san/data-and-information-basics/&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;도메인과 데이터셋&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도메인은 데이터가 속하는 특정 분야를 의미하며, 데이터셋은 이 도메인에서 수집된 데이터의 집합체입니다. 각 도메인은 데이터의 특성과 이를 분석하는 방법에 따라 다양한 접근 방식을 필요로 합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;의료 도메인&lt;/b&gt;: 환자의 진료 기록, 생체 데이터 등 의료 정보를 포함하는 데이터셋은 민감하고 복잡한 데이터가 많아, 처리와 분석에 높은 정확성과 보안이 요구됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;717&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bDZtky/btsJfo3mQoA/Cu6zWhSBMFe72VHAXLOub1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bDZtky/btsJfo3mQoA/Cu6zWhSBMFe72VHAXLOub1/img.png&quot; data-alt=&quot;https://lab.interface-design.co.uk/design-patterns-in-electronic-health-records-ehr-guidance-for-epr-2bb0c2bc23de&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bDZtky/btsJfo3mQoA/Cu6zWhSBMFe72VHAXLOub1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbDZtky%2FbtsJfo3mQoA%2FCu6zWhSBMFe72VHAXLOub1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;751&quot; height=&quot;385&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;717&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://lab.interface-design.co.uk/design-patterns-in-electronic-health-records-ehr-guidance-for-epr-2bb0c2bc23de&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;금융 도메인&lt;/b&gt;: 금융 거래 내역, 고객의 신용 점수와 같은 데이터는 매우 구조화되어 있으며, 빠른 분석과 예측이 중요합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;672&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cFM5G0/btsJddph1Ua/CyU5Efxbg7TxcarbgPhMVk/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cFM5G0/btsJddph1Ua/CyU5Efxbg7TxcarbgPhMVk/img.jpg&quot; data-alt=&quot;https://www.finereport.com/en/financial-dashboards&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cFM5G0/btsJddph1Ua/CyU5Efxbg7TxcarbgPhMVk/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcFM5G0%2FbtsJddph1Ua%2FCyU5Efxbg7TxcarbgPhMVk%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;763&quot; height=&quot;401&quot; data-origin-width=&quot;1280&quot; data-origin-height=&quot;672&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;https://www.finereport.com/en/financial-dashboards&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;자료 구조와 데이터 기록 포맷&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터를 효율적으로 저장하고 처리하기 위해 적절한 자료 구조와 기록 포맷을 선택하는 것이 중요합니다. 이러한 선택은 데이터 처리 속도와 정확성에 직접적인 영향을 미칩니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;자료 구조&lt;/b&gt;: 데이터의 저장과 접근 방식을 정의하는 것으로, 효율적인 데이터 처리를 위해 선택해야 합니다. 일반적으로 사용되는 자료 구조로는 배열, 링크드 리스트, 트리, 그래프 등이 있습니다. 예를 들어, 트리 구조는 데이터 계층을 표현하기에 적합하며, 다양한 검색 알고리즘에 활용됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;데이터 기록 포맷&lt;/b&gt;: 데이터를 파일로 저장할 때 사용하는 형식으로, CSV, JSON, XML 등이 대표적입니다. 각 포맷은 데이터의 특성에 맞게 선택해야 하며, 예를 들어 JSON은 반구조화된 데이터를 저장하기에 매우 유용합니다. 다양한 프로그래밍 언어에서 쉽게 파싱할 수 있어 널리 사용됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터의 유형과 구조를 이해하고 적절한 방법으로 이를 처리하는 것은 인공지능 개발자의 중요한 역할입니다. 데이터를 제대로 다룰 수 있어야만 효과적인 모델을 구축하고, 더 나은 성능을 끌어낼 수 있습니다.&lt;/p&gt;</description>
      <category>Data</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/6</guid>
      <comments>https://zip-sa.tistory.com/entry/Data-for-AI-Engineer#entry6comment</comments>
      <pubDate>Fri, 23 Aug 2024 19:51:19 +0900</pubDate>
    </item>
    <item>
      <title>Backpropagation with PyTorch</title>
      <link>https://zip-sa.tistory.com/entry/%EC%97%AD%EC%A0%84%ED%8C%8C-Backpropagation-with-PyTorch</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;역전파 (Backpropagation)&lt;/h3&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. Backpropagation이란?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Backpropagation(역전파)은 신경망에서 학습을 가능하게 하는 핵심 알고리즘입니다. 이 알고리즘은 모델의 예측 결과와 실제 결과 사이의 차이(오차)를 기반으로 가중치와 편향을 조정하여, 모델이 더 정확한 예측을 할 수 있도록 만듭니다. 이 과정은 네트워크의 마지막 층에서부터 첫 번째 층까지 거슬러 올라가며 진행되기 때문에 &quot;역전파&quot;라고 불립니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 계산 그래프 (Computational Graph)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계산 그래프는 복잡한 계산 과정을 시각적으로 표현한 구조입니다. 신경망에서 각 연산을 노드로 나타내고, 이들 간의 관계를 연결하여 표현합니다. 계산 그래프를 사용하면, 각 연산에 대한 미분(gradient)을 효율적으로 계산할 수 있습니다. 이를 통해 네트워크의 가중치를 업데이트하고, 오차를 줄일 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1582&quot; data-origin-height=&quot;574&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bMP6qc/btsI60vim0I/nEFiqruVilsSpKhGwaZkYK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bMP6qc/btsI60vim0I/nEFiqruVilsSpKhGwaZkYK/img.png&quot; data-alt=&quot;출처 : https://zhangruochi.com/Computational-Graph/2019/12/06/&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bMP6qc/btsI60vim0I/nEFiqruVilsSpKhGwaZkYK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbMP6qc%2FbtsI60vim0I%2FnEFiqruVilsSpKhGwaZkYK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1582&quot; height=&quot;574&quot; data-origin-width=&quot;1582&quot; data-origin-height=&quot;574&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : https://zhangruochi.com/Computational-Graph/2019/12/06/&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 연쇄 법칙 (Chain Rule)을 활용한 Backpropagation&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Backpropagation의 핵심 원리는 연쇄 법칙(Chain Rule)을 사용해 그래디언트를 계산하는 것입니다. 연쇄 법칙은 복합 함수의 미분을 계산할 때, 각 중간 단계에서의 미분을 곱하여 전체 미분을 계산하는 방법입니다. 신경망에서는 이 방법을 통해 출력 층에서 입력 층까지 각 가중치에 대한 그래디언트를 계산하게 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;452&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bqaaAJ/btsI5q9LrqZ/vWkaA6chupoEmyQUkuIZZk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bqaaAJ/btsI5q9LrqZ/vWkaA6chupoEmyQUkuIZZk/img.png&quot; data-alt=&quot;출처 : https://medium.com/@El_Fares_Anass/a-basic-explanation-how-the-gradient-descent-is-determined-during-back-propagation-864376f8f1a4&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bqaaAJ/btsI5q9LrqZ/vWkaA6chupoEmyQUkuIZZk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbqaaAJ%2FbtsI5q9LrqZ%2FvWkaA6chupoEmyQUkuIZZk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;700&quot; height=&quot;452&quot; data-origin-width=&quot;700&quot; data-origin-height=&quot;452&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : https://medium.com/@El_Fares_Anass/a-basic-explanation-how-the-gradient-descent-is-determined-during-back-propagation-864376f8f1a4&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. PyTorch로 구현하는 Backpropagation&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 PyTorch를 사용해 간단한 신경망에서 Backpropagation을 구현하는 예제입니다.&lt;/p&gt;
&lt;pre class=&quot;nix&quot;&gt;&lt;code&gt;import torch
import torch.nn as nn
import torch.optim as optim

# 간단한 데이터셋 생성
x = torch.tensor([[1.0], [2.0], [3.0], [4.0]], requires_grad=True)
y = torch.tensor([[2.0], [4.0], [6.0], [8.0]], requires_grad=True)

# 간단한 신경망 정의
model = nn.Sequential(
    nn.Linear(1, 3),
    nn.ReLU(),
    nn.Linear(3, 1)
)

# 손실 함수와 최적화기 정의
criterion = nn.MSELoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)

# 모델 학습
for epoch in range(100):
    # Forward pass
    outputs = model(x)
    loss = criterion(outputs, y)

    # Backward pass and optimization
    optimizer.zero_grad()  # 기울기 초기화
    loss.backward()  # Backpropagation
    optimizer.step()  # 가중치 업데이트

    if (epoch+1) % 10 == 0:
        print(f'Epoch [{epoch+1}/100], Loss: {loss.item():.4f}')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 코드는 간단한 신경망을 정의하고, 주어진 데이터셋을 사용해 학습하는 예제입니다. &lt;code&gt;loss.backward()&lt;/code&gt; 메서드를 통해 Backpropagation이 수행되며, &lt;code&gt;optimizer.step()&lt;/code&gt;을 사용해 가중치가 업데이트됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. 예제로 보는 Backpropagation 과정&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계산 그래프 예제를 통해 Backpropagation이 어떻게 작동하는지 단계별로 설명해보겠습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;예제 함수:&lt;/b&gt;&lt;br /&gt;$$ f(x, y, z) = (x + y) \times z $$&lt;/p&gt;
&lt;p style=&quot;text-align: center;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;주어진 값:&lt;/b&gt;&lt;br /&gt;$$(x = -2), (y = 5), (z = -4)$$&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;Forward Pass&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$(q = x + y = 3)$&lt;/li&gt;
&lt;li&gt;$(f = q \times z = -12)$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Backward Pass&lt;/b&gt;:
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;$( \frac{\partial f}{\partial z} = q = 3 )$&lt;/li&gt;
&lt;li&gt;$( \frac{\partial f}{\partial q} = z = -4 )$&lt;/li&gt;
&lt;li&gt;$( \frac{\partial q}{\partial x} = 1 )$&lt;/li&gt;
&lt;li&gt;$( \frac{\partial q}{\partial y} = 1 )$&lt;/li&gt;
&lt;li&gt;따라서, $( \frac{\partial f}{\partial x} = \frac{\partial f}{\partial q} \times \frac{\partial q}{\partial x} = -4 \times 1 = -4 )$&lt;/li&gt;
&lt;li&gt;$( \frac{\partial f}{\partial y} = \frac{\partial f}{\partial q} \times \frac{\partial q}{\partial y} = -4 \times 1 = -4 )$&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이처럼 Backpropagation을 통해 각 변수의 그래디언트를 계산하여, 네트워크의 가중치를 업데이트할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;결론&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Backpropagation은 신경망의 학습 과정에서 필수적인 역할을 합니다. 이 글에서는 Backpropagation의 원리, 계산 그래프, 연쇄 법칙을 통한 미분 계산, 그리고 PyTorch로 구현하는 방법을 살펴보았습니다. Backpropagation의 이해는 신경망 설계 및 최적화에 매우 중요하며, 이를 바탕으로 더 복잡한 네트워크 구조와 문제를 해결할 수 있습니다.&lt;/p&gt;</description>
      <category>AI/ML</category>
      <category>backpropagation</category>
      <category>Chain rule</category>
      <category>gradient</category>
      <category>neural network</category>
      <category>알고리즘</category>
      <category>역전파</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/5</guid>
      <comments>https://zip-sa.tistory.com/entry/%EC%97%AD%EC%A0%84%ED%8C%8C-Backpropagation-with-PyTorch#entry5comment</comments>
      <pubDate>Fri, 16 Aug 2024 17:36:17 +0900</pubDate>
    </item>
    <item>
      <title>Neural Network: Understanding the Basics and Implementation</title>
      <link>https://zip-sa.tistory.com/entry/Neural-Network-Understanding-the-Basics-and-Implementation</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;Neural Networks (신경망)은 현대 인공지능의 핵심 기술 중 하나로, 복잡한 데이터를 처리하고 다양한 문제를 해결하는 데 널리 사용됩니다. 이 글에서는 Neural Network의 기본 개념을 이해하고, PyTorch를 사용해 간단한 신경망을 구현하는 방법을 살펴보겠습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. What is a Neural Network?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Neural Network는 생물학적 뉴런의 구조와 기능을 본떠 만든 컴퓨팅 시스템입니다. 기본적으로, 신경망은 여러 개의 뉴런(neurons)이 레이어(layer)로 구성되어 있으며, 각 뉴런은 입력을 받아 계산한 후 결과를 다음 레이어로 전달합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신경망의 가장 기본적인 구성 요소는 &lt;b&gt;입력층(input layer)&lt;/b&gt;, &lt;b&gt;은닉층(hidden layers)&lt;/b&gt;, 그리고 &lt;b&gt;출력층(output layer)&lt;/b&gt;입니다. 입력층은 외부 데이터가 들어오는 부분이고, 은닉층은 입력 데이터를 처리하여 유용한 피처를 추출하는 역할을 합니다. 마지막으로 출력층은 최종 예측을 내놓습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;719&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/beRUTb/btsI5wPEEAx/jOzZ4mdhaOU99eypjzRfD1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/beRUTb/btsI5wPEEAx/jOzZ4mdhaOU99eypjzRfD1/img.png&quot; data-alt=&quot;출처 : Overview of a Neural Network&amp;amp;rsquo;s Learning Process&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/beRUTb/btsI5wPEEAx/jOzZ4mdhaOU99eypjzRfD1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeRUTb%2FbtsI5wPEEAx%2FjOzZ4mdhaOU99eypjzRfD1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1400&quot; height=&quot;719&quot; data-origin-width=&quot;1400&quot; data-origin-height=&quot;719&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : Overview of a Neural Network&amp;rsquo;s Learning Process&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. Forward Pass: How Data Flows Through the Network&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Neural Network에서 &lt;b&gt;Forward Pass&lt;/b&gt;는 입력 데이터가 네트워크를 통해 어떻게 전달되고, 결과가 계산되는지를 의미합니다. 이 과정에서 입력 데이터는 각 뉴런의 가중치(weight)와 편향(bias)을 통해 변환되고, 활성화 함수(activation function)를 거쳐 다음 레이어로 전달됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;활성화 함수는 신경망의 출력 값을 비선형적으로 만들어 주며, 네트워크가 복잡한 패턴을 학습할 수 있도록 돕습니다. 자주 사용되는 활성화 함수로는 ReLU(Rectified Linear Unit), 시그모이드(sigmoid), 그리고 소프트맥스(softmax) 함수가 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;$$&lt;br /&gt;\text{y} = \sigma(\mathbf{W} \cdot \mathbf{x} + b)&lt;br /&gt;$$&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 $\mathbf{x}$는 입력 벡터, $\mathbf{W}$는 가중치 행렬, $b$는 편향, $\sigma$는 활성화 함수를 나타냅니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. Backpropagation: Learning from Errors&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Neural Network는 예측을 할 때마다 예측 값과 실제 값의 차이를 계산합니다. 이 차이를 &lt;b&gt;오차(error)&lt;/b&gt;라고 하며, 이를 최소화하기 위해 &lt;b&gt;Backpropagation(역전파)&lt;/b&gt;이라는 학습 알고리즘을 사용합니다. 역전파는 오차를 네트워크의 마지막 층에서부터 첫 번째 층까지 역으로 전파하면서 각 뉴런의 가중치와 편향을 조정합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;역전파 과정은 다음과 같이 이루어집니다:&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;오차 계산&lt;/b&gt;: 손실 함수(loss function)를 사용해 예측 값과 실제 값의 차이를 계산합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;기울기 계산&lt;/b&gt;: 오차에 대한 가중치의 기울기(gradient)를 계산합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;가중치 업데이트&lt;/b&gt;: 경사 하강법(Gradient Descent) 등을 사용해 가중치를 업데이트합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 과정은 오차가 최소화될 때까지 반복됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1050&quot; data-origin-height=&quot;520&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/28CKv/btsI7b4ulGi/GTWdKZ9C9TNxmB2zj4mak1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/28CKv/btsI7b4ulGi/GTWdKZ9C9TNxmB2zj4mak1/img.png&quot; data-alt=&quot;출처 : Gradient Descent vs. Backpropagation: What&amp;amp;rsquo;s the Difference?&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/28CKv/btsI7b4ulGi/GTWdKZ9C9TNxmB2zj4mak1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F28CKv%2FbtsI7b4ulGi%2FGTWdKZ9C9TNxmB2zj4mak1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;757&quot; height=&quot;375&quot; data-origin-width=&quot;1050&quot; data-origin-height=&quot;520&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;출처 : Gradient Descent vs. Backpropagation: What&amp;rsquo;s the Difference?&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. Implementing a Simple Neural Network in PyTorch&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 PyTorch를 사용해 간단한 Neural Network를 구현해 보겠습니다. 이 예제에서는 MNIST 데이터셋을 사용하여 손글씨 숫자를 분류하는 신경망을 구현합니다.&lt;/p&gt;
&lt;pre class=&quot;haskell&quot;&gt;&lt;code&gt;import torch
import torch.nn as nn
import torch.optim as optim
import torchvision
import torchvision.transforms as transforms

# 데이터 로드 및 전처리
transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))])
trainset = torchvision.datasets.MNIST(root='./data', train=True, download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True)

# Neural Network 모델 정의
class SimpleNeuralNet(nn.Module):
    def __init__(self):
        super(SimpleNeuralNet, self).__init__()
        self.fc1 = nn.Linear(28*28, 128)
        self.fc2 = nn.Linear(128, 64)
        self.fc3 = nn.Linear(64, 10)
        self.relu = nn.ReLU()

    def forward(self, x):
        x = x.view(-1, 28*28)  # Flatten the image
        x = self.relu(self.fc1(x))
        x = self.relu(self.fc2(x))
        x = self.fc3(x)  # No activation at the output layer
        return x

# 모델 초기화
model = SimpleNeuralNet()

# 손실 함수 및 최적화 함수 정의
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)

# 모델 학습
for epoch in range(10):
    running_loss = 0.0
    for images, labels in trainloader:
        # Forward pass
        outputs = model(images)
        loss = criterion(outputs, labels)

        # Backward pass and optimization
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()

        running_loss += loss.item()
    print(f'Epoch {epoch+1}, Loss: {running_loss/len(trainloader):.4f}')

print('Finished Training')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 코드는 간단한 3층 신경망을 정의하고, MNIST 데이터셋에 대해 학습하는 예제입니다. &lt;code&gt;nn.Linear&lt;/code&gt; 레이어를 사용하여 각 층을 구현하고, &lt;code&gt;ReLU&lt;/code&gt; 활성화 함수를 사용하여 비선형성을 추가했습니다. 손실 함수로는 &lt;code&gt;CrossEntropyLoss&lt;/code&gt;를, 최적화 알고리즘으로는 &lt;code&gt;SGD&lt;/code&gt;를 사용했습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. Evaluating the Neural Network&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모델이 학습된 후에는 테스트 데이터를 사용하여 모델의 성능을 평가해야 합니다. 이를 위해 정확도(accuracy) 등의 지표를 사용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(모델 평가 결과를 설명하는 이미지)&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;# 모델 평가
correct = 0
total = 0
testset = torchvision.datasets.MNIST(root='./data', train=False, download=True, transform=transform)
testloader = torch.utils.data.DataLoader(testset, batch_size=64, shuffle=False)

with torch.no_grad():
    for images, labels in testloader:
        outputs = model(images)
        _, predicted = torch.max(outputs.data, 1)
        total += labels.size(0)
        correct += (predicted == labels).sum().item()

print(f'Accuracy: {100 * correct / total:.2f}%')&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 코드는 테스트셋을 사용하여 학습된 모델의 정확도를 계산합니다. &lt;code&gt;torch.no_grad()&lt;/code&gt;를 사용하여 평가 시에는 역전파가 발생하지 않도록 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Neural Network는 복잡한 데이터 패턴을 학습하고 예측할 수 있는 강력한 도구입니다. 이 글에서는 기본 개념과 함께 PyTorch를 사용하여 간단한 신경망을 구현하고 학습시키는 과정을 살펴보았습니다. Neural Network의 핵심은 Forward Pass와 Backpropagation을 통해 데이터를 학습시키고, 이를 바탕으로 예측을 최적화하는 데 있습니다. 추후 다양한 아키텍처와 데이터셋을 활용하여 더 복잡한 문제를 해결할 수 있는 신경망을 구현해볼 수 있을 것입니다.&lt;/p&gt;</description>
      <category>AI/ML</category>
      <author>zip-sa</author>
      <guid isPermaLink="true">https://zip-sa.tistory.com/4</guid>
      <comments>https://zip-sa.tistory.com/entry/Neural-Network-Understanding-the-Basics-and-Implementation#entry4comment</comments>
      <pubDate>Fri, 16 Aug 2024 17:17:57 +0900</pubDate>
    </item>
  </channel>
</rss>