<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>몽글하다</title>
    <link>https://monglehae.tistory.com/</link>
    <description></description>
    <language>ko</language>
    <pubDate>Sun, 14 Jun 2026 04:19:47 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>몽글이2</managingEditor>
    <item>
      <title>정리하는 인간이 되자.</title>
      <link>https://monglehae.tistory.com/23</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;평소 사진 찍는 것을 좋아하지도 않고 인스타 그램을 비롯한 SNS도 즐기지 않았다.&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;text-align: justify;&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;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;p data-ke-size=&quot;size16&quot;&gt;네이버 블로그는 뭔가 UI랑 안맞는 건지 복잡다단한 느낌이 들었고,&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;h3 data-ke-size=&quot;size23&quot;&gt;그래서!&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나름 깔끔한 UI가 마음에 들기도 하고 아무도 모르게 내 일상과 생각들을 정리할 수 있는 블로깅을 아주 꾸준히 꾸주우우운히 작성해보려고 한다.&amp;nbsp;&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;더군다나 글로 정리해 두는 일이 필요하다고 느꼈던 적은 일상을 기록하는 일 말고도 다양하다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트를 진행할 때도 프로젝트가 끝나고 나서 했던 일을 정리하려고 하면 'OOO을 했다.'는 1차원적인 내용만 기억이 날뿐 상황이 어떠해서 필요한 방법을 찾다보니 이러한 방법을 실행했고, 어느 부분까지 고민했었는지에 대한 정리가 안된다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;프로젝트를 진행하는 와중에도 노션 페이지를 통해서 자료들을 정리하긴 하지만, 정보들이 쌓일 수록 중구난방이 된다.&amp;nbsp;책을 읽거나, 공부를 하거나, 강의를 듣거나 하는 것들도 그 당시에는 치열하게 고민하고 생각했던 내용들을 정리해 두지 않으니 단발성으로 끝이다. 매우 비효율적이고 낭비라는 생각이 들었다. &amp;nbsp;&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;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;p data-ke-size=&quot;size16&quot;&gt;고민해본 결과 쌓아나가는 힘은 투자하는 절대적인 시간과 비례하는 듯 하다.&amp;nbsp;&lt;/p&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 data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&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 data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;앞으로 정리하는 인간이 되겠다.&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;화이팅&lt;/p&gt;</description>
      <category>하루 티끌</category>
      <category>정리인간 #일상 #생각정리</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/23</guid>
      <comments>https://monglehae.tistory.com/23#entry23comment</comments>
      <pubDate>Fri, 5 Jun 2026 10:10:41 +0900</pubDate>
    </item>
    <item>
      <title>[SDV] SDV가 도대체 뭔데</title>
      <link>https://monglehae.tistory.com/19</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Demilight', 'Noto Sans KR';&quot;&gt;&lt;b&gt;사설&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;size16&quot;&gt;차량 환경을 HW에서 SW로 전환하는 SDV 기술에 관심을 가지게 되었다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;SDV 개발을 위한 배경지식을 넓히려고 보니, 낯선 용어와 내용들이 많아 시간을 들여 공부해 보기 했다.&amp;nbsp;&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; 공부하는 입장이라 단정적으로 말하지 못하지만,, 앞으로 지속적으로 리뷰하면서 수정할 예정이다.&amp;nbsp;&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;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 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;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;SDV 개발이 무엇인가?라는 질문에 답을 해보자.&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Software Defined Vehicle의 약자로, 차량 시스템을 HW에서 SW로 전환하는 전과정을 통칭하는 듯하다.&amp;nbsp;&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;AI에게도 SDV가 무엇인지 물어보았다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&quot;SDV(소프트웨어 정의 차량)는 소프트웨어 업데이트(OTA)로 차량의 기능과 성능을 개선하는 챠량으로,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수십 개의 분산된 ECU를 소수의 고성능 컴퓨터로 통합하는 중앙집중형 전자 아키텍처 전환이 핵심입니다. &quot;&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;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;그럼 SW로의 전환이라는 의미는 뭘까?&lt;/span&gt;&lt;/blockquote&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 data-ke-size=&quot;size16&quot;&gt;물리적인 HW자체의 가치보다 소프트웨어 아키텍처를 적용하여 창출되는 가치가 더 중요해는 것.&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;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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;마지막으로, SW전환을 어떻게 할 수 있을까?&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저, 자동차 내부의 독립적인 전자 제어 장치, ECU를 줄이거나 없애며 통합해야한다.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;ECU가 무엇인지 찾아보면 ECU 자체적으로 데이터를 분석하고 처리하는 일종의 컴퓨터 시스템 같다.&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 alignLeft&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;672&quot; data-origin-height=&quot;444&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/5RHBX/dJMcaib5Uzr/onMMQddBKW3M5drdGKDSv0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/5RHBX/dJMcaib5Uzr/onMMQddBKW3M5drdGKDSv0/img.jpg&quot; data-alt=&quot;[ECU 칩 사진]&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/5RHBX/dJMcaib5Uzr/onMMQddBKW3M5drdGKDSv0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F5RHBX%2FdJMcaib5Uzr%2FonMMQddBKW3M5drdGKDSv0%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;318&quot; height=&quot;210&quot; data-origin-width=&quot;672&quot; data-origin-height=&quot;444&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;[ECU 칩 사진]&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;위키백과의 내용을 참고하면 ECU에 내부에 CPU와 메모리 각종 센서 컨트롤러가 있다는 것으로 보아,&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;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 data-ke-size=&quot;size16&quot;&gt;이는 E/E 아키텍처를 Zone/Central-based로 변환시켜 차세대 E/E아키텍처를 완성하는 것이라고 정리할 수도 있다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;E/E아키텍처는 차량 내 제어기, 센서, 배선 등 전자기 시스템의 통합 구조를 의미함으로&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&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;p data-ke-size=&quot;size16&quot;&gt;다음으로, ECU를 줄이고 통합하기 위해서는 여러 ECU간의 네트워킹이 원활하도록 네트워크 인프라를 구축해야한다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;차량 ECU 네트워킹을 위한 프로토콜을 CAN이라고 하는데, 여러 ECU를 동시에 실시간으로 네트워킹하기 위한 고성능 Multi-CAN 환경을 구축해야 한다.&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;이후는 정확하진 않지만, 유저 데이터와 로그 데이터들을 활용하여 서비스를 개발하고 서비스를 베포하는 일반적인 SW 플랫폼 운영 과정과 유사하지 않을까 싶다.&amp;nbsp;&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;gt; AI 적용 -&amp;gt; 전체 시스템 베포 , MLops 전 과정을 접목하는 것이다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터를 어떻게 수집할지, 대규모 데이터를 서버에서 어떻게 저장할지, 데이터 활용을 위해 어떻게 가공을 할지 고민하고&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전체 파이프라인을 통합하여 데이터, AI, 컨테이너 각 부문별로 오케스트레이션한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;마무리하며,,&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정리하다보니,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;SDV 전환? HW에서 SW 전환! 수준에서 사고가 멈추었었는데&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;구체적으로 SDV 전환을 통해 얻으려는 가치가 무엇인지 구체화된다.&lt;/p&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 data-ke-size=&quot;size16&quot;&gt;앞으로 정확하지 않은 플랫폼 운영 방법론들을 서치해보고,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;현재 사업이 인프라 구축, 엔지니어링 환경, AI 등 각 부문에서 어느수준에 이르렀는지 정리해보아야겠다.&amp;nbsp;&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;p data-ke-size=&quot;size16&quot;&gt;[SDV 관련 용어]&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(1) ECU&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(2)CAN/Multi-CAN1&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(3) SDV&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(4) E/E architecture&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;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;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;p data-ke-size=&quot;size16&quot;&gt;[reference]&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. &lt;span style=&quot;color: #777777; text-align: center;&quot;&gt; &lt;a href=&quot;https://namu.wiki/w/ECU&quot;&gt;https://namu.wiki/w/ECU&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1777445311592&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;ECU&quot; data-og-description=&quot;파일:ECU.jpg 전자제어유닛(Electronic Control Unit) 의 약자다. 이 가운데 순수하게 엔진&quot; data-og-host=&quot;namu.wiki&quot; data-og-source-url=&quot;https://namu.wiki/w/ECU&quot; data-og-url=&quot;https://namu.wiki/w/ECU&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/5zEhm/dJMb8Z3uuRr/fvCiOC5r0DrQk9yDdl4VP0/img.jpg?width=336&amp;amp;height=222&amp;amp;face=0_0_336_222&quot;&gt;&lt;a href=&quot;https://namu.wiki/w/ECU&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://namu.wiki/w/ECU&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/5zEhm/dJMb8Z3uuRr/fvCiOC5r0DrQk9yDdl4VP0/img.jpg?width=336&amp;amp;height=222&amp;amp;face=0_0_336_222');&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;ECU&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;파일:ECU.jpg 전자제어유닛(Electronic Control Unit) 의 약자다. 이 가운데 순수하게 엔진&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;namu.wiki&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;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&quot; target=&quot;_blank&quot; rel=&quot;noopener&amp;nbsp;noreferrer&quot;&gt;2. https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1777445317112&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;E/E아키텍처&quot; data-og-description=&quot;아키텍처 기반 시스템 솔루션을 제공합니다.&quot; data-og-host=&quot;www.hyundai-kefico.com&quot; data-og-source-url=&quot;https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&quot; data-og-url=&quot;https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bGoAvS/dJMb81fVN4w/uhKI5xoKAhLXcCPoBJ8a8K/img.png?width=1200&amp;amp;height=606&amp;amp;face=0_0_1200_606,https://scrap.kakaocdn.net/dn/cEESS1/dJMb86n0Mcx/5jJQwO0tOtlcXUuSeZhSf0/img.jpg?width=700&amp;amp;height=800&amp;amp;face=0_0_700_800&quot;&gt;&lt;a href=&quot;https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://www.hyundai-kefico.com/ko/future-tech/modular-architecture/content.do&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bGoAvS/dJMb81fVN4w/uhKI5xoKAhLXcCPoBJ8a8K/img.png?width=1200&amp;amp;height=606&amp;amp;face=0_0_1200_606,https://scrap.kakaocdn.net/dn/cEESS1/dJMb86n0Mcx/5jJQwO0tOtlcXUuSeZhSf0/img.jpg?width=700&amp;amp;height=800&amp;amp;face=0_0_700_800');&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;E/E아키텍처&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;아키텍처 기반 시스템 솔루션을 제공합니다.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;www.hyundai-kefico.com&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;</description>
      <category>SDV</category>
      <category>논문리뷰</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/19</guid>
      <comments>https://monglehae.tistory.com/19#entry19comment</comments>
      <pubDate>Wed, 29 Apr 2026 16:19:31 +0900</pubDate>
    </item>
    <item>
      <title>[Python] 인터프리터 문제, 빌트인 모듈 간섭 문제</title>
      <link>https://monglehae.tistory.com/18</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #ee2323;&quot;&gt;The&amp;nbsp;file&amp;nbsp;'private_repo/private/code/ml/decorator.py'&amp;nbsp;seems&amp;nbsp;to&amp;nbsp;be&amp;nbsp;overriding&amp;nbsp;built&amp;nbsp;in&amp;nbsp;modules&amp;nbsp;and&amp;nbsp;interfering&amp;nbsp;with&amp;nbsp;the&amp;nbsp;startup&amp;nbsp;of&amp;nbsp;the&amp;nbsp;kernel.&amp;nbsp;Consider&amp;nbsp;renaming&amp;nbsp;the&amp;nbsp;file&amp;nbsp;and&amp;nbsp;starting&amp;nbsp;the&amp;nbsp;kernel&amp;nbsp;again.Click&amp;nbsp;here&amp;nbsp;for&amp;nbsp;more&amp;nbsp;info.&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;size16&quot;&gt;문제 상황 :&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;decorator 실습을 위해 decorator를 활용하여 로그를 남기는 python file 생성후 python 파일 실행&lt;/p&gt;
