Skip to main content

SAFER package

Project description

SAFER

This guide provides SAFER model module

Baseline

  • Baseline
    • data_processing_m1
      • init.py
      • crf_data.py
      • location_data.py
      • sensor_data.py
    • data_processing_m2
      • init.py
      • crf_data.ppy
      • location_data.py
      • sensor_data.py
    • model1
      • init.py
      • model
        • tft_model.pkl
      • dataloader.py
      • model.py
      • predictor.py
    • model2
      • model
        • final_model.pkl
      • dataloader.py
      • model.py
      • preictor.py
    • setup.py
    • init.py
    • README.md

How To Use

Start pip install

!pip install saferx

m1

m1 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M1LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  
  1. sensor data
    # saferx 패키지에서 M1SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M1SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M1DataProcessor()
  # 데이터 로드
  location_data, sensor_data, crf_data, trait_data = processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )
  # 위치와 센서 데이터 병합
  merged_data = processor.merge_location_and_sensor()

  # CRF 데이터 병합
  merged_data_with_crf = processor.process_crf_data()

  # 성향 데이터 병합
  merged_data_with_traits = processor.merge_trait_data()

  # 자살 플래그 설정
  suicide_flags = [('John Doe', pd.Timestamp('2024-01-15 08:00:00'))]
  merged_data_with_flags = processor.clean_and_set_suicide_flag(suicide_flags)

  # 자해 발생 데이터 필터링
  filtered_data = processor.filter_data_for_self_harm_and_random()

  # 결과 확인
  print(filtered_data.head())
      

m1 model

  import torch
  import saferx
    # 데이터 경로 설정
    data_paths = ['merged_data_m1.csv']

    # PredictionHandler 객체 생성 (모델 경로는 고정)
    predictor = saferx.PredictionHandler(data_paths, batch_size=16, device='cpu')
   
    # 예측 수행
    predictions = predictor.predict()

    print(predictions)

m2

m2 data processing

  1. location data
  # Location 데이터 
    import saferx

  # saferx 패키지에서 LocationProcessor 사용
    location_processor = saferx.M2LocationProcessor()

  # CSV 파일에서 데이터 로드 및 전처리
    file_path = 'path_to_location_data.csv'
    processed_data = location_processor.load_data_from_csv(file_path)

  # 엔트로피 및 위치 가변성 계산
    resampled_data = location_processor.resample_and_calculate(processed_data)

  # 위치 레이블 할당
    location_dict = {
        (37.7749, -122.4194): 'hallway',
        (34.0522, -118.2437): 'ward'
    }
    labeled_data = location_processor.assign_location_labels(processed_data, location_dict)
  1. sensor data
      # saferx 패키지에서 M2SensorDataProcessor 사용
      import saferx

      # M1SensorDataProcessor 인스턴스 생성
      sensor_processor = saferx.M2SensorDataProcessor()

      # 센서 데이터 로드
      sensor_data = sensor_processor.load_sensing_data('path_to_sensor_data.csv')

      # 센서 데이터 처리
      processed_data = sensor_processor.process_sensing_data(sensor_data)

      # 데이터 집계
      aggregated_data = sensor_processor.aggregate_sensing_data(processed_data)

      # 열 이름 재정렬
      final_data = sensor_processor.reorganize_column_names(aggregated_data)

      # 결과 출력
      print(final_data.head())
  1. CRF data
  import saferx

  data_processor = saferx.M2DataProcessor()

  # 데이터 로드
  processor.load_data(
      location_file='location_data.csv',
      sensor_file='sensor_data.csv',
      crf_file='crf_data.csv',
      trait_file='trait_data.csv'
  )

  # 위치와 센서 데이터 병합
  processor.merge_location_and_sensor()

  # CRF 데이터 처리 및 병합
  processor.process_crf_data()

  # 성향 데이터 병합
  merged_data = processor.merge_trait_data()

  # 최종 결과 확인
  print(merged_data.head())

m2 model

   import torch
   import saferx

   data_path = 'merged_data_m2.csv'  # 데이터 경로 (CRF, sensor, location 등 합친 상태)

   device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')

   # Predictor 객체 생성
   predictor = saferx.Predictor(device=device)

   # 데이터 로드 및 전처리
   data_loader = predictor.preprocess_data(data_path)

   # 예측 수행
   predictions = predictor.predict(data_loader)

   # 예측 결과 출력
   print(predictions)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

saferx-0.5.5.tar.gz (2.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

saferx-0.5.5-py3-none-any.whl (2.1 MB view details)

Uploaded Python 3

File details

Details for the file saferx-0.5.5.tar.gz.

File metadata

  • Download URL: saferx-0.5.5.tar.gz
  • Upload date:
  • Size: 2.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.5.tar.gz
Algorithm Hash digest
SHA256 16f03e321dc9ba90faf9e24a490085284a2fcbb8d69a6b0c495dd72b331c13e1
MD5 68b77f5cf6b9623a11dbc8b87092c28d
BLAKE2b-256 7034f66997dfa35d571e5380d10d5f72136af4f2bd7c9ae8d3d74fa394105c83

See more details on using hashes here.

File details

Details for the file saferx-0.5.5-py3-none-any.whl.

File metadata

  • Download URL: saferx-0.5.5-py3-none-any.whl
  • Upload date:
  • Size: 2.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for saferx-0.5.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9c25309929739530b8ebfe8d025419f5762ce33be18b8331b58b1effeaac1d5b
MD5 470f934d529275afa93ae4d2214691d4
BLAKE2b-256 21f9ebf509a5a339ae035e2ef0870d8a5daf7c7571c0cee0136478a922d869a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page