&lt;pre id=&quot;code_1692162097913&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;python decorator.py&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실행 이후 주피터 노트북 파일을 실행하니 위의 오류로 kernel이 실행되지 않는 문제&amp;nbsp;&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;p data-ke-size=&quot;size16&quot;&gt;원인:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;python의 built in module중 decorator와 겹치는 파일이 있어 문제가 되는 것으로 보임&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;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;decorator.py 파일 이름을 decorator_example.py로 변경 후 문제 해결&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;refer :&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(1) chat-gpt.. ^^&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;(2) &lt;span style=&quot;letter-spacing: 0px;&quot;&gt;&lt;/span&gt;&lt;a style=&quot;letter-spacing: 0px;&quot; href=&quot;https://github.com/microsoft/vscode-jupyter/wiki/Failure-to-start-Kernel-due-to-built-in-modules-being-overridden-by-user-code&quot;&gt;Failure to start Kernel due to built in modules being overridden by user code &amp;middot; microsoft/vscode-jupyter Wiki (github.com)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1692162408045&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;object&quot; data-og-title=&quot;Failure to start Kernel due to built in modules being overridden by user code&quot; data-og-description=&quot;VS Code Jupyter extension. Contribute to microsoft/vscode-jupyter development by creating an account on GitHub.&quot; data-og-host=&quot;github.com&quot; data-og-source-url=&quot;https://github.com/microsoft/vscode-jupyter/wiki/Failure-to-start-Kernel-due-to-built-in-modules-being-overridden-by-user-code&quot; data-og-url=&quot;https://github.com/microsoft/vscode-jupyter/wiki/Failure-to-start-Kernel-due-to-built-in-modules-being-overridden-by-user-code&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bvNwlZ/hyTFiyb31h/6Licfpob20i8xFNXKIi8W0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600&quot;&gt;&lt;a href=&quot;https://github.com/microsoft/vscode-jupyter/wiki/Failure-to-start-Kernel-due-to-built-in-modules-being-overridden-by-user-code&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://github.com/microsoft/vscode-jupyter/wiki/Failure-to-start-Kernel-due-to-built-in-modules-being-overridden-by-user-code&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bvNwlZ/hyTFiyb31h/6Licfpob20i8xFNXKIi8W0/img.png?width=1200&amp;amp;height=600&amp;amp;face=0_0_1200_600');&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;Failure to start Kernel due to built in modules being overridden by user code&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;VS Code Jupyter extension. Contribute to microsoft/vscode-jupyter development by creating an account on GitHub.&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;github.com&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;</description>
      <category>디버깅 노트</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/18</guid>
      <comments>https://monglehae.tistory.com/18#entry18comment</comments>
      <pubDate>Wed, 16 Aug 2023 14:07:59 +0900</pubDate>
    </item>
    <item>
      <title>[Recsys] 추천시스템 주요 논문 리스트 정리</title>
      <link>https://monglehae.tistory.com/17</link>
      <description>&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;논문 리스트&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[Bayesian]&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;BPR: Bayesian Personalized Ranking from Implicit Feedback&lt;/li&gt;
&lt;li&gt;VBPR: visual bayesian personalized ranking from implicit feedback&lt;/li&gt;
&lt;/ul&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;[CF]&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;Collaborative Filtering for Implicit Feedback Datasets&amp;nbsp;&lt;/li&gt;
&lt;li&gt;Collaborative Topic Modeling for Recommending Scientific ArticlesItem-Based Collaborative Filtering Recommendation Algoruthms&lt;/li&gt;
&lt;li&gt;&amp;nbsp;AutoRec:&amp;nbsp;Autoencoders Meet Collaborative Filtering&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[neural network]&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;Deep Neural Networks for Youtube Recommendations&lt;/li&gt;
&lt;li&gt;7. Neural Collaborative Filtering&lt;/li&gt;
&lt;li&gt;Session-based recommendation machine based neural network for CTR prediction&lt;/li&gt;
&lt;li&gt;ITEM2VEC: Neural Item Embedding for Collaborative Filtering&lt;/li&gt;
&lt;li&gt;Neural Gragh Collaborative Filtering&lt;/li&gt;
&lt;li&gt;LightGCN : Simplifying and powering Graph Convolution Network for Recommendation&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;[FM]&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;Factorization Machines&lt;/li&gt;
&lt;li&gt;DeepFM: A Factorization-Machine based Neural Network for CTR Prediction&lt;/li&gt;
&lt;li&gt;Field-aware Factorization Machines for CTR Prediction&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;[기타]&lt;/span&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;Self-attentive&amp;nbsp;sequential recommendation&lt;/li&gt;
&lt;li&gt;BERT4Rec: Sequential recommendation with bidirectional encoder representations from transformer&lt;/li&gt;
&lt;li&gt;Transformers4Rec: Bridging the Gap between NLP and Sequential/Session-Based Recommendation&lt;/li&gt;
&lt;li&gt;Collaborative Denoising Auto-Encoders for Top-N Recommender Systems&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;참고하기&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;1. 추천시스템 모델이 활용하는 &lt;b&gt;데이터의 종류&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;letter-spacing: 0px;&quot;&gt;에는 user 자체의 데이터, item 자체의 데이터, user-item feedback데이터가 있습니다.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;user 데이터&lt;/b&gt;란, 사용자의 이름, 주소, 나이, 전화번호 등에 해당합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;item 데이터&lt;/b&gt;란, 상품의 이름, 제조년도, 제조회사, 상품 사진 등에 해당합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;user-item feedback 데이터&lt;/b&gt;란,&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;유저가 상품에 대한 기호를 나타내는 데이터로&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;유저가 상품에 대한 기호를 직접적으로 평가한 explicit feedback과&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;유저가 상품에 대한 기호를 간접적으로 평가한 implicit feedback이 존재합니다.&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;간접적인 평가란,&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;예를들어 유튜브 유저가 어떠한 동영상을 처음부터 끝까지 페이지를 나가지 않고 시청했다면&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그 동영상을 재미있게 시청했다고 유추해볼 수 있고, 동영상을 끝까지 시청하지 않고 중간에 나왔다면&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; data-ke-size=&quot;size16&quot;&gt;그 동영상을 지루하다고 느꼈음을 유추해볼 수 있는 것 처럼&lt;/p&gt;
&lt;p style=&quot;color: #333333; text-align: start;&quot; 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;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 추천시스템의 경우&amp;nbsp; user-item간의 다양한 interaction에 대한 data 확보가 어렵기 때문에&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;데이터간의 interaction을&amp;nbsp; 여러 layer로 생성하는 딥러닝 모델을 활용할 경우 과적합이 발생할 가능성이 높아집니다.&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;이러한 이유로 추천시스템에서는 다른 도메인(CV,NLP)분야에 비해서 딥러닝 모델이 비교적 적게 사용되고&lt;/p&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 data-ke-size=&quot;size16&quot;&gt;또한, 이러한 문제를 해결하기 위해 데이터의 특성을 고려하여 특성에 맞는 머신러닝모델과 딥러닝모델을 결합한 모델을 활용하는 등의 방법을 모색할 수 있습니다. ex) FM + DCN&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;정리하기&lt;/blockquote&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;추천시스템의 경우 전통적인 아이디어인 Collaborative Filtering를 발전시킨 다양한 모델과 관련된 논문들이 있습니다.&lt;/li&gt;
&lt;li&gt;attention, BPR, Autoencoder, gragh구조 등 추천시스템이라는 도메인을 떠나서 중요 topic이 활용됨을 알 수 있습니다.&lt;/li&gt;
&lt;li&gt;NLP의 Word2vec 아이디어를 활용한 ITEM2VEC, BERT4Rec, Denoising 등 다른 도메인에서 효과적인 모델의 아이디어를 활용함을 알 수 있습니다.&lt;/li&gt;
&lt;li&gt;user-item의 feedback data만을 활용하는 CF 모델의 한계를 보완하기 위해, 다양한 feature또는 문맥을 고려하는 FM계열의 모델을 확인할 수 있습니다.&lt;/li&gt;
&lt;/ol&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;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고링크 : &lt;a href=&quot;https://blog.naver.com/boostcamp_official/222942213787&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://blog.naver.com/boostcamp_official/222942213787&lt;/a&gt;&lt;/p&gt;</description>
      <category>ML＆DL/추천시스템</category>
      <category>Ai</category>
      <category>CF</category>
      <category>dnn</category>
      <category>fm</category>
      <category>Recommendation System</category>
      <category>RecSys</category>
      <category>논문</category>
      <category>부스트캠프</category>
      <category>부스트캠프5기</category>
      <category>추천</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/17</guid>
      <comments>https://monglehae.tistory.com/17#entry17comment</comments>
      <pubDate>Sun, 30 Apr 2023 03:18:09 +0900</pubDate>
    </item>
    <item>
      <title>[Recsys] 추천시스템 Task란?</title>
      <link>https://monglehae.tistory.com/16</link>
      <description>&lt;blockquote data-ke-style=&quot;style1&quot;&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주요 추천 시스템 분류&lt;/p&gt;
&lt;/blockquote&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;유사한 아이템 추천 : 아이템의 정보들을 임베딩(Embedding)하여, 전체 아이템 중 유사한 아이템을 추천&lt;/li&gt;
&lt;li&gt;인기도기반 아이템 추천 : 가장 많은 인터렉션이 발생한 아이템을 추천&lt;/li&gt;
&lt;li&gt;개인화 추천: 아이템, 유저, 상호작용 데이터를 활용하여 딥러닝 모델을 통해 개인화된 추천 결과 제공&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;blockquote data-ke-style=&quot;style2&quot;&gt;더 생각해 보기&lt;/blockquote&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 함께 구매한 아이템 추천&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;해당 아이디어는&amp;nbsp; &quot;&lt;b&gt;동일한 아이템을 구매했다는 이유 하나만으로 유사한 선호도를 가진 유저일 수 있다&lt;/b&gt;&quot;는 가정에서 시작한다. 이는 단일 원인만 고려한 것으로 예측의 정확도를 보장하기 어려울 확률이 높다.&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;예를 들어, A유저와 B유저가 동일하게 a상품을 구매했고 이때 A유저가 b상품을 함께 구매했다면, 해당 알고리즘 원리에 의해 B유저에게 b상품을 추천한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만, A유저가 b아이템을 구매한 이유가 가족이 판매하는 상품이라서 구매했다면 B유저에게는 엉뚱한 상품을 추천하게된다. 이렇듯 기호에 의한 선택으로 보기 어려운 요인들은 추천의 정확도를 떨어뜨린다.&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;A한사람이 아닌 집단으로&lt;/b&gt; 변경하는 아이디어로 예측 성능을 높일 수 있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;a상품을 구매한 B유저에게 추천할 상품을 a상품을 구매한 A한사람이 아니라, a상품을 구매한 집단중에서 또다시 동일하게 구매한 횟수가 높은 상품을 추천함으로써 정확도를 높이는 것이다.&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;2. 유사한 아이템 추천 :&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이템의 정보들을 임베딩(Embedding)하여, 전체 아이템 중 유사한 아이템을 추천&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 유저가 상품을 구매한 데이터가 부족한 Cold start 상황에서 활용가능&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;3.인기도기반 아이템 추천 :&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 많은 인터렉션이 발생한 아이템을 추천&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;rarr; 인기도가 높은 몇몇 소수의 상품만을 활용하는 한계가 있다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; 때문에 기업입장에서는 차별성을 가지고 다양한 상품을 개인화된 선호에 맞게 추천해주는 개인화 추천 시스템이 필요하다.&amp;nbsp;&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;4.개인화 추천:&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;아이템, 유저, 상호작용(Feedback) 데이터를 활용하여 딥러닝 모델을 통해 개인화된 추천 결과 제공한다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &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;General Recommendation: BPR, ItemKNN,ConvNCF,NGCF,RecVAE&amp;hellip;&lt;/li&gt;
&lt;li&gt;Sequential Recommendation: RepeatNet, GRU4Rec, SASRecF, BERT4Rec, FDSA,&amp;hellip;&lt;/li&gt;
&lt;li&gt;Context-Aware Recommendation : WideDeep, DeepFM, FFM,Autoint,PNN,FM&amp;hellip;&lt;/li&gt;
&lt;li&gt;Knowledge-Aware Recommendation : CKE, CFKG, RippleNet, KGAT&amp;hellip;&lt;/li&gt;
&lt;/ul&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;p data-ke-size=&quot;size16&quot;&gt;위의 내용은 부스트캠프 블로그 글의 내용을 일부 참고하였습니다!&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;참고링크 : &lt;a href=&quot;https://blog.naver.com/boostcamp_official/222942213787&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://blog.naver.com/boostcamp_official/222942213787&lt;/a&gt;&lt;/p&gt;</description>
      <category>ML＆DL/추천시스템</category>
      <category>Ai</category>
      <category>CF</category>
      <category>ContentsBased</category>
      <category>ItemBased</category>
      <category>RecSys</category>
      <category>UserBased</category>
      <category>부스트캠프</category>
      <category>인기도기반</category>
      <category>추천시스템</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/16</guid>
      <comments>https://monglehae.tistory.com/16#entry16comment</comments>
      <pubDate>Sun, 30 Apr 2023 02:49:18 +0900</pubDate>
    </item>
    <item>
      <title>[Topic] 로버스트 리딩(Robust Reading)/ 광학문자인식(OCR)</title>
      <link>https://monglehae.tistory.com/13</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;background-color: #e6f5ff; color: #0070d1;&quot; href=&quot;https://n.news.naver.com/mnews/article/119/0002705642&quot;&gt;韓 AI 스타트업 일냈다&amp;hellip;업스테이지, 국제 AI 경진대회 4부문 석권 (naver.com)&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1682345521686&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;韓 AI 스타트업 일냈다&amp;hellip;업스테이지, 국제 AI 경진대회 4부문 석권&quot; data-og-description=&quot;인공지능(AI) 광학문자인식(OCR) 세계 최고 권위 대회 &amp;lsquo;ICDAR 로버스트 리딩 컴페티션&amp;rsquo;에서 업스테이지가 4개 부문을 석권하며 글로벌 톱 AI기술력을 뽐냈다. 업스테이지는 지난 21일 국제패턴인&quot; data-og-host=&quot;n.news.naver.com&quot; data-og-source-url=&quot;https://n.news.naver.com/mnews/article/119/0002705642&quot; data-og-url=&quot;https://n.news.naver.com/mnews/article/119/0002705642&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/dtIc2P/hySoEpk5DA/itV0DQRlbEicYAgj6AoC91/img.jpg?width=700&amp;amp;height=302&amp;amp;face=0_0_700_302,https://scrap.kakaocdn.net/dn/doxg6G/hySotH7ATm/utSZJTaiwjgWJstDnm5qnk/img.jpg?width=700&amp;amp;height=302&amp;amp;face=0_0_700_302&quot;&gt;&lt;a style=&quot;color: #000000;&quot; href=&quot;https://n.news.naver.com/mnews/article/119/0002705642&quot; data-source-url=&quot;https://n.news.naver.com/mnews/article/119/0002705642&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/dtIc2P/hySoEpk5DA/itV0DQRlbEicYAgj6AoC91/img.jpg?width=700&amp;amp;height=302&amp;amp;face=0_0_700_302,https://scrap.kakaocdn.net/dn/doxg6G/hySotH7ATm/utSZJTaiwjgWJstDnm5qnk/img.jpg?width=700&amp;amp;height=302&amp;amp;face=0_0_700_302');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; style=&quot;color: #000000;&quot; data-ke-size=&quot;size16&quot;&gt;韓 AI 스타트업 일냈다&amp;hellip;업스테이지, 국제 AI 경진대회 4부문 석권&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; style=&quot;color: #909090;&quot; data-ke-size=&quot;size16&quot;&gt;인공지능(AI) 광학문자인식(OCR) 세계 최고 권위 대회 &amp;lsquo;ICDAR 로버스트 리딩 컴페티션&amp;rsquo;에서 업스테이지가 4개 부문을 석권하며 글로벌 톱 AI기술력을 뽐냈다. 업스테이지는 지난 21일 국제패턴인&lt;/p&gt;
&lt;p class=&quot;og-host&quot; style=&quot;color: #909090;&quot; data-ke-size=&quot;size16&quot;&gt;n.news.naver.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오늘 4월 24일 AI 스타트업 회사인 업스테이지(upstage)가 ICDAR(International Conference on Document Analysis &amp;amp; Recognition) 대회에서&amp;nbsp; 4개부문을 석권했다고 합니다.&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;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;p data-ke-size=&quot;size16&quot;&gt;기사에 따르면,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫번째, Upstage는 OCR의 문자 검출 기술과 인식기술 모두에서 아마조느 엔비디아, 등등 글로벌 빅테크 기업들과의 경쟁에서 높은 점수를 기록했다고 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또한, &quot;단순&lt;span style=&quot;background-color: #ffffff; color: #303038; text-align: start;&quot; data-hook=&quot;tip&quot; data-type=&quot;arken&quot; data-lang=&quot;en&quot;&gt;OCR&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #303038; text-align: start;&quot;&gt;기술만으로 좋은 평가를 받을 수 없는&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #303038; text-align: start;&quot; data-hook=&quot;tip&quot; data-type=&quot;arken&quot; data-lang=&quot;en&quot;&gt;VQAonBD&lt;/span&gt;&lt;span style=&quot;background-color: #ffffff; color: #303038; text-align: start;&quot;&gt;&lt;span&gt;&amp;nbsp;&lt;/span&gt;종목에서도 업스테이지는 2위와 엄청난 점수 차이로 글로벌 톱의 성적을 거뒀다&quot; 라고 합니다.&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;size16&quot;&gt;위의 내용을 좀 더 이해해 보기 위해 로버스트 리딩(Robust Reading)과 광학문자인식(OCR) 분야의 대략적인 정보를 정리해보았습니다.&amp;nbsp;&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;OCR&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 광학문자인식(OCR)이란?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCR은&amp;nbsp; 이미지와 동영상과 같은 비정형 데이터에서 텍스트를 추출하여 기계가 읽을 수 있는 텍스트 포맷으로 변환하는 과정으로 대개 인쇄된 문서나 손글씨와 같은 텍스트 데이터를 인식하는데 사용됩니다.&amp;nbsp;&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;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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCR의 유형으로는 문자의 위치를 찾는 검출 기술과 문자가 무엇인지 알아내는 인식 기술로 나뉜고&lt;/p&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 data-ke-size=&quot;size16&quot;&gt;2. OCR의 작동 방식&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;이미지 획득 &amp;rarr; 전처리 &amp;rarr; 텍스트 인식(패턴매칭,특징 추출) &amp;rarr; 후처리&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; 이미지 획득&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; : 스캐너를 통해 문서를 읽어들여 이진 데이터로 변환 (밝은부분: 배경/어두운부분 :텍스트)&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; 전처리&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; : 기울기 보정, 정렬문제 해결, 얼룩제거, 가장자리 정리 등을 수행하여 오류를 제거하고 읽을 수 있도록 준비&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; 텍스트 인식&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; : 패턴인식 - 저장된 글리프(문자 이미지)가입력된 글리프와 비슷한 폰트 및 크기를 가진 경우에 인식됩니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; : 특징추출 - 글리프를 선, 닫힌 고리, 선 방향 및 선 교차와 같은 특징으로 나누거나 분리하고 저장된 글리프 가운데&amp;nbsp; 추출한 글리프와&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 가장 유사한, 가까운 글리프를 찾아냅니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; 후처리&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; : 분석이 끝나면 시스템은 추출된 텍스트 데이터를 컴퓨터 파일로 변환합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. OCR은 CV도메인인가 NLP 도메인 인가?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCR 작업 자체는 이미지나 동영상과 같은 비정형 데이터에서 텍스트를 추출하는 것으로 CV 도메인에 속하며, OCR이 추출한 텍스트를 가지고 할 수 있는 NLP 작업(텍스트 분류, 감성 분석, 기계 번역 등)은 NLP 도메인에 속합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;Robust Reading&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. Robust&amp;nbsp;Reading&amp;nbsp;분야와&amp;nbsp;OCR&amp;nbsp;분야의&amp;nbsp;차이가&amp;nbsp;뭐야?&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCR은&amp;nbsp;이미지나&amp;nbsp;동영상과&amp;nbsp;같은&amp;nbsp;비정형&amp;nbsp;데이터에서&amp;nbsp;텍스트를&amp;nbsp;추출하여&amp;nbsp;인식하는&amp;nbsp;작업을&amp;nbsp;의미합니다.&amp;nbsp;OCR은&amp;nbsp;대개&amp;nbsp;인쇄된&amp;nbsp;문서나&amp;nbsp;손글씨와&amp;nbsp;같은&amp;nbsp;텍스트&amp;nbsp;데이터를&amp;nbsp;인식하는&amp;nbsp;데&amp;nbsp;사용됩니다.&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;Robust&amp;nbsp;Reading은&amp;nbsp;OCR과&amp;nbsp;관련이&amp;nbsp;있지만,&amp;nbsp;OCR보다&amp;nbsp;더&amp;nbsp;넓은&amp;nbsp;범위를&amp;nbsp;다룹니다.&amp;nbsp;Robust&amp;nbsp;Reading은&amp;nbsp;대용량&amp;nbsp;데이터에서&amp;nbsp;정확하고&amp;nbsp;효과적으로&amp;nbsp;텍스트를&amp;nbsp;추출하는&amp;nbsp;것&amp;nbsp;뿐만&amp;nbsp;아니라,&amp;nbsp;다양한&amp;nbsp;글꼴,&amp;nbsp;불명확한&amp;nbsp;문자,&amp;nbsp;배경&amp;nbsp;노이즈&amp;nbsp;등과&amp;nbsp;같은&amp;nbsp;다양한&amp;nbsp;환경에서&amp;nbsp;텍스트를&amp;nbsp;인식하는&amp;nbsp;것을&amp;nbsp;목표로&amp;nbsp;합니다.&amp;nbsp;이는&amp;nbsp;OCR&amp;nbsp;기술을&amp;nbsp;넘어서서&amp;nbsp;텍스트&amp;nbsp;인식에&amp;nbsp;관련된&amp;nbsp;전반적인&amp;nbsp;문제를&amp;nbsp;해결하는&amp;nbsp;데&amp;nbsp;초점을&amp;nbsp;맞추고&amp;nbsp;있습니다.&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;따라서, OCR분야는 특정한 유형의 문서에 초점을 맞춘 텍스트 인식 기술을 개발하는 분야라고 볼 수 있으며,&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Robust Reading은 OCR의 한계를 넘어 다양한 조건에서 텍스트를 인식하는 기술을 개발하는 것을 목표로 하고 있습니다.&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;p data-ke-size=&quot;size16&quot;&gt;참고:&lt;a href=&quot;https://aws.amazon.com/ko/what-is/ocr/&quot;&gt;OCR이란 무엇인가요? - 광학 문자 인식 설명 - AWS (amazon.com)&lt;/a&gt;&lt;/p&gt;</description>
      <category>information</category>
      <category>Ai</category>
      <category>ICDAR</category>
      <category>ocr</category>
      <category>RobustReading</category>
      <category>tech</category>
      <category>upstage</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/13</guid>
      <comments>https://monglehae.tistory.com/13#entry13comment</comments>
      <pubDate>Mon, 24 Apr 2023 23:08:18 +0900</pubDate>
    </item>
    <item>
      <title>[성능 최적화]_EDA</title>
      <link>https://monglehae.tistory.com/6</link>
      <description>&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;1. 데이터 구조 분석&lt;/b&gt;&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;&amp;nbsp; &amp;nbsp; - shape , info() , head()&amp;nbsp; : 데이터의 크기, 데이터의 타입, 데이터의 내용을 확인합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - df.isna().sum(), df.isna().mean() : 결측치의 갯수와 결측치의 비율을 확인합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - df.duplicated().sum() : 중복되는 행의 갯수를 확인합니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - df.describe() :&amp;nbsp; 수치형 데이터의 컬럼별&amp;nbsp; 갯수, mean, std, min, max, 4분위수를 확인합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - df.nunique(): 데이터의 컬럼별 고유값의 갯수를 확인합니다.&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;2. 데이터 정제&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - object 타입의 경우 대/소문자의 의미 차이가 없는 경우 모두 소문자로 통일해 줍니다. &lt;b&gt;⇾ apply()&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; 이때, 'id'와 같이 고유값 컬럼의 경우 건드리지 않습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - 정규표현식을 활용하여 데이터의 노이즈를 제거해줍니다. &lt;b&gt;⇾ re.sub(r'[^a-zA-Z,]', '', data))&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - 빈칸 제거하기 &lt;b&gt;⇾ strip()&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - 결측값 채우기 &lt;b&gt;⇾ 방법론에 대한 다양한 고민이 필요했습니다. &lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/b&gt;&lt;b&gt;apply, df.sub(남길것 정규표현식, 대체할 내용, 대상), split(), strip(), replace()&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/b&gt;방법론&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;: 결측값을 대체할 대체값을 찾을 때, 결측치를 채워야 하는 A컬럼에 대한 다른 컬럼값의 편차의 평균을 구해봅니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;편차가 적은 경우 해당 컬럼을 기준으로 대체값을 설정했을때 오차가 줄어든다는 아이디어 입니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A컬럼에 대해 다른 컬럼을 참조할 때, 참조하는 컬럼의 갯수를 1개에서 그치지 않고, 2개까지 참조해볼 수 있습니다.&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #006dd7;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;⇾ 2개의 컬럼을 참조할 때 표준편차가 가장 작은 경우를 1순위&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;b&gt;⇾ &lt;b&gt;2개의 컬럼을 참조할 때 표준편차가 두번째로 작은 경우를 2순위&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;color: #456771;&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;b&gt;&lt;b&gt;⇾ 1개의 컬럼을 참조할 때 표준편차가 첫번째로 작은 경우를 3순위&lt;/b&gt;&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;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size18&quot;&gt;&lt;b&gt;3. 데이터의 모델 피딩을 통해 데이터 특성 파악하기&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;- 1차로 정제된 데이터를 모델에 피딩하여 성능 확인하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;- 성능 확인 :&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;b&gt;⇾ cv = StratifiedKFold(n_splits=n_splits, random_state=42, shuffle=True)&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; ⇾ cross_val_score(creg, X, y, cv = cv, scoring = make_scorer(rmse))&amp;nbsp;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; : 성능지표 = rmse / cross-validation = StratifiedKFold&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - feature importance 확인&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;b&gt;⇾ get_feature_importance()&lt;/b&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;3. 결론 도출&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&amp;nbsp; &amp;nbsp; -&amp;nbsp; feature importance가 높은 data 확인 &lt;b&gt;⇾ &lt;span style=&quot;color: #ee2323;&quot;&gt;추가적인 EDA 필요성 확인, EDA 필요 부분 확인&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; -&amp;nbsp; 데이터 특성 상어떤 모델을 사용하는 것이 강점이 있을지 확인&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&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;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>ML＆DL</category>
      <category>dl</category>
      <category>Eda</category>
      <category>ML</category>
      <category>python</category>
      <category>모델성능</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/6</guid>
      <comments>https://monglehae.tistory.com/6#entry6comment</comments>
      <pubDate>Tue, 18 Apr 2023 04:50:36 +0900</pubDate>
    </item>
    <item>
      <title>apply</title>
      <link>https://monglehae.tistory.com/5</link>
      <description>&lt;pre id=&quot;code_1681757716730&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def age_group(age):
    if age &amp;lt; 30:
        return '20s'
    elif age &amp;lt; 40:
        return '30s'
    else:
        return '40s+'

df['age_group'] = df.apply(lambda row: age_group(row['age']), axis=1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;apply는 pandas에서 제공하는 &lt;b&gt;메서드(Method)&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;메서드는 객체의 속성(attribue)를 조작하거나 객체 내부의 상태를 변경하는데 사용됩니다.&amp;nbsp;&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;기본적으로 데이터프레임이나 시리즈의 column에 함수를 적용하며,&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;axis를 설정하여 row방향으로 함수를 적용할 수도 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Noto Sans Light';&quot;&gt;&lt;b&gt;[열에 함수 적용하기]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1681757440461&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def capitalize_name(name):
    return name.capitalize()

df['name'] = df['name'].apply(capitalize_name)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일반적으로 column 별로 함수를 적용합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위와 같이 capitalize 함수를 커스터마이징 하여 생성한 함수를 apply에 적용할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size14&quot;&gt;&lt;span style=&quot;font-family: 'Nanum Gothic';&quot;&gt;&lt;b&gt;[행에 함수 적용하기]&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1681758699773&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;def age_group(age):
    if age &amp;lt; 30:
        return '20s'
    elif age &amp;lt; 40:
        return '30s'
    else:
        return '40s+'

#df['age_group'] = df['age'].apply(age_group)
df['age_group'] = df.apply(lambda row: age_group(row['age']), axis=1)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;axis를 사용하여 행별로&amp;nbsp; apply를 적용한 예시 입니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하지만 저는 df['age'].apply를 적용하는 코드 형식이 결과는 동일한데 더 편한 것 같습니다.&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>하루 티끌/[Python] 라이브러리, 매소드,내장함수</category>
      <category>apply</category>
      <category>pandas</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/5</guid>
      <comments>https://monglehae.tistory.com/5#entry5comment</comments>
      <pubDate>Tue, 18 Apr 2023 04:14:32 +0900</pubDate>
    </item>
    <item>
      <title>정보 링크(23.08.03)</title>
      <link>https://monglehae.tistory.com/4</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;re.sub&lt;/b&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://ponyozzang.tistory.com/335&quot;&gt;https://ponyozzang.tistory.com/335&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1681758339206&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;Python 정규 표현식(re.sub)을 이용한 문자열 치환 방법 및 예제&quot; data-og-description=&quot;파이썬에서 문자열을 치환해주는 메서드로 replace가 있습니다. 이번에는 replace 메서드로 문자열을 치환하는 방법이 아닌 정규 표현식을 이용하여 문자열을 치환해보도록 하겠습니다. 정규 표현&quot; data-og-host=&quot;ponyozzang.tistory.com&quot; data-og-source-url=&quot;https://ponyozzang.tistory.com/335&quot; data-og-url=&quot;https://ponyozzang.tistory.com/335&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/f9Cd4/hySkVcYgN0/bz6WhJgpUfUKHcCvZ4e7s0/img.png?width=300&amp;amp;height=300&amp;amp;face=0_0_300_300,https://scrap.kakaocdn.net/dn/b8V5gA/hySiWLmcUq/8QnFJTXwf4RNMvWi7axY7k/img.png?width=300&amp;amp;height=300&amp;amp;face=0_0_300_300&quot;&gt;&lt;a href=&quot;https://ponyozzang.tistory.com/335&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://ponyozzang.tistory.com/335&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/f9Cd4/hySkVcYgN0/bz6WhJgpUfUKHcCvZ4e7s0/img.png?width=300&amp;amp;height=300&amp;amp;face=0_0_300_300,https://scrap.kakaocdn.net/dn/b8V5gA/hySiWLmcUq/8QnFJTXwf4RNMvWi7axY7k/img.png?width=300&amp;amp;height=300&amp;amp;face=0_0_300_300');&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;Python 정규 표현식(re.sub)을 이용한 문자열 치환 방법 및 예제&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;파이썬에서 문자열을 치환해주는 메서드로 replace가 있습니다. 이번에는 replace 메서드로 문자열을 치환하는 방법이 아닌 정규 표현식을 이용하여 문자열을 치환해보도록 하겠습니다. 정규 표현&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;ponyozzang.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;h3 style=&quot;background-color: #ffffff; color: #ffffff; text-align: left;&quot; data-ke-size=&quot;size23&quot;&gt;&lt;b&gt;&lt;span style=&quot;color: #000000;&quot;&gt;*args와 **kwargs&lt;/span&gt;&lt;/b&gt;&lt;/h3&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;a href=&quot;https://brunch.co.kr/@princox/180&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://brunch.co.kr/@princox/180&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1681759012444&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;[나름 중급 파이썬1] *args와 **kwargs&quot; data-og-description=&quot;항상 헷갈리는 두 가지 다시 한번 살펴보자 | 이 글은 파이썬의 문법을 모르면 이해하기 어렵습니다. python의 함수 작성 요령, 인자(argument)와 파라미터를 이해한다면 도움이 되는 내용입니다. 아&quot; data-og-host=&quot;brunch.co.kr&quot; data-og-source-url=&quot;https://brunch.co.kr/@princox/180&quot; data-og-url=&quot;https://brunch.co.kr/@princox/180&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/cK4vcU/hySi4P9aqd/I6NpmatUy6Z0almEnRgEA1/img.jpg?width=273&amp;amp;height=184&amp;amp;face=0_0_273_184,https://scrap.kakaocdn.net/dn/bG6aBO/hySkUSFEF8/TEvBGvmoq8CebP1fGBdtL1/img.jpg?width=500&amp;amp;height=500&amp;amp;face=0_0_500_500,https://scrap.kakaocdn.net/dn/c3cEiK/hySi7szwHO/bnIlySi2FWkrT0YdI2wHZ0/img.jpg?width=1124&amp;amp;height=453&amp;amp;face=0_0_1124_453&quot;&gt;&lt;a href=&quot;https://brunch.co.kr/@princox/180&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://brunch.co.kr/@princox/180&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/cK4vcU/hySi4P9aqd/I6NpmatUy6Z0almEnRgEA1/img.jpg?width=273&amp;amp;height=184&amp;amp;face=0_0_273_184,https://scrap.kakaocdn.net/dn/bG6aBO/hySkUSFEF8/TEvBGvmoq8CebP1fGBdtL1/img.jpg?width=500&amp;amp;height=500&amp;amp;face=0_0_500_500,https://scrap.kakaocdn.net/dn/c3cEiK/hySi7szwHO/bnIlySi2FWkrT0YdI2wHZ0/img.jpg?width=1124&amp;amp;height=453&amp;amp;face=0_0_1124_453');&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;[나름 중급 파이썬1] *args와 **kwargs&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;항상 헷갈리는 두 가지 다시 한번 살펴보자 | 이 글은 파이썬의 문법을 모르면 이해하기 어렵습니다. python의 함수 작성 요령, 인자(argument)와 파라미터를 이해한다면 도움이 되는 내용입니다. 아&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;brunch.co.kr&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간단히 하면 *args는 튜플 값 **kwarg는 딕셔너리 값을 받는 것&lt;/p&gt;</description>
      <category>하루 티끌/[Python] 라이브러리, 매소드,내장함수</category>
      <category>pandas</category>
      <category>python</category>
      <category>정규표현식</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/4</guid>
      <comments>https://monglehae.tistory.com/4#entry4comment</comments>
      <pubDate>Tue, 18 Apr 2023 04:07:16 +0900</pubDate>
    </item>
    <item>
      <title>[성능 최적화]_개요</title>
      <link>https://monglehae.tistory.com/3</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;방법&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 데이터를 사용한 성능 최적화&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 알고리즘을 이용한 성능 최적화&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 알고리즘 튜닝을 이용한 성능 최적화&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 앙상블을 이용한 성능 최적화&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. 하이퍼파라미터를 이용한 성능 최적화&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;p data-ke-size=&quot;size16&quot;&gt;&amp;lt;흐름&amp;gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1. 데이터 EDA를 통해 결측값, 노이즈 제거, 이상치 확인, Cardinality조정&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2. 데이터에서 얻은 인사이트를 토대로 알고리즘에 적용해보기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3. 알고리즘 튜닝을 통해 성능 향상하기&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - 과적합 여부 확인(네트워크 구조 변경, 에포크 수 조정) / 가중치 조절 / 학습률 조절&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp; &amp;nbsp; - 배치와 에포크 조정, 활성화 함수와 손실함수 변경(주의필요)&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4. 데이터별 상황별 상이한 모델을 앙상블&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5. optuna를 활용한 최적의 하이퍼파라미터 찾기&amp;nbsp;&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;</description>
      <category>ML＆DL</category>
      <author>몽글이2</author>
      <guid isPermaLink="true">https://monglehae.tistory.com/3</guid>
      <comments>https://monglehae.tistory.com/3#entry3comment</comments>
      <pubDate>Tue, 18 Apr 2023 03:02:23 +0900</pubDate>
    </item>
  </channel>
</rss